From 4b16e6b5a5f10c1fc922f7df54a0983f4b56f6f6 Mon Sep 17 00:00:00 2001 From: Sam Levenick Date: Tue, 29 Sep 2020 02:54:13 -0700 Subject: [PATCH] MM updates (#280) * fix typo (#3369) (#413) Signed-off-by: Modular Magician * Fix check for serial port disabled (#3695) (#415) * Fix check for serial port disabled * fix check for block-project-ssh-keys Signed-off-by: Modular Magician * Add mode enum and scale down controls for Compute AutoScaler (#3693) (#416) * Add mode enum and scale down controls for Compute AutoScaler * Add mode enum for Compute AutoScaler in the correct API block * Add defaults for mode and default_from_api for scale down controls * Add tests for scale_down_controls and set at_least_one_of for it Signed-off-by: Modular Magician * added support for shielded nodes in container (#3639) (#417) Signed-off-by: Modular Magician * fix memcache_parameters (#3733) (#418) * change memcacheParameters to parameters, add parameters to basic test * make switching memcacheParameters to parameters not a breaking-change Signed-off-by: Modular Magician * add tiers and nfs_export_options (#3766) (#419) * add tiers and nfs_export_options * update docs, make full test beta Signed-off-by: Modular Magician * Add skip enum value generation (#3767) (#420) * Add skip enum value generation * Fix default * Fix reader * Fix line spacing on enum values Signed-off-by: Modular Magician * Backend service support for internet NEG backend (#3782) (#421) * Add ability to set global network endpoint group as backend for backend service. Make health_checks optional * PR fixes * Add encoder to remove max_utilization when neg backend * Check for global NEG in group to remove max_utilization * Add another nil check * Spacing * Docs fix Signed-off-by: Modular Magician * add firewall logging controls (#3780) (#422) * add firewall logging controls * make backward compatible * check enable_logging in expand * update docs * update expand logic to fix failing test Signed-off-by: Modular Magician * Fix colon in doc notes (#3796) (#423) Signed-off-by: Modular Magician * Add persistence_iam_identity to Redis Instance (#3805) (#424) Signed-off-by: Modular Magician * Org Security Policies (Hierarchical Firewalls) (#3626) (#425) Co-authored-by: Dana Hoffman Signed-off-by: Modular Magician Co-authored-by: Dana Hoffman * Adding Missing Cloud Build Attributes (#3627) (#426) Signed-off-by: Modular Magician * Add additional fields to Memcached Instance (#3821) (#427) Signed-off-by: Modular Magician * Convert inboundServices to an enum. (#3820) (#428) Signed-off-by: Modular Magician * add source_image and source_snapshot to google_compute_image (#3799) (#429) * add source_image to google_compute_image * add source_snapshot to google_compute_image * PR comment changes Signed-off-by: Modular Magician * Collection fixes for release (#3831) (#430) Signed-off-by: Modular Magician * Add new field filter to pubsub. (#3759) (#431) * Add new field filter to pubsub. Fixes: https://github.com/terraform-providers/terraform-provider-google/issues/6727 * Fixed filter name, it was improperly set. * add filter key to pubsub subscription unit test * spaces not tabs! * hardcode filter value in test * revert remove escaped quotes Co-authored-by: Tim O'Connell Signed-off-by: Modular Magician Co-authored-by: Tim O'Connell * Add archive class to gcs (#3867) (#432) Signed-off-by: Modular Magician * Add support for gRPC healthchecks (#3825) (#433) Signed-off-by: Modular Magician * Add enableMessageOrdering to Pub/Sub Subscription (#3872) (#434) Add enableMessageOrdering to Pub/Sub Subscription Signed-off-by: Modular Magician * Specify possible values for arg only once (#3874) (#435) Signed-off-by: ialidzhikov Signed-off-by: Modular Magician * use {product}.googleapis.com endpoints (#3755) (#436) * use {product}.googleapis.com endpoints * use actual correct urls * fix zone data source test * fix network peering tests * possibly fix deleting default network Signed-off-by: Modular Magician * Add vpcAccessConnector property on google_app_engine_standard_app_version terraform resource (#3789) (#437) * add vpc access connector property in standard app version resource * add Gemfile.lock and .ruby-version * modify .ruby-version * Update Gemfile.lock * Update Gemfile.lock * Update Gemfile.lock * add test for vpcAccessConnector field * change casing of test field * add comma * format app engine connector test * make vpc_access_connector an object * add vpc access connector resource to test * pass connector id output property to app engine resource instead of hardcoding connector id Signed-off-by: Modular Magician * retrypolicy attribute added (#3843) (#438) * retrypolicy attribute added * test case updated Signed-off-by: Modular Magician * add discovery endpoint (#3891) (#439) Signed-off-by: Modular Magician * Advanced logging config options in google_compute_subnetwork (#3603) (#440) Co-authored-by: Dana Hoffman Signed-off-by: Modular Magician Co-authored-by: Dana Hoffman * Add Erase Windows VSS support to compute disk (#3898) (#441) Co-authored-by: Cameron Thornton Signed-off-by: Modular Magician Co-authored-by: Cameron Thornton * Add Snapshot location to compute snapshot (#3896) (#442) * added storage locations * add storage locations to field * tweak cmek logic * fix the decoder logic and cleanup whitespaces * remove duplicate entry Signed-off-by: Modular Magician * Added missing 'all' option for protocol firewall rule (#3962) (#443) Signed-off-by: Modular Magician * Revert `eraseWindowsVssSignature` field and test (#3959) (#444) Signed-off-by: Modular Magician * Added support GRPC for google_compute_(region)_backend_service.protocol (#3973) (#445) Co-authored-by: Edward Sun Signed-off-by: Modular Magician Co-authored-by: Edward Sun * Added properties of options & artifacts on google_cloudbuild_trigger (#3944) (#446) * added options & artifacts to cloudbuild trigger * updated with minor changes and added more options in test * a test adding update behavior for multiple optional fields Co-authored-by: Edward Sun Signed-off-by: Modular Magician Co-authored-by: Edward Sun * products/container: Add datapath provider field (#3956) (#447) Signed-off-by: Modular Magician * Add SEV_CAPABLE option to google_compute_image (#3994) (#448) Signed-off-by: Modular Magician * Add network peerings for inspec (#4002) (#449) Signed-off-by: Modular Magician * Update docs for pubsub targets in cloud scheduler (#4008) (#450) Signed-off-by: Modular Magician Co-authored-by: The Magician Co-authored-by: Dana Hoffman Co-authored-by: Tim O'Connell Co-authored-by: Cameron Thornton Co-authored-by: Edward Sun Co-authored-by: Stuart Paterson --- .../google_appengine_standard_app_version.md | 10 +- .../google_appengine_standard_app_versions.md | 1 + docs/resources/google_cloud_scheduler_job.md | 4 +- docs/resources/google_cloudbuild_trigger.md | 108 ++++++++++++++++++ docs/resources/google_cloudbuild_triggers.md | 1 + docs/resources/google_compute_autoscaler.md | 16 +++ .../google_compute_backend_service.md | 3 +- docs/resources/google_compute_disk.md | 8 +- docs/resources/google_compute_firewall.md | 13 ++- docs/resources/google_compute_health_check.md | 14 +++ .../resources/google_compute_health_checks.md | 1 + docs/resources/google_compute_image.md | 5 + docs/resources/google_compute_network.md | 16 +++ docs/resources/google_compute_networks.md | 1 + docs/resources/google_compute_node_group.md | 4 +- .../google_compute_region_backend_service.md | 1 + .../google_compute_security_policy.md | 2 +- docs/resources/google_compute_snapshot.md | 8 +- docs/resources/google_compute_snapshots.md | 1 + docs/resources/google_compute_subnetwork.md | 7 +- docs/resources/google_compute_url_map.md | 4 +- docs/resources/google_container_cluster.md | 21 ++-- docs/resources/google_container_clusters.md | 3 +- docs/resources/google_container_node_pool.md | 6 + docs/resources/google_filestore_instance.md | 25 ++++ docs/resources/google_filestore_instances.md | 4 + docs/resources/google_memcache_instance.md | 22 +++- docs/resources/google_memcache_instances.md | 6 +- docs/resources/google_pubsub_subscription.md | 12 +- docs/resources/google_pubsub_subscriptions.md | 3 + docs/resources/google_redis_instance.md | 4 +- docs/resources/google_redis_instances.md | 1 + docs/resources/google_storage_bucket.md | 5 +- ...standardappversion_vpc_access_connector.rb | 34 ++++++ .../cloudbuild/property/trigger_build.rb | 30 +++++ .../property/trigger_build_artifacts.rb | 39 +++++++ .../trigger_build_artifacts_objects.rb | 41 +++++++ .../trigger_build_artifacts_objects_timing.rb | 37 ++++++ .../property/trigger_build_options.rb | 68 +++++++++++ .../property/trigger_build_options_volumes.rb | 45 ++++++++ .../property/trigger_build_secrets.rb | 45 ++++++++ .../property/trigger_build_source.rb | 39 +++++++ .../trigger_build_source_repo_source.rb | 55 +++++++++ .../trigger_build_source_storage_source.rb | 40 +++++++ .../property/autoscaler_autoscaling_policy.rb | 8 ++ ...r_autoscaling_policy_scale_down_control.rb | 38 ++++++ ...e_down_control_max_scaled_down_replicas.rb | 37 ++++++ .../property/disk_disk_encryption_key.rb | 3 + .../disk_source_image_encryption_key.rb | 3 + .../disk_source_snapshot_encryption_key.rb | 3 + .../compute/property/firewall_log_config.rb | 7 +- .../property/healthcheck_grpc_health_check.rb | 43 +++++++ .../compute/property/network_peerings.rb | 60 ++++++++++ .../snapshot_snapshot_encryption_key.rb | 3 + .../snapshot_source_disk_encryption_key.rb | 3 + .../compute/property/subnetwork_log_config.rb | 6 + .../container/property/cluster_node_config.rb | 4 + ...er_node_config_shielded_instance_config.rb | 37 ++++++ .../property/cluster_shielded_nodes.rb | 34 ++++++ .../container/property/nodepool_config.rb | 4 + ...odepool_config_shielded_instance_config.rb | 37 ++++++ .../property/instance_file_shares.rb | 4 + ...instance_file_shares_nfs_export_options.rb | 54 +++++++++ .../property/instance_memcache_nodes.rb | 54 +++++++++ .../memcache/property/instance_parameters.rb | 37 ++++++ .../property/subscription_retry_policy.rb | 37 ++++++ .../google_appengine_standard_app_version.rb | 3 + .../google_appengine_standard_app_versions.rb | 2 + libraries/google_bigquery_dataset.rb | 2 +- libraries/google_bigquery_datasets.rb | 2 +- libraries/google_bigquery_table.rb | 2 +- libraries/google_bigquery_tables.rb | 2 +- libraries/google_cloudbuild_trigger.rb | 11 ++ libraries/google_cloudbuild_triggers.rb | 2 + libraries/google_compute_address.rb | 4 +- libraries/google_compute_addresses.rb | 4 +- libraries/google_compute_autoscaler.rb | 6 +- libraries/google_compute_autoscalers.rb | 4 +- libraries/google_compute_backend_bucket.rb | 4 +- libraries/google_compute_backend_buckets.rb | 4 +- libraries/google_compute_backend_service.rb | 4 +- libraries/google_compute_backend_services.rb | 4 +- libraries/google_compute_disk.rb | 4 +- libraries/google_compute_disks.rb | 4 +- libraries/google_compute_firewall.rb | 4 +- libraries/google_compute_firewalls.rb | 4 +- libraries/google_compute_forwarding_rule.rb | 4 +- libraries/google_compute_forwarding_rules.rb | 4 +- libraries/google_compute_global_address.rb | 4 +- libraries/google_compute_global_addresses.rb | 4 +- .../google_compute_global_forwarding_rule.rb | 4 +- .../google_compute_global_forwarding_rules.rb | 4 +- libraries/google_compute_health_check.rb | 7 +- libraries/google_compute_health_checks.rb | 6 +- libraries/google_compute_http_health_check.rb | 4 +- .../google_compute_http_health_checks.rb | 4 +- .../google_compute_https_health_check.rb | 4 +- .../google_compute_https_health_checks.rb | 4 +- libraries/google_compute_image.rb | 8 +- libraries/google_compute_instance.rb | 4 +- libraries/google_compute_instance_group.rb | 4 +- .../google_compute_instance_group_manager.rb | 4 +- .../google_compute_instance_group_managers.rb | 4 +- libraries/google_compute_instance_groups.rb | 4 +- libraries/google_compute_instance_template.rb | 4 +- .../google_compute_instance_templates.rb | 4 +- libraries/google_compute_instances.rb | 4 +- libraries/google_compute_network.rb | 7 +- .../google_compute_network_endpoint_group.rb | 4 +- .../google_compute_network_endpoint_groups.rb | 4 +- libraries/google_compute_networks.rb | 6 +- libraries/google_compute_node_group.rb | 4 +- libraries/google_compute_node_groups.rb | 4 +- libraries/google_compute_node_template.rb | 4 +- libraries/google_compute_node_templates.rb | 4 +- libraries/google_compute_project_info.rb | 4 +- libraries/google_compute_region.rb | 4 +- .../google_compute_region_backend_service.rb | 4 +- .../google_compute_region_backend_services.rb | 4 +- ...e_compute_region_instance_group_manager.rb | 4 +- ..._compute_region_instance_group_managers.rb | 4 +- libraries/google_compute_regions.rb | 4 +- libraries/google_compute_route.rb | 4 +- libraries/google_compute_router.rb | 4 +- libraries/google_compute_router_nat.rb | 4 +- libraries/google_compute_router_nats.rb | 4 +- libraries/google_compute_routers.rb | 4 +- libraries/google_compute_routes.rb | 4 +- libraries/google_compute_security_policies.rb | 4 +- libraries/google_compute_security_policy.rb | 4 +- libraries/google_compute_snapshot.rb | 6 +- libraries/google_compute_snapshots.rb | 6 +- libraries/google_compute_ssl_certificate.rb | 4 +- libraries/google_compute_ssl_certificates.rb | 4 +- libraries/google_compute_ssl_policies.rb | 4 +- libraries/google_compute_ssl_policy.rb | 4 +- libraries/google_compute_subnetwork.rb | 4 +- .../google_compute_subnetwork_iam_binding.rb | 2 +- .../google_compute_subnetwork_iam_policy.rb | 2 +- libraries/google_compute_subnetworks.rb | 4 +- .../google_compute_target_http_proxies.rb | 4 +- libraries/google_compute_target_http_proxy.rb | 4 +- .../google_compute_target_https_proxies.rb | 4 +- .../google_compute_target_https_proxy.rb | 4 +- libraries/google_compute_target_pool.rb | 4 +- libraries/google_compute_target_pools.rb | 4 +- .../google_compute_target_tcp_proxies.rb | 4 +- libraries/google_compute_target_tcp_proxy.rb | 4 +- libraries/google_compute_url_map.rb | 4 +- libraries/google_compute_url_maps.rb | 4 +- libraries/google_compute_vpn_tunnel.rb | 4 +- libraries/google_compute_vpn_tunnels.rb | 4 +- libraries/google_compute_zone.rb | 4 +- libraries/google_compute_zones.rb | 4 +- libraries/google_container_cluster.rb | 9 +- libraries/google_container_clusters.rb | 6 +- libraries/google_container_node_pool.rb | 1 + libraries/google_dns_managed_zone.rb | 4 +- libraries/google_dns_managed_zones.rb | 4 +- libraries/google_dns_resource_record_set.rb | 4 +- libraries/google_dns_resource_record_sets.rb | 4 +- libraries/google_filestore_instance.rb | 8 +- libraries/google_filestore_instances.rb | 8 +- libraries/google_memcache_instance.rb | 15 ++- libraries/google_memcache_instances.rb | 12 +- libraries/google_pubsub_subscription.rb | 7 ++ libraries/google_pubsub_subscriptions.rb | 6 + libraries/google_redis_instance.rb | 2 + libraries/google_redis_instances.rb | 2 + libraries/google_storage_bucket.rb | 2 +- libraries/google_storage_bucket_acl.rb | 2 +- .../google_storage_bucket_iam_binding.rb | 2 +- libraries/google_storage_bucket_iam_policy.rb | 2 +- libraries/google_storage_bucket_object.rb | 2 +- libraries/google_storage_bucket_objects.rb | 2 +- libraries/google_storage_buckets.rb | 2 +- .../google_storage_default_object_acl.rb | 2 +- libraries/google_storage_object_acl.rb | 2 +- 178 files changed, 1574 insertions(+), 227 deletions(-) create mode 100644 libraries/google/appengine/property/standardappversion_vpc_access_connector.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_artifacts.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_artifacts_objects.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_artifacts_objects_timing.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_options.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_options_volumes.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_secrets.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_source.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_source_repo_source.rb create mode 100644 libraries/google/cloudbuild/property/trigger_build_source_storage_source.rb create mode 100644 libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control.rb create mode 100644 libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas.rb create mode 100644 libraries/google/compute/property/healthcheck_grpc_health_check.rb create mode 100644 libraries/google/compute/property/network_peerings.rb create mode 100644 libraries/google/container/property/cluster_node_config_shielded_instance_config.rb create mode 100644 libraries/google/container/property/cluster_shielded_nodes.rb create mode 100644 libraries/google/container/property/nodepool_config_shielded_instance_config.rb create mode 100644 libraries/google/filestore/property/instance_file_shares_nfs_export_options.rb create mode 100644 libraries/google/memcache/property/instance_memcache_nodes.rb create mode 100644 libraries/google/memcache/property/instance_parameters.rb create mode 100644 libraries/google/pubsub/property/subscription_retry_policy.rb diff --git a/docs/resources/google_appengine_standard_app_version.md b/docs/resources/google_appengine_standard_app_version.md index 1e4d0be51..3154e0cd3 100644 --- a/docs/resources/google_appengine_standard_app_version.md +++ b/docs/resources/google_appengine_standard_app_version.md @@ -22,13 +22,17 @@ Properties that can be accessed from the `google_appengine_standard_app_version` * `name`: Full path to the Version resource in the API. Example, "v1". - * `version_id`: Relative name of the version within the service. For example, `v1`. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names,"default", "latest", and any name with the prefix "ah-". + * `version_id`: Relative name of the version within the service. For example, `v1`. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names,"default", "latest", and any name with the prefix "ah-". * `runtime`: Desired runtime. Example python27. * `threadsafe`: Whether multiple requests can be dispatched to this version at once. - * `inbound_services`: Before an application can receive email or XMPP messages, the application must be configured to enable the service. + * `vpc_access_connector`: Enables VPC connectivity for standard apps. + + * `name`: Full Serverless VPC Access Connector name e.g. /projects/my-project/locations/us-central1/connectors/c1. + + * `inbound_services`: A list of the types of messages that this application is able to receive. * `instance_class`: Instance class that is used to run this version. Valid values are AutomaticScaling: F1, F2, F4, F4_1G BasicScaling or ManualScaling: B1, B2, B4, B4_1G, B8 Defaults to F1 for AutomaticScaling and B2 for ManualScaling and BasicScaling. If no scaling is specified, AutomaticScaling is chosen. @@ -62,7 +66,7 @@ Properties that can be accessed from the `google_appengine_standard_app_version` * `manual_scaling`: A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time. - * `instances`: Number of instances to assign to the service at the start. **Note:** When managing the number of instances at runtime through the App Engine Admin API or the (now deprecated) Python 2 Modules API set_num_instances() you must use `lifecycle.ignore_changes = ["manual_scaling"[0].instances]` to prevent drift detection. + * `instances`: Number of instances to assign to the service at the start. **Note:** When managing the number of instances at runtime through the App Engine Admin API or the (now deprecated) Python 2 Modules API set_num_instances() you must use `lifecycle.ignore_changes = ["manual_scaling"[0].instances]` to prevent drift detection. ## GCP Permissions diff --git a/docs/resources/google_appengine_standard_app_versions.md b/docs/resources/google_appengine_standard_app_versions.md index ef942c11f..813e8aada 100644 --- a/docs/resources/google_appengine_standard_app_versions.md +++ b/docs/resources/google_appengine_standard_app_versions.md @@ -22,6 +22,7 @@ See [google_appengine_standard_app_version.md](google_appengine_standard_app_ver * `version_ids`: an array of `google_appengine_standard_app_version` version_id * `runtimes`: an array of `google_appengine_standard_app_version` runtime * `threadsaves`: an array of `google_appengine_standard_app_version` threadsafe + * `vpc_access_connectors`: an array of `google_appengine_standard_app_version` vpc_access_connector * `inbound_services`: an array of `google_appengine_standard_app_version` inbound_services * `instance_classes`: an array of `google_appengine_standard_app_version` instance_class * `automatic_scalings`: an array of `google_appengine_standard_app_version` automatic_scaling diff --git a/docs/resources/google_cloud_scheduler_job.md b/docs/resources/google_cloud_scheduler_job.md index 0ed258313..c25b6c0be 100644 --- a/docs/resources/google_cloud_scheduler_job.md +++ b/docs/resources/google_cloud_scheduler_job.md @@ -31,7 +31,7 @@ Properties that can be accessed from the `google_cloud_scheduler_job` resource: * `time_zone`: Specifies the time zone to be used in interpreting schedule. The value of this field must be a time zone name from the tz database. - * `attempt_deadline`: The deadline for job attempts. If the request handler does not respond by this deadline then the request is cancelled and the attempt is marked as a DEADLINE_EXCEEDED failure. The failed attempt can be viewed in execution logs. Cloud Scheduler will retry the job according to the RetryConfig. The allowed duration for this deadline is: * For HTTP targets, between 15 seconds and 30 minutes. * For App Engine HTTP targets, between 15 seconds and 24 hours. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s" + * `attempt_deadline`: The deadline for job attempts. If the request handler does not respond by this deadline then the request is cancelled and the attempt is marked as a DEADLINE_EXCEEDED failure. The failed attempt can be viewed in execution logs. Cloud Scheduler will retry the job according to the RetryConfig. The allowed duration for this deadline is: * For HTTP targets, between 15 seconds and 30 minutes. * For App Engine HTTP targets, between 15 seconds and 24 hours. * **Note**: For PubSub targets, this field is ignored - setting it will introduce an unresolvable diff. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s" * `retry_config`: By default, if a job does not complete successfully, meaning that an acknowledgement is not received from the handler, then it will be retried with exponential backoff according to the settings @@ -47,7 +47,7 @@ Properties that can be accessed from the `google_cloud_scheduler_job` resource: * `pubsub_target`: Pub/Sub target If the job providers a Pub/Sub target the cron will publish a message to the provided topic - * `topic_name`: The full resource name for the Cloud Pub/Sub topic to which messages will be published when a job is delivered. ~>**NOTE**: The topic name must be in the same format as required by PubSub's PublishRequest.name, e.g. `projects/my-project/topics/my-topic`. + * `topic_name`: The full resource name for the Cloud Pub/Sub topic to which messages will be published when a job is delivered. ~>**NOTE:** The topic name must be in the same format as required by PubSub's PublishRequest.name, e.g. `projects/my-project/topics/my-topic`. * `data`: The message payload for PubsubMessage. Pubsub message must contain either non-empty data, or at least one attribute. diff --git a/docs/resources/google_cloudbuild_trigger.md b/docs/resources/google_cloudbuild_trigger.md index 168ab5d07..a3c99f87b 100644 --- a/docs/resources/google_cloudbuild_trigger.md +++ b/docs/resources/google_cloudbuild_trigger.md @@ -32,6 +32,8 @@ Properties that can be accessed from the `google_cloudbuild_trigger` resource: * `description`: Human-readable description of the trigger. + * `tags`: Tags for annotation of a BuildTrigger + * `disabled`: Whether the trigger is disabled or not. If true, the trigger will never result in a build. * `create_time`: Time when the trigger was created. @@ -87,12 +89,52 @@ Properties that can be accessed from the `google_cloudbuild_trigger` resource: * `build`: Contents of the build template. Either a filename or build template must be provided. + * `source`: The location of the source files to build. + + * `storage_source`: Location of the source in an archive file in Google Cloud Storage. + + * `bucket`: Google Cloud Storage bucket containing the source. + + * `object`: Google Cloud Storage object containing the source. This object must be a gzipped archive file (.tar.gz) containing source to build. + + * `generation`: Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used + + * `repo_source`: Location of the source in a Google Cloud Source Repository. + + * `project_id`: ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + + * `repo_name`: Name of the Cloud Source Repository. + + * `dir`: Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's dir is specified and is an absolute path, this value is ignored for that step's execution. + + * `invert_regex`: Only trigger a build if the revision regex does NOT match the revision regex. + + * `substitutions`: Substitutions to use in a triggered build. Should only be used with triggers.run + + * `branch_name`: Regex matching branches to build. Exactly one a of branch name, tag, or commit SHA must be provided. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + + * `tag_name`: Regex matching tags to build. Exactly one a of branch name, tag, or commit SHA must be provided. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + + * `commit_sha`: Explicit commit SHA to build. Exactly one a of branch name, tag, or commit SHA must be provided. + * `tags`: Tags for annotation of a Build. These are not docker tags. * `images`: A list of images to be pushed upon the successful completion of all build steps. The images are pushed using the builder service account's credentials. The digests of the pushed images will be stored in the Build resource's results field. If any of the images fail to be pushed, the build status is marked FAILURE. + * `substitutions`: Substitutions data for Build resource. + + * `queue_ttl`: TTL in queue for this build. If provided and the build is enqueued longer than this value, the build will expire and the build status will be EXPIRED. The TTL starts ticking from createTime. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". + + * `logs_bucket`: Google Cloud Storage bucket where logs should be written. Logs file names will be of the format ${logsBucket}/log-${build_id}.txt. + * `timeout`: Amount of time that this build should be allowed to run, to second granularity. If this amount of time elapses, work on the build will cease and the build status will be TIMEOUT. This timeout must be equal to or greater than the sum of the timeouts for build steps within the build. The expected format is the number of seconds followed by s. Default time is ten minutes (600s). + * `secrets`: Secrets to decrypt using Cloud Key Management Service. + + * `kms_key_name`: Cloud KMS key name to use to decrypt these envs. + + * `secret_env`: Map of environment variable name to its encrypted value. Secret environment variables must be unique across all of a build's secrets, and must be used by at least one build step. Values can be at most 64 KB in size. There can be at most 100 secret values across all of a build's secrets. + * `steps`: The operations to be performed on the workspace. * `name`: The name of the container image that will run this particular build step. If the image is available in the host's Docker daemon's cache, it will be run directly. If not, the host will attempt to pull the image first, using the builder service account's credentials if necessary. The Docker daemon's cache will already have the latest versions of all of the officially supported build steps (https://github.com/GoogleCloudPlatform/cloud-builders). The Docker daemon will also have cached many of the layers for some popular images, like "ubuntu", "debian", but they will be refreshed at the time you attempt to use them. If you built an image in a previous build step, it will be stored in the host's Docker daemon's cache and is available to use as the name for a later build step. @@ -121,6 +163,72 @@ Properties that can be accessed from the `google_cloudbuild_trigger` resource: * `wait_for`: The ID(s) of the step(s) that this build step depends on. This build step will not start until all the build steps in `wait_for` have completed successfully. If `wait_for` is empty, this build step will start when all previous build steps in the `Build.Steps` list have completed successfully. + * `artifacts`: Artifacts produced by the build that should be uploaded upon successful completion of all build steps. + + * `images`: A list of images to be pushed upon the successful completion of all build steps. The images will be pushed using the builder service account's credentials. The digests of the pushed images will be stored in the Build resource's results field. If any of the images fail to be pushed, the build is marked FAILURE. + + * `objects`: A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. + + * `location`: Cloud Storage bucket and optional object path, in the form "gs://bucket/path/to/somewhere/". Files in the workspace matching any path pattern will be uploaded to Cloud Storage with this location as a prefix. + + * `paths`: Path globs used to match files in the build's workspace. + + * `timing`: Output only. Stores timing information for pushing all artifact objects. + + * `start_time`: Start of time span. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z". + + * `end_time`: End of time span. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z". + + * `options`: Special options for this build. + + * `source_provenance_hash`: Requested hash for SourceProvenance. + + * `requested_verify_option`: Requested verifiability options. + Possible values: + * NOT_VERIFIED + * VERIFIED + + * `machine_type`: Compute Engine machine type on which to run the build. + Possible values: + * UNSPECIFIED + * N1_HIGHCPU_8 + * N1_HIGHCPU_32 + + * `disk_size_gb`: Requested disk size for the VM that runs the build. Note that this is NOT "disk free"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 1000GB; builds that request more than the maximum are rejected with an error. + + * `substitution_option`: Option to specify behavior when there is an error in the substitution checks. NOTE this is always set to ALLOW_LOOSE for triggered builds and cannot be overridden in the build configuration file. + Possible values: + * MUST_MATCH + * ALLOW_LOOSE + + * `dynamic_substitutions`: Option to specify whether or not to apply bash style string operations to the substitutions. NOTE this is always enabled for triggered builds and cannot be overridden in the build configuration file. + + * `log_streaming_option`: Option to define build log streaming behavior to Google Cloud Storage. + Possible values: + * STREAM_DEFAULT + * STREAM_ON + * STREAM_OFF + + * `worker_pool`: Option to specify a WorkerPool for the build. Format projects/{project}/workerPools/{workerPool} This field is experimental. + + * `logging`: Option to specify the logging mode, which determines if and where build logs are stored. + Possible values: + * LOGGING_UNSPECIFIED + * LEGACY + * GCS_ONLY + * STACKDRIVER_ONLY + * NONE + + * `env`: A list of global environment variable definitions that will exist for all build steps in this build. If a variable is defined in both globally and in a build step, the variable will use the build step value. The elements are of the form "KEY=VALUE" for the environment variable "KEY" being given the value "VALUE". + + * `secret_env`: A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's Secret. These variables will be available to all build steps in this build. + + * `volumes`: Global list of volumes to mount for ALL build steps Each volume is created as an empty volume prior to starting the build process. Upon completion of the build, volumes and their contents are discarded. Global volume names and paths cannot conflict with the volumes defined a build step. Using a global volume in a build with only one step is not valid as it is indicative of a build request with an incorrect configuration. + + * `name`: Name of the volume to mount. Volume names must be unique per build step and must be valid names for Docker volumes. Each named volume must be used by at least two build steps. + + * `path`: Path at which to mount the volume. Paths must be absolute and cannot conflict with other volume paths on the same build step or with certain reserved volume paths. + ## GCP Permissions diff --git a/docs/resources/google_cloudbuild_triggers.md b/docs/resources/google_cloudbuild_triggers.md index 626807ee5..e67f45425 100644 --- a/docs/resources/google_cloudbuild_triggers.md +++ b/docs/resources/google_cloudbuild_triggers.md @@ -29,6 +29,7 @@ See [google_cloudbuild_trigger.md](google_cloudbuild_trigger.md) for more detail * `ids`: an array of `google_cloudbuild_trigger` id * `names`: an array of `google_cloudbuild_trigger` name * `descriptions`: an array of `google_cloudbuild_trigger` description + * `tags`: an array of `google_cloudbuild_trigger` tags * `disableds`: an array of `google_cloudbuild_trigger` disabled * `create_times`: an array of `google_cloudbuild_trigger` create_time * `substitutions`: an array of `google_cloudbuild_trigger` substitutions diff --git a/docs/resources/google_compute_autoscaler.md b/docs/resources/google_compute_autoscaler.md index ed9d1693b..5b2f1e0e9 100644 --- a/docs/resources/google_compute_autoscaler.md +++ b/docs/resources/google_compute_autoscaler.md @@ -47,6 +47,22 @@ Properties that can be accessed from the `google_compute_autoscaler` resource: * `cool_down_period_sec`: The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process. + * `mode`: Defines operating mode for this policy. + Possible values: + * OFF + * ONLY_UP + * ON + + * `scale_down_control`: (Beta only) Defines scale down controls to reduce the risk of response latency and outages due to abrupt scale-in events + + * `max_scaled_down_replicas`: A nested object resource + + * `fixed`: Specifies a fixed number of VM instances. This must be a positive integer. + + * `percent`: Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. + + * `time_window_sec`: How long back autoscaling should look when computing recommendations to include directives regarding slower scale down, as described above. + * `cpu_utilization`: Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group. * `utilization_target`: The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6. If the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization. If the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization. diff --git a/docs/resources/google_compute_backend_service.md b/docs/resources/google_compute_backend_service.md index 2a5bb68f3..e49ba42af 100644 --- a/docs/resources/google_compute_backend_service.md +++ b/docs/resources/google_compute_backend_service.md @@ -126,7 +126,7 @@ Properties that can be accessed from the `google_compute_backend_service` resour * `enable_cdn`: If true, enable Cloud CDN for this BackendService. - * `health_checks`: The set of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required. For internal load balancing, a URL to a HealthCheck resource must be specified instead. + * `health_checks`: The set of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified. A health check must be specified unless the backend service uses an internet NEG as a backend. For internal load balancing, a URL to a HealthCheck resource must be specified instead. * `id`: The unique identifier for the resource. @@ -197,6 +197,7 @@ Properties that can be accessed from the `google_compute_backend_service` resour * HTTP2 * TCP * SSL + * GRPC * `security_policy`: The security policy associated with this backend service. diff --git a/docs/resources/google_compute_disk.md b/docs/resources/google_compute_disk.md index 05014de01..34877f793 100644 --- a/docs/resources/google_compute_disk.md +++ b/docs/resources/google_compute_disk.md @@ -65,7 +65,7 @@ Properties that can be accessed from the `google_compute_disk` resource: * `type`: URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. - * `source_image`: The source image used to create this disk. If the source image is deleted, this field will not be set. To create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image: projects/debian-cloud/global/images/family/debian-8 Alternatively, use a specific version of a public operating system image: projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD To create a disk with a private image that you created, specify the image name in the following format: global/images/my-private-image You can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name: global/images/family/my-private-family + * `source_image`: The source image used to create this disk. If the source image is deleted, this field will not be set. To create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image: projects/debian-cloud/global/images/family/debian-9 Alternatively, use a specific version of a public operating system image: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD To create a disk with a private image that you created, specify the image name in the following format: global/images/my-private-image You can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name: global/images/family/my-private-family * `resource_policies`: (Beta only) Resource policies applied to this disk for automatic snapshot creations. @@ -79,6 +79,8 @@ Properties that can be accessed from the `google_compute_disk` resource: * `kms_key_name`: The name of the encryption key that is stored in Google Cloud KMS. + * `kms_key_service_account`: The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used. + * `source_image_id`: The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used. * `disk_encryption_key`: Encrypts the disk using a customer-supplied encryption key. After you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine). Customer-supplied encryption keys do not protect access to metadata of the disk. If you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later. @@ -89,6 +91,8 @@ Properties that can be accessed from the `google_compute_disk` resource: * `kms_key_name`: The name of the encryption key that is stored in Google Cloud KMS. Your project's Compute Engine System service account (`service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com`) must have `roles/cloudkms.cryptoKeyEncrypterDecrypter` to use this feature. + * `kms_key_service_account`: The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used. + * `source_snapshot`: The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. If the snapshot is in another project than this disk, you must supply a full URL. For example, the following are valid values: * `https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot` * `projects/project/global/snapshots/snapshot` * `global/snapshots/snapshot` * `source_snapshot_encryption_key`: The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key. @@ -99,6 +103,8 @@ Properties that can be accessed from the `google_compute_disk` resource: * `sha256`: The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource. + * `kms_key_service_account`: The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used. + * `source_snapshot_id`: The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used. diff --git a/docs/resources/google_compute_firewall.md b/docs/resources/google_compute_firewall.md index 597d475b6..963d01d7d 100644 --- a/docs/resources/google_compute_firewall.md +++ b/docs/resources/google_compute_firewall.md @@ -78,7 +78,7 @@ Properties that can be accessed from the `google_compute_firewall` resource: * `allowed`: The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection. - * `ip_protocol`: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp, ipip), or the IP protocol number. + * `ip_protocol`: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp, ipip, all), or the IP protocol number. * `ports`: An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. @@ -86,7 +86,7 @@ Properties that can be accessed from the `google_compute_firewall` resource: * `denied`: The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a denied connection. - * `ip_protocol`: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp, ipip), or the IP protocol number. + * `ip_protocol`: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp, ipip, all), or the IP protocol number. * `ports`: An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. @@ -101,9 +101,14 @@ Properties that can be accessed from the `google_compute_firewall` resource: * `disabled`: Denotes whether the firewall rule is disabled, i.e not applied to the network it is associated with. When set to true, the firewall rule is not enforced and the network behaves as if it did not exist. If this is unspecified, the firewall rule will be enabled. - * `log_config`: This field denotes whether to enable logging for a particular firewall rule. If logging is enabled, logs will be exported to Stackdriver. + * `log_config`: This field denotes the logging options for a particular firewall rule. If logging is enabled, logs will be exported to Cloud Logging. - * `enable_logging`: This field denotes whether to enable logging for a particular firewall rule. If logging is enabled, logs will be exported to Stackdriver. + * `enable`: This field denotes whether to enable logging for a particular firewall rule. If logging is enabled, logs will be exported to Stackdriver. + + * `metadata`: This field denotes whether to include or exclude metadata for firewall logs. + Possible values: + * EXCLUDE_ALL_METADATA + * INCLUDE_ALL_METADATA * `id`: The unique identifier for the resource. diff --git a/docs/resources/google_compute_health_check.md b/docs/resources/google_compute_health_check.md index 0ab047d7b..b9dd7e231 100644 --- a/docs/resources/google_compute_health_check.md +++ b/docs/resources/google_compute_health_check.md @@ -162,6 +162,20 @@ Properties that can be accessed from the `google_compute_health_check` resource: * USE_NAMED_PORT * USE_SERVING_PORT + * `grpc_health_check`: A nested object resource + + * `port`: The port number for the health check request. Must be specified if portName and portSpecification are not set or if port_specification is USE_FIXED_PORT. Valid values are 1 through 65535. + + * `port_name`: Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. + + * `port_specification`: Specifies how port is selected for health checking, can be one of the following values: * `USE_FIXED_PORT`: The port number in `port` is used for health checking. * `USE_NAMED_PORT`: The `portName` is used for health checking. * `USE_SERVING_PORT`: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, gRPC health check follows behavior specified in `port` and `portName` fields. + Possible values: + * USE_FIXED_PORT + * USE_NAMED_PORT + * USE_SERVING_PORT + + * `grpc_service_name`: The gRPC service name for the health check. The value of grpcServiceName has the following meanings by convention: - Empty serviceName means the overall status of all services at the backend. - Non-empty serviceName means the health of that gRPC service, as defined by the owner of the service. The grpcServiceName can only be ASCII. + * `log_config`: (Beta only) Configure logging on this health check. * `enable`: Indicates whether or not to export logs. This is false by default, which means no health check logging will be done. diff --git a/docs/resources/google_compute_health_checks.md b/docs/resources/google_compute_health_checks.md index 5457723a8..e1b50d094 100644 --- a/docs/resources/google_compute_health_checks.md +++ b/docs/resources/google_compute_health_checks.md @@ -36,6 +36,7 @@ See [google_compute_health_check.md](google_compute_health_check.md) for more de * `tcp_health_checks`: an array of `google_compute_health_check` tcp_health_check * `ssl_health_checks`: an array of `google_compute_health_check` ssl_health_check * `http2_health_checks`: an array of `google_compute_health_check` http2_health_check + * `grpc_health_checks`: an array of `google_compute_health_check` grpc_health_check * `log_configs`: (Beta only) an array of `google_compute_health_check` log_config ## Filter Criteria diff --git a/docs/resources/google_compute_image.md b/docs/resources/google_compute_image.md index affd1007b..1b75f70bf 100644 --- a/docs/resources/google_compute_image.md +++ b/docs/resources/google_compute_image.md @@ -70,6 +70,7 @@ Properties that can be accessed from the `google_compute_image` resource: Possible values: * MULTI_IP_SUBNET * SECURE_BOOT + * SEV_CAPABLE * UEFI_COMPATIBLE * VIRTIO_SCSI_MULTIQUEUE * WINDOWS @@ -114,6 +115,10 @@ Properties that can be accessed from the `google_compute_image` resource: * `source_disk_id`: The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name. + * `source_image`: URL of the source image used to create this image. In order to create an image, you must provide the full or partial URL of one of the following: The selfLink URL This property The rawDisk.source URL The sourceDisk URL + + * `source_snapshot`: URL of the source snapshot used to create this image. In order to create an image, you must provide the full or partial URL of one of the following: The selfLink URL This property The sourceImage URL The rawDisk.source URL The sourceDisk URL + * `source_type`: The type of the image used to create this disk. The default and only value is RAW Possible values: * RAW diff --git a/docs/resources/google_compute_network.md b/docs/resources/google_compute_network.md index b17c8bd14..ca06a8536 100644 --- a/docs/resources/google_compute_network.md +++ b/docs/resources/google_compute_network.md @@ -86,6 +86,22 @@ Properties that can be accessed from the `google_compute_network` resource: * REGIONAL * GLOBAL + * `peerings`: Peerings for a network + + * `name`: Name of the peering. + + * `state`: State of the peering. + + * `state_details`: Details about the current state of the peering. + + * `network`: URL of the peer network + + * `export_custom_routes`: Whether to export the custom routes to the peer network. + + * `import_custom_routes`: Whether to import the custom routes to the peer network. + + * `peer_mtu`: Maximum Transmission Unit in bytes. + ## GCP Permissions diff --git a/docs/resources/google_compute_networks.md b/docs/resources/google_compute_networks.md index 099d22cb8..c081a2fdc 100644 --- a/docs/resources/google_compute_networks.md +++ b/docs/resources/google_compute_networks.md @@ -48,6 +48,7 @@ See [google_compute_network.md](google_compute_network.md) for more detailed inf * `auto_create_subnetworks`: an array of `google_compute_network` auto_create_subnetworks * `creation_timestamps`: an array of `google_compute_network` creation_timestamp * `routing_configs`: an array of `google_compute_network` routing_config + * `peerings`: an array of `google_compute_network` peerings ## Filter Criteria This resource supports all of the above properties as filter criteria, which can be used diff --git a/docs/resources/google_compute_node_group.md b/docs/resources/google_compute_node_group.md index 97a38fafa..ba26448a1 100644 --- a/docs/resources/google_compute_node_group.md +++ b/docs/resources/google_compute_node_group.md @@ -40,13 +40,13 @@ Properties that can be accessed from the `google_compute_node_group` resource: * `autoscaling_policy`: (Beta only) If you use sole-tenant nodes for your workloads, you can use the node group autoscaler to automatically manage the sizes of your node groups. - * `mode`: The autoscaling mode. Set to one of the following: - OFF: Disables the autoscaler. - ON: Enables scaling in and scaling out. - ONLY_SCALE_OUT: Enables only scaling out. You must use this mode if your node groups are configured to restart their hosted VMs on minimal servers. + * `mode`: The autoscaling mode. Set to one of the following: - OFF: Disables the autoscaler. - ON: Enables scaling in and scaling out. - ONLY_SCALE_OUT: Enables only scaling out. You must use this mode if your node groups are configured to restart their hosted VMs on minimal servers. Possible values: * OFF * ON * ONLY_SCALE_OUT - * `min_nodes`: Minimum size of the node group. Must be less than or equal to max-nodes. The default value is 0. + * `min_nodes`: Minimum size of the node group. Must be less than or equal to max-nodes. The default value is 0. * `max_nodes`: Maximum size of the node group. Set to a value less than or equal to 100 and greater than or equal to min-nodes. diff --git a/docs/resources/google_compute_region_backend_service.md b/docs/resources/google_compute_region_backend_service.md index 6cd605103..11f9002fe 100644 --- a/docs/resources/google_compute_region_backend_service.md +++ b/docs/resources/google_compute_region_backend_service.md @@ -176,6 +176,7 @@ Properties that can be accessed from the `google_compute_region_backend_service` * SSL * TCP * UDP + * GRPC * `session_affinity`: Type of session affinity to use. The default is NONE. Session affinity is not applicable if the protocol is UDP. Possible values: diff --git a/docs/resources/google_compute_security_policy.md b/docs/resources/google_compute_security_policy.md index 8f19d8c60..766ed9069 100644 --- a/docs/resources/google_compute_security_policy.md +++ b/docs/resources/google_compute_security_policy.md @@ -36,7 +36,7 @@ Properties that can be accessed from the `google_compute_security_policy` resour * `description`: A description of the rule. - * `priority`: An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest prority. + * `priority`: An integer indicating the priority of a rule in the list. The priority must be a value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest prority. * `action`: The Action to preform when the client connection triggers the rule. Can currently be either "allow" or "deny()" where valid values for status are 403, 404, and 502. diff --git a/docs/resources/google_compute_snapshot.md b/docs/resources/google_compute_snapshot.md index d84db230e..308df538d 100644 --- a/docs/resources/google_compute_snapshot.md +++ b/docs/resources/google_compute_snapshot.md @@ -37,7 +37,9 @@ Properties that can be accessed from the `google_compute_snapshot` resource: * `description`: An optional description of this resource. - * `storage_bytes`: A size of the the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion. + * `storage_bytes`: A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion. + + * `storage_locations`: Cloud Storage bucket storage location of the snapshot (regional or multi-regional). * `licenses`: A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image). snapshotEncryptionKey nested object Encrypts the snapshot using a customer-supplied encryption key. @@ -57,12 +59,16 @@ Properties that can be accessed from the `google_compute_snapshot` resource: * `kms_key_name`: The name of the encryption key that is stored in Google Cloud KMS. + * `kms_key_service_account`: The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used. + * `source_disk_encryption_key`: The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key. * `raw_key`: Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource. * `kms_key_name`: The name of the encryption key that is stored in Google Cloud KMS. + * `kms_key_service_account`: The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used. + ## GCP Permissions diff --git a/docs/resources/google_compute_snapshots.md b/docs/resources/google_compute_snapshots.md index 519b5d1ef..ed585bb20 100644 --- a/docs/resources/google_compute_snapshots.md +++ b/docs/resources/google_compute_snapshots.md @@ -36,6 +36,7 @@ See [google_compute_snapshot.md](google_compute_snapshot.md) for more detailed i * `names`: an array of `google_compute_snapshot` name * `descriptions`: an array of `google_compute_snapshot` description * `storage_bytes`: an array of `google_compute_snapshot` storage_bytes + * `storage_locations`: an array of `google_compute_snapshot` storage_locations * `licenses`: an array of `google_compute_snapshot` licenses * `labels`: an array of `google_compute_snapshot` labels * `label_fingerprints`: an array of `google_compute_snapshot` label_fingerprint diff --git a/docs/resources/google_compute_subnetwork.md b/docs/resources/google_compute_subnetwork.md index f0a0ccbae..063595f6d 100644 --- a/docs/resources/google_compute_subnetwork.md +++ b/docs/resources/google_compute_subnetwork.md @@ -110,7 +110,7 @@ Properties that can be accessed from the `google_compute_subnetwork` resource: * `enable`: If logging is enabled for this subnetwork - * `aggregation_interval`: Can only be specified if VPC flow logging for this subnetwork is enabled. Toggles the aggregation interval for collecting flow logs. Increasing the interval time will reduce the amount of generated flow logs for long lasting connections. Default is an interval of 5 seconds per connection. Possible values are INTERVAL_5_SEC, INTERVAL_30_SEC, INTERVAL_1_MIN, INTERVAL_5_MIN, INTERVAL_10_MIN, INTERVAL_15_MIN + * `aggregation_interval`: Can only be specified if VPC flow logging for this subnetwork is enabled. Toggles the aggregation interval for collecting flow logs. Increasing the interval time will reduce the amount of generated flow logs for long lasting connections. Default is an interval of 5 seconds per connection. Possible values: * INTERVAL_5_SEC * INTERVAL_30_SEC @@ -125,6 +125,11 @@ Properties that can be accessed from the `google_compute_subnetwork` resource: Possible values: * EXCLUDE_ALL_METADATA * INCLUDE_ALL_METADATA + * CUSTOM_METADATA + + * `metadata_fields`: List of metadata fields that should be added to reported logs. Can only be specified if VPC flow logs for this subnetwork is enabled and "metadata" is set to CUSTOM_METADATA. + + * `filter_expr`: Export filter used to define which VPC flow logs should be logged, as as CEL expression. See https://cloud.google.com/vpc/docs/flow-logs#filtering for details on how to format this field. ## GCP Permissions diff --git a/docs/resources/google_compute_url_map.md b/docs/resources/google_compute_url_map.md index 115f324a2..77ccb2b9e 100644 --- a/docs/resources/google_compute_url_map.md +++ b/docs/resources/google_compute_url_map.md @@ -116,7 +116,7 @@ Properties that can be accessed from the `google_compute_url_map` resource: * `prefix_redirect`: The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters. - * `redirect_response_code`: The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. + * `redirect_response_code`: The HTTP Status code to use for this RedirectAction. Supported values are: * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. * FOUND, which corresponds to 302. * SEE_OTHER which corresponds to 303. * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. * PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. Possible values: * FOUND * MOVED_PERMANENTLY_DEFAULT @@ -212,7 +212,7 @@ Properties that can be accessed from the `google_compute_url_map` resource: * `prefix_redirect`: The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters. - * `redirect_response_code`: The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. + * `redirect_response_code`: The HTTP Status code to use for this RedirectAction. Supported values are: * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. * FOUND, which corresponds to 302. * SEE_OTHER which corresponds to 303. * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. * PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. Possible values: * FOUND * MOVED_PERMANENTLY_DEFAULT diff --git a/docs/resources/google_container_cluster.md b/docs/resources/google_container_cluster.md index 564af51bf..bf861a90d 100644 --- a/docs/resources/google_container_cluster.md +++ b/docs/resources/google_container_cluster.md @@ -120,6 +120,12 @@ Properties that can be accessed from the `google_container_cluster` resource: * PREFER_NO_SCHEDULE * NO_EXECUTE + * `shielded_instance_config`: Shielded Instance options. + + * `enable_secure_boot`: Defines whether the instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. + + * `enable_integrity_monitoring`: Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the instance is created. + * `master_auth`: The authentication information for accessing the master endpoint. * `username`: The username to use for HTTP basic authentication to the master endpoint. @@ -186,6 +192,12 @@ Properties that can be accessed from the `google_container_cluster` resource: * `subnetwork`: The name of the Google Compute Engine subnetwork to which the cluster is connected. + * `datapath_provider`: (Beta only) The desired datapath provider for this cluster. By default, uses the IPTables-based kube-proxy implementation. + Possible values: + * DATAPATH_PROVIDER_UNSPECIFIED + * LEGACY_DATAPATH + * ADVANCED_DATAPATH + * `locations`: The list of Google Compute Engine zones in which the cluster's nodes should be located. * `resource_labels`: The resource labels for the cluster to use to annotate any related Google Compute Engine resources. @@ -287,14 +299,9 @@ Properties that can be accessed from the `google_container_cluster` resource: * `enabled`: If enabled, all container images will be validated by Binary Authorization. - * `release_channel`: (Beta only) ReleaseChannel indicates which release channel a cluster is subscribed to. Release channels are arranged in order of risk and frequency of updates. + * `shielded_nodes`: (Beta only) Shielded Nodes configuration. - * `channel`: Which release channel the cluster is subscribed to. - Possible values: - * UNSPECIFIED - * RAPID - * REGULAR - * STABLE + * `enabled`: Whether Shielded Nodes features are enabled on all nodes in this cluster. * `location`: The location where the cluster is deployed diff --git a/docs/resources/google_container_clusters.md b/docs/resources/google_container_clusters.md index 1632ee0a3..43cc81413 100644 --- a/docs/resources/google_container_clusters.md +++ b/docs/resources/google_container_clusters.md @@ -62,6 +62,7 @@ See [google_container_cluster.md](google_container_cluster.md) for more detailed * `tpu_ipv4_cidr_blocks`: an array of `google_container_cluster` tpu_ipv4_cidr_block * `addons_configs`: an array of `google_container_cluster` addons_config * `subnetworks`: an array of `google_container_cluster` subnetwork + * `datapath_providers`: (Beta only) an array of `google_container_cluster` datapath_provider * `locations`: an array of `google_container_cluster` locations * `resource_labels`: an array of `google_container_cluster` resource_labels * `label_fingerprints`: an array of `google_container_cluster` label_fingerprint @@ -85,7 +86,7 @@ See [google_container_cluster.md](google_container_cluster.md) for more detailed * `node_pools`: an array of `google_container_cluster` node_pools * `pod_security_policy_configs`: (Beta only) an array of `google_container_cluster` pod_security_policy_config * `binary_authorizations`: an array of `google_container_cluster` binary_authorization - * `release_channels`: (Beta only) an array of `google_container_cluster` release_channel + * `shielded_nodes`: (Beta only) an array of `google_container_cluster` shielded_nodes * `locations`: an array of `google_container_cluster` location ## Filter Criteria diff --git a/docs/resources/google_container_node_pool.md b/docs/resources/google_container_node_pool.md index 0d6c01a30..ddd5302cb 100644 --- a/docs/resources/google_container_node_pool.md +++ b/docs/resources/google_container_node_pool.md @@ -98,6 +98,12 @@ Properties that can be accessed from the `google_container_node_pool` resource: * `effect`: Effect for taint + * `shielded_instance_config`: Shielded Instance options. + + * `enable_secure_boot`: Defines whether the instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. + + * `enable_integrity_monitoring`: Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the instance is created. + * `initial_node_count`: The initial node count for the pool. You must ensure that your Compute Engine resource quota is sufficient for this number of instances. You must also have available firewall and routes quota. * `status`: Status of nodes in this pool instance diff --git a/docs/resources/google_filestore_instance.md b/docs/resources/google_filestore_instance.md index 837e778d4..57c8020b9 100644 --- a/docs/resources/google_filestore_instance.md +++ b/docs/resources/google_filestore_instance.md @@ -6,6 +6,10 @@ platform: gcp ## Syntax A `google_filestore_instance` is used to test a Google Instance resource + +## Beta Resource +This resource has beta fields available. To retrieve these fields, include `beta: true` in the constructor for the resource + ## Examples ``` describe google_filestore_instance(project: 'chef-gcp-inspec', zone: 'us-central1-b', name: 'inspecgcp') do @@ -39,6 +43,9 @@ Properties that can be accessed from the `google_filestore_instance` resource: * TIER_UNSPECIFIED * STANDARD * PREMIUM + * BASIC_HDD + * BASIC_SSD + * HIGH_SCALE_SSD * `labels`: Resource labels to represent user-provided metadata. @@ -48,6 +55,24 @@ Properties that can be accessed from the `google_filestore_instance` resource: * `capacity_gb`: File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier. + * `nfs_export_options`: (Beta only) Nfs Export Options. There is a limit of 10 export options per file share. + + * `ip_ranges`: List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions. + + * `access_mode`: Either READ_ONLY, for allowing only read requests on the exported directory, or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE. + Possible values: + * READ_ONLY + * READ_WRITE + + * `squash_mode`: Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH, for not allowing root access. The default is NO_ROOT_SQUASH. + Possible values: + * NO_ROOT_SQUASH + * ROOT_SQUASH + + * `anon_uid`: An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings. + + * `anon_gid`: An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings. + * `networks`: VPC networks to which the instance is connected. For this version, only a single network is supported. * `network`: The name of the GCE VPC network to which the instance is connected. diff --git a/docs/resources/google_filestore_instances.md b/docs/resources/google_filestore_instances.md index 4a32e7381..18911b705 100644 --- a/docs/resources/google_filestore_instances.md +++ b/docs/resources/google_filestore_instances.md @@ -6,6 +6,10 @@ platform: gcp ## Syntax A `google_filestore_instances` is used to test a Google Instance resource + +## Beta Resource +This resource has beta fields available. To retrieve these fields, include `beta: true` in the constructor for the resource + ## Examples ``` describe google_filestore_instances(project: 'chef-gcp-inspec', zone: 'us-central1-b') do diff --git a/docs/resources/google_memcache_instance.md b/docs/resources/google_memcache_instance.md index 5aafa2feb..ccb769a5b 100644 --- a/docs/resources/google_memcache_instance.md +++ b/docs/resources/google_memcache_instance.md @@ -26,23 +26,43 @@ Properties that can be accessed from the `google_memcache_instance` resource: * `display_name`: (Beta only) A user-visible name for the instance. + * `memcache_nodes`: (Beta only) Additional information about the instance state, if available. + + * `node_id`: (Beta only) Identifier of the Memcached node. The node id does not include project or location like the Memcached instance name. + + * `zone`: (Beta only) Location (GCP Zone) for the Memcached node. + + * `port`: (Beta only) The port number of the Memcached server on this node. + + * `host`: (Beta only) Hostname or IP address of the Memcached node used by the clients to connect to the Memcached server on this node. + + * `state`: (Beta only) Current state of the Memcached node. + * `create_time`: (Beta only) Creation timestamp in RFC3339 text format. + * `discovery_endpoint`: (Beta only) Endpoint for Discovery API + * `labels`: (Beta only) Resource labels to represent user-provided metadata. + * `memcache_full_version`: (Beta only) The full version of memcached server running on this instance. + * `zones`: (Beta only) Zones where memcache nodes should be provisioned. If not provided, all zones will be used. * `authorized_network`: (Beta only) The full name of the GCE network to connect the instance to. If not provided, 'default' will be used. * `node_count`: (Beta only) Number of nodes in the memcache instance. + * `memcache_version`: (Beta only) The major version of Memcached software. If not provided, latest supported version will be used. Currently the latest supported major version is MEMCACHE_1_5. The minor version will be automatically determined by our system based on the latest supported minor version. + Possible values: + * MEMCACHE_1_5 + * `node_config`: (Beta only) Configuration for memcache nodes. * `cpu_count`: (Beta only) Number of CPUs per node. * `memory_size_mb`: (Beta only) Memory size in Mebibytes for each memcache node. - * `memcache_parameters`: (Beta only) User-specified parameters for this memcache instance. + * `parameters`: (Beta only) User-specified parameters for this memcache instance. * `id`: (Beta only) This is a unique ID associated with this set of parameters. diff --git a/docs/resources/google_memcache_instances.md b/docs/resources/google_memcache_instances.md index aea44e711..aa4b4bc93 100644 --- a/docs/resources/google_memcache_instances.md +++ b/docs/resources/google_memcache_instances.md @@ -20,13 +20,17 @@ Properties that can be accessed from the `google_memcache_instances` resource: See [google_memcache_instance.md](google_memcache_instance.md) for more detailed information * `names`: (Beta only) an array of `google_memcache_instance` name * `display_names`: (Beta only) an array of `google_memcache_instance` display_name + * `memcache_nodes`: (Beta only) an array of `google_memcache_instance` memcache_nodes * `create_times`: (Beta only) an array of `google_memcache_instance` create_time + * `discovery_endpoints`: (Beta only) an array of `google_memcache_instance` discovery_endpoint * `labels`: (Beta only) an array of `google_memcache_instance` labels + * `memcache_full_versions`: (Beta only) an array of `google_memcache_instance` memcache_full_version * `zones`: (Beta only) an array of `google_memcache_instance` zones * `authorized_networks`: (Beta only) an array of `google_memcache_instance` authorized_network * `node_counts`: (Beta only) an array of `google_memcache_instance` node_count + * `memcache_versions`: (Beta only) an array of `google_memcache_instance` memcache_version * `node_configs`: (Beta only) an array of `google_memcache_instance` node_config - * `memcache_parameters`: (Beta only) an array of `google_memcache_instance` memcache_parameters + * `parameters`: (Beta only) an array of `google_memcache_instance` parameters * `regions`: (Beta only) an array of `google_memcache_instance` region ## Filter Criteria diff --git a/docs/resources/google_pubsub_subscription.md b/docs/resources/google_pubsub_subscription.md index de1c1aab6..8121e00a2 100644 --- a/docs/resources/google_pubsub_subscription.md +++ b/docs/resources/google_pubsub_subscription.md @@ -49,12 +49,22 @@ Properties that can be accessed from the `google_pubsub_subscription` resource: * `ttl`: Specifies the "time-to-live" duration for an associated resource. The resource expires if it is not active for a period of ttl. If ttl is not set, the associated resource never expires. A duration in seconds with up to nine fractional digits, terminated by 's'. Example - "3.5s". + * `filter`: The subscription only delivers the messages that match the filter. Pub/Sub automatically acknowledges the messages that don't match the filter. You can filter messages by their attributes. The maximum length of a filter is 256 bytes. After creating the subscription, you can't modify the filter. + * `dead_letter_policy`: A policy that specifies the conditions for dead lettering messages in this subscription. If dead_letter_policy is not set, dead lettering is disabled. The Cloud Pub/Sub service account associated with this subscriptions's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Acknowledge() messages on this subscription. - * `dead_letter_topic`: The name of the topic to which dead letter messages should be published. Format is `projects/{project}/topics/{topic}`. The Cloud Pub/Sub service\naccount associated with the enclosing subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost. + * `dead_letter_topic`: The name of the topic to which dead letter messages should be published. Format is `projects/{project}/topics/{topic}`. The Cloud Pub/Sub service account associated with the enclosing subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost. * `max_delivery_attempts`: The maximum number of delivery attempts for any message. The value must be between 5 and 100. The number of delivery attempts is defined as 1 + (the sum of number of NACKs and number of times the acknowledgement deadline has been exceeded for the message). A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that client libraries may automatically extend ack_deadlines. This field will be honored on a best effort basis. If this parameter is 0, a default value of 5 is used. + * `retry_policy`: A policy that specifies how Pub/Sub retries message delivery for this subscription. If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message + + * `minimum_backoff`: The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". + + * `maximum_backoff`: The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". + + * `enable_message_ordering`: If `true`, messages published with the same orderingKey in PubsubMessage will be delivered to the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they may be delivered in any order. + ## GCP Permissions diff --git a/docs/resources/google_pubsub_subscriptions.md b/docs/resources/google_pubsub_subscriptions.md index b2171e346..9deb5aca7 100644 --- a/docs/resources/google_pubsub_subscriptions.md +++ b/docs/resources/google_pubsub_subscriptions.md @@ -31,7 +31,10 @@ See [google_pubsub_subscription.md](google_pubsub_subscription.md) for more deta * `message_retention_durations`: an array of `google_pubsub_subscription` message_retention_duration * `retain_acked_messages`: an array of `google_pubsub_subscription` retain_acked_messages * `expiration_policies`: an array of `google_pubsub_subscription` expiration_policy + * `filters`: an array of `google_pubsub_subscription` filter * `dead_letter_policies`: an array of `google_pubsub_subscription` dead_letter_policy + * `retry_policies`: an array of `google_pubsub_subscription` retry_policy + * `enable_message_orderings`: an array of `google_pubsub_subscription` enable_message_ordering ## Filter Criteria This resource supports all of the above properties as filter criteria, which can be used diff --git a/docs/resources/google_redis_instance.md b/docs/resources/google_redis_instance.md index ae455a47b..739c1f992 100644 --- a/docs/resources/google_redis_instance.md +++ b/docs/resources/google_redis_instance.md @@ -61,7 +61,9 @@ Properties that can be accessed from the `google_redis_instance` resource: * `port`: The port number of the exposed Redis endpoint. - * `redis_version`: The version of Redis software. If not provided, latest supported version will be used. Currently, the supported values are: - REDIS_4_0 for Redis 4.0 compatibility - REDIS_3_2 for Redis 3.2 compatibility + * `persistence_iam_identity`: Output only. Cloud IAM identity used by import / export operations to transfer data to/from Cloud Storage. Format is "serviceAccount:". The value may change over time for a given instance so should be checked before each import/export operation. + + * `redis_version`: The version of Redis software. If not provided, latest supported version will be used. Currently, the supported values are: - REDIS_5_0 for Redis 5.0 compatibility - REDIS_4_0 for Redis 4.0 compatibility - REDIS_3_2 for Redis 3.2 compatibility * `reserved_ip_range`: The CIDR range of internal addresses that are reserved for this instance. If not provided, the service will choose an unused /29 block, for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be unique and non-overlapping with existing subnets in an authorized network. diff --git a/docs/resources/google_redis_instances.md b/docs/resources/google_redis_instances.md index 6a994816f..9272b55e1 100644 --- a/docs/resources/google_redis_instances.md +++ b/docs/resources/google_redis_instances.md @@ -39,6 +39,7 @@ See [google_redis_instance.md](google_redis_instance.md) for more detailed infor * `names`: an array of `google_redis_instance` name * `memory_size_gbs`: an array of `google_redis_instance` memory_size_gb * `ports`: an array of `google_redis_instance` port + * `persistence_iam_identities`: an array of `google_redis_instance` persistence_iam_identity * `redis_versions`: an array of `google_redis_instance` redis_version * `reserved_ip_ranges`: an array of `google_redis_instance` reserved_ip_range * `tiers`: an array of `google_redis_instance` tier diff --git a/docs/resources/google_storage_bucket.md b/docs/resources/google_storage_bucket.md index 067faccd0..afa99c5a4 100644 --- a/docs/resources/google_storage_bucket.md +++ b/docs/resources/google_storage_bucket.md @@ -142,7 +142,7 @@ Properties that can be accessed from the `google_storage_bucket` resource: * `is_live`: Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects. - * `matches_storage_class`: Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, STANDARD, and DURABLE_REDUCED_AVAILABILITY. + * `matches_storage_class`: Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY. * `num_newer_versions`: Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object. @@ -166,13 +166,14 @@ Properties that can be accessed from the `google_storage_bucket` resource: * `project_number`: The project number of the project the bucket belongs to. - * `storage_class`: The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes. + * `storage_class`: The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes. Possible values: * MULTI_REGIONAL * REGIONAL * STANDARD * NEARLINE * COLDLINE + * ARCHIVE * DURABLE_REDUCED_AVAILABILITY * `time_created`: The creation time of the bucket in RFC 3339 format. diff --git a/libraries/google/appengine/property/standardappversion_vpc_access_connector.rb b/libraries/google/appengine/property/standardappversion_vpc_access_connector.rb new file mode 100644 index 000000000..28c5b35e7 --- /dev/null +++ b/libraries/google/appengine/property/standardappversion_vpc_access_connector.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module AppEngine + module Property + class StandardAppVersionVPCAccessConnector + attr_reader :name + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @name = args['name'] + end + + def to_s + "#{@parent_identifier} StandardAppVersionVPCAccessConnector" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build.rb b/libraries/google/cloudbuild/property/trigger_build.rb index 7400e811d..ba55fff08 100644 --- a/libraries/google/cloudbuild/property/trigger_build.rb +++ b/libraries/google/cloudbuild/property/trigger_build.rb @@ -13,26 +13,56 @@ # CONTRIBUTING.md located at the root of this package. # # ---------------------------------------------------------------------------- +require 'google/cloudbuild/property/trigger_build_artifacts' +require 'google/cloudbuild/property/trigger_build_artifacts_objects' +require 'google/cloudbuild/property/trigger_build_artifacts_objects_timing' +require 'google/cloudbuild/property/trigger_build_options' +require 'google/cloudbuild/property/trigger_build_options_volumes' +require 'google/cloudbuild/property/trigger_build_secrets' +require 'google/cloudbuild/property/trigger_build_source' +require 'google/cloudbuild/property/trigger_build_source_repo_source' +require 'google/cloudbuild/property/trigger_build_source_storage_source' require 'google/cloudbuild/property/trigger_build_steps' module GoogleInSpec module CloudBuild module Property class TriggerBuild + attr_reader :source + attr_reader :tags attr_reader :images + attr_reader :substitutions + + attr_reader :queue_ttl + + attr_reader :logs_bucket + attr_reader :timeout + attr_reader :secrets + attr_reader :steps + attr_reader :artifacts + + attr_reader :options + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier + @source = GoogleInSpec::CloudBuild::Property::TriggerBuildSource.new(args['source'], to_s) @tags = args['tags'] @images = args['images'] + @substitutions = args['substitutions'] + @queue_ttl = args['queueTtl'] + @logs_bucket = args['logsBucket'] @timeout = args['timeout'] + @secrets = GoogleInSpec::CloudBuild::Property::TriggerBuildSecretsArray.parse(args['secrets'], to_s) @steps = GoogleInSpec::CloudBuild::Property::TriggerBuildStepsArray.parse(args['steps'], to_s) + @artifacts = GoogleInSpec::CloudBuild::Property::TriggerBuildArtifacts.new(args['artifacts'], to_s) + @options = GoogleInSpec::CloudBuild::Property::TriggerBuildOptions.new(args['options'], to_s) end def to_s diff --git a/libraries/google/cloudbuild/property/trigger_build_artifacts.rb b/libraries/google/cloudbuild/property/trigger_build_artifacts.rb new file mode 100644 index 000000000..58b91641c --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_artifacts.rb @@ -0,0 +1,39 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +require 'google/cloudbuild/property/trigger_build_artifacts_objects' +require 'google/cloudbuild/property/trigger_build_artifacts_objects_timing' +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildArtifacts + attr_reader :images + + attr_reader :objects + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @images = args['images'] + @objects = GoogleInSpec::CloudBuild::Property::TriggerBuildArtifactsObjects.new(args['objects'], to_s) + end + + def to_s + "#{@parent_identifier} TriggerBuildArtifacts" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_artifacts_objects.rb b/libraries/google/cloudbuild/property/trigger_build_artifacts_objects.rb new file mode 100644 index 000000000..4cbdcd469 --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_artifacts_objects.rb @@ -0,0 +1,41 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +require 'google/cloudbuild/property/trigger_build_artifacts_objects_timing' +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildArtifactsObjects + attr_reader :location + + attr_reader :paths + + attr_reader :timing + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @location = args['location'] + @paths = args['paths'] + @timing = GoogleInSpec::CloudBuild::Property::TriggerBuildArtifactsObjectsTiming.new(args['timing'], to_s) + end + + def to_s + "#{@parent_identifier} TriggerBuildArtifactsObjects" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_artifacts_objects_timing.rb b/libraries/google/cloudbuild/property/trigger_build_artifacts_objects_timing.rb new file mode 100644 index 000000000..ea057e7fb --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_artifacts_objects_timing.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildArtifactsObjectsTiming + attr_reader :start_time + + attr_reader :end_time + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @start_time = args['startTime'] + @end_time = args['endTime'] + end + + def to_s + "#{@parent_identifier} TriggerBuildArtifactsObjectsTiming" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_options.rb b/libraries/google/cloudbuild/property/trigger_build_options.rb new file mode 100644 index 000000000..7c09431f4 --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_options.rb @@ -0,0 +1,68 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +require 'google/cloudbuild/property/trigger_build_options_volumes' +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildOptions + attr_reader :source_provenance_hash + + attr_reader :requested_verify_option + + attr_reader :machine_type + + attr_reader :disk_size_gb + + attr_reader :substitution_option + + attr_reader :dynamic_substitutions + + attr_reader :log_streaming_option + + attr_reader :worker_pool + + attr_reader :logging + + attr_reader :env + + attr_reader :secret_env + + attr_reader :volumes + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @source_provenance_hash = args['sourceProvenanceHash'] + @requested_verify_option = args['requestedVerifyOption'] + @machine_type = args['machineType'] + @disk_size_gb = args['diskSizeGb'] + @substitution_option = args['substitutionOption'] + @dynamic_substitutions = args['dynamicSubstitutions'] + @log_streaming_option = args['logStreamingOption'] + @worker_pool = args['workerPool'] + @logging = args['logging'] + @env = args['env'] + @secret_env = args['secretEnv'] + @volumes = GoogleInSpec::CloudBuild::Property::TriggerBuildOptionsVolumesArray.parse(args['volumes'], to_s) + end + + def to_s + "#{@parent_identifier} TriggerBuildOptions" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_options_volumes.rb b/libraries/google/cloudbuild/property/trigger_build_options_volumes.rb new file mode 100644 index 000000000..fc720890f --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_options_volumes.rb @@ -0,0 +1,45 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildOptionsVolumes + attr_reader :name + + attr_reader :path + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @name = args['name'] + @path = args['path'] + end + + def to_s + "#{@parent_identifier} TriggerBuildOptionsVolumes" + end + end + + class TriggerBuildOptionsVolumesArray + def self.parse(value, parent_identifier) + return if value.nil? + return TriggerBuildOptionsVolumes.new(value, parent_identifier) unless value.is_a?(::Array) + value.map { |v| TriggerBuildOptionsVolumes.new(v, parent_identifier) } + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_secrets.rb b/libraries/google/cloudbuild/property/trigger_build_secrets.rb new file mode 100644 index 000000000..fe6c60933 --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_secrets.rb @@ -0,0 +1,45 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildSecrets + attr_reader :kms_key_name + + attr_reader :secret_env + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @kms_key_name = args['kmsKeyName'] + @secret_env = args['secretEnv'] + end + + def to_s + "#{@parent_identifier} TriggerBuildSecrets" + end + end + + class TriggerBuildSecretsArray + def self.parse(value, parent_identifier) + return if value.nil? + return TriggerBuildSecrets.new(value, parent_identifier) unless value.is_a?(::Array) + value.map { |v| TriggerBuildSecrets.new(v, parent_identifier) } + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_source.rb b/libraries/google/cloudbuild/property/trigger_build_source.rb new file mode 100644 index 000000000..9a660f389 --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_source.rb @@ -0,0 +1,39 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +require 'google/cloudbuild/property/trigger_build_source_repo_source' +require 'google/cloudbuild/property/trigger_build_source_storage_source' +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildSource + attr_reader :storage_source + + attr_reader :repo_source + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @storage_source = GoogleInSpec::CloudBuild::Property::TriggerBuildSourceStorageSource.new(args['storageSource'], to_s) + @repo_source = GoogleInSpec::CloudBuild::Property::TriggerBuildSourceRepoSource.new(args['repoSource'], to_s) + end + + def to_s + "#{@parent_identifier} TriggerBuildSource" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_source_repo_source.rb b/libraries/google/cloudbuild/property/trigger_build_source_repo_source.rb new file mode 100644 index 000000000..0055b26e0 --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_source_repo_source.rb @@ -0,0 +1,55 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildSourceRepoSource + attr_reader :project_id + + attr_reader :repo_name + + attr_reader :dir + + attr_reader :invert_regex + + attr_reader :substitutions + + attr_reader :branch_name + + attr_reader :tag_name + + attr_reader :commit_sha + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @project_id = args['projectId'] + @repo_name = args['repoName'] + @dir = args['dir'] + @invert_regex = args['invertRegex'] + @substitutions = args['substitutions'] + @branch_name = args['branchName'] + @tag_name = args['tagName'] + @commit_sha = args['commitSha'] + end + + def to_s + "#{@parent_identifier} TriggerBuildSourceRepoSource" + end + end + end + end +end diff --git a/libraries/google/cloudbuild/property/trigger_build_source_storage_source.rb b/libraries/google/cloudbuild/property/trigger_build_source_storage_source.rb new file mode 100644 index 000000000..b62eacf9e --- /dev/null +++ b/libraries/google/cloudbuild/property/trigger_build_source_storage_source.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module CloudBuild + module Property + class TriggerBuildSourceStorageSource + attr_reader :bucket + + attr_reader :object + + attr_reader :generation + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @bucket = args['bucket'] + @object = args['object'] + @generation = args['generation'] + end + + def to_s + "#{@parent_identifier} TriggerBuildSourceStorageSource" + end + end + end + end +end diff --git a/libraries/google/compute/property/autoscaler_autoscaling_policy.rb b/libraries/google/compute/property/autoscaler_autoscaling_policy.rb index 25527f7d0..05afac369 100644 --- a/libraries/google/compute/property/autoscaler_autoscaling_policy.rb +++ b/libraries/google/compute/property/autoscaler_autoscaling_policy.rb @@ -16,6 +16,8 @@ require 'google/compute/property/autoscaler_autoscaling_policy_cpu_utilization' require 'google/compute/property/autoscaler_autoscaling_policy_custom_metric_utilizations' require 'google/compute/property/autoscaler_autoscaling_policy_load_balancing_utilization' +require 'google/compute/property/autoscaler_autoscaling_policy_scale_down_control' +require 'google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas' module GoogleInSpec module Compute module Property @@ -26,6 +28,10 @@ class AutoscalerAutoscalingPolicy attr_reader :cool_down_period_sec + attr_reader :mode + + attr_reader :scale_down_control + attr_reader :cpu_utilization attr_reader :custom_metric_utilizations @@ -38,6 +44,8 @@ def initialize(args = nil, parent_identifier = nil) @min_num_replicas = args['minNumReplicas'] @max_num_replicas = args['maxNumReplicas'] @cool_down_period_sec = args['coolDownPeriodSec'] + @mode = args['mode'] + @scale_down_control = GoogleInSpec::Compute::Property::AutoscalerAutoscalingPolicyScaleDownControl.new(args['scaleDownControl'], to_s) @cpu_utilization = GoogleInSpec::Compute::Property::AutoscalerAutoscalingPolicyCpuUtilization.new(args['cpuUtilization'], to_s) @custom_metric_utilizations = GoogleInSpec::Compute::Property::AutoscalerAutoscalingPolicyCustomMetricUtilizationsArray.parse(args['customMetricUtilizations'], to_s) @load_balancing_utilization = GoogleInSpec::Compute::Property::AutoscalerAutoscalingPolicyLoadBalancingUtilization.new(args['loadBalancingUtilization'], to_s) diff --git a/libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control.rb b/libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control.rb new file mode 100644 index 000000000..96b564001 --- /dev/null +++ b/libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +require 'google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas' +module GoogleInSpec + module Compute + module Property + class AutoscalerAutoscalingPolicyScaleDownControl + attr_reader :max_scaled_down_replicas + + attr_reader :time_window_sec + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @max_scaled_down_replicas = GoogleInSpec::Compute::Property::AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicas.new(args['maxScaledDownReplicas'], to_s) + @time_window_sec = args['timeWindowSec'] + end + + def to_s + "#{@parent_identifier} AutoscalerAutoscalingPolicyScaleDownControl" + end + end + end + end +end diff --git a/libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas.rb b/libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas.rb new file mode 100644 index 000000000..57233b705 --- /dev/null +++ b/libraries/google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Compute + module Property + class AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicas + attr_reader :fixed + + attr_reader :percent + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @fixed = args['fixed'] + @percent = args['percent'] + end + + def to_s + "#{@parent_identifier} AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicas" + end + end + end + end +end diff --git a/libraries/google/compute/property/disk_disk_encryption_key.rb b/libraries/google/compute/property/disk_disk_encryption_key.rb index 219698820..a977ddab4 100644 --- a/libraries/google/compute/property/disk_disk_encryption_key.rb +++ b/libraries/google/compute/property/disk_disk_encryption_key.rb @@ -23,12 +23,15 @@ class DiskDiskEncryptionKey attr_reader :kms_key_name + attr_reader :kms_key_service_account + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @raw_key = args['rawKey'] @sha256 = args['sha256'] @kms_key_name = args['kmsKeyName'] + @kms_key_service_account = args['kmsKeyServiceAccount'] end def to_s diff --git a/libraries/google/compute/property/disk_source_image_encryption_key.rb b/libraries/google/compute/property/disk_source_image_encryption_key.rb index 14cbdd2f3..e52893eaa 100644 --- a/libraries/google/compute/property/disk_source_image_encryption_key.rb +++ b/libraries/google/compute/property/disk_source_image_encryption_key.rb @@ -23,12 +23,15 @@ class DiskSourceImageEncryptionKey attr_reader :kms_key_name + attr_reader :kms_key_service_account + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @raw_key = args['rawKey'] @sha256 = args['sha256'] @kms_key_name = args['kmsKeyName'] + @kms_key_service_account = args['kmsKeyServiceAccount'] end def to_s diff --git a/libraries/google/compute/property/disk_source_snapshot_encryption_key.rb b/libraries/google/compute/property/disk_source_snapshot_encryption_key.rb index 4dce32824..c4c207b3b 100644 --- a/libraries/google/compute/property/disk_source_snapshot_encryption_key.rb +++ b/libraries/google/compute/property/disk_source_snapshot_encryption_key.rb @@ -23,12 +23,15 @@ class DiskSourceSnapshotEncryptionKey attr_reader :sha256 + attr_reader :kms_key_service_account + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @raw_key = args['rawKey'] @kms_key_name = args['kmsKeyName'] @sha256 = args['sha256'] + @kms_key_service_account = args['kmsKeyServiceAccount'] end def to_s diff --git a/libraries/google/compute/property/firewall_log_config.rb b/libraries/google/compute/property/firewall_log_config.rb index 51224d308..b259f059d 100644 --- a/libraries/google/compute/property/firewall_log_config.rb +++ b/libraries/google/compute/property/firewall_log_config.rb @@ -17,12 +17,15 @@ module GoogleInSpec module Compute module Property class FirewallLogConfig - attr_reader :enable_logging + attr_reader :enable + + attr_reader :metadata def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier - @enable_logging = args['enable'] + @enable = args['enable'] + @metadata = args['metadata'] end def to_s diff --git a/libraries/google/compute/property/healthcheck_grpc_health_check.rb b/libraries/google/compute/property/healthcheck_grpc_health_check.rb new file mode 100644 index 000000000..4eeceb2ed --- /dev/null +++ b/libraries/google/compute/property/healthcheck_grpc_health_check.rb @@ -0,0 +1,43 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Compute + module Property + class HealthCheckGrpcHealthCheck + attr_reader :port + + attr_reader :port_name + + attr_reader :port_specification + + attr_reader :grpc_service_name + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @port = args['port'] + @port_name = args['portName'] + @port_specification = args['portSpecification'] + @grpc_service_name = args['grpcServiceName'] + end + + def to_s + "#{@parent_identifier} HealthCheckGrpcHealthCheck" + end + end + end + end +end diff --git a/libraries/google/compute/property/network_peerings.rb b/libraries/google/compute/property/network_peerings.rb new file mode 100644 index 000000000..499a519fd --- /dev/null +++ b/libraries/google/compute/property/network_peerings.rb @@ -0,0 +1,60 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Compute + module Property + class NetworkPeerings + attr_reader :name + + attr_reader :state + + attr_reader :state_details + + attr_reader :network + + attr_reader :export_custom_routes + + attr_reader :import_custom_routes + + attr_reader :peer_mtu + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @name = args['name'] + @state = args['state'] + @state_details = args['stateDetails'] + @network = args['network'] + @export_custom_routes = args['exportCustomRoutes'] + @import_custom_routes = args['importCustomRoutes'] + @peer_mtu = args['peerMtu'] + end + + def to_s + "#{@parent_identifier} NetworkPeerings" + end + end + + class NetworkPeeringsArray + def self.parse(value, parent_identifier) + return if value.nil? + return NetworkPeerings.new(value, parent_identifier) unless value.is_a?(::Array) + value.map { |v| NetworkPeerings.new(v, parent_identifier) } + end + end + end + end +end diff --git a/libraries/google/compute/property/snapshot_snapshot_encryption_key.rb b/libraries/google/compute/property/snapshot_snapshot_encryption_key.rb index c8d5410b7..6483173a2 100644 --- a/libraries/google/compute/property/snapshot_snapshot_encryption_key.rb +++ b/libraries/google/compute/property/snapshot_snapshot_encryption_key.rb @@ -23,12 +23,15 @@ class SnapshotSnapshotEncryptionKey attr_reader :kms_key_name + attr_reader :kms_key_service_account + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @raw_key = args['rawKey'] @sha256 = args['sha256'] @kms_key_name = args['kmsKeyName'] + @kms_key_service_account = args['kmsKeyServiceAccount'] end def to_s diff --git a/libraries/google/compute/property/snapshot_source_disk_encryption_key.rb b/libraries/google/compute/property/snapshot_source_disk_encryption_key.rb index 88207fb0c..c6e35fc50 100644 --- a/libraries/google/compute/property/snapshot_source_disk_encryption_key.rb +++ b/libraries/google/compute/property/snapshot_source_disk_encryption_key.rb @@ -21,11 +21,14 @@ class SnapshotSourceDiskEncryptionKey attr_reader :kms_key_name + attr_reader :kms_key_service_account + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @raw_key = args['rawKey'] @kms_key_name = args['kmsKeyName'] + @kms_key_service_account = args['kmsKeyServiceAccount'] end def to_s diff --git a/libraries/google/compute/property/subnetwork_log_config.rb b/libraries/google/compute/property/subnetwork_log_config.rb index fd9b75de4..90b370d01 100644 --- a/libraries/google/compute/property/subnetwork_log_config.rb +++ b/libraries/google/compute/property/subnetwork_log_config.rb @@ -25,6 +25,10 @@ class SubnetworkLogConfig attr_reader :metadata + attr_reader :metadata_fields + + attr_reader :filter_expr + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @@ -32,6 +36,8 @@ def initialize(args = nil, parent_identifier = nil) @aggregation_interval = args['aggregationInterval'] @flow_sampling = args['flowSampling'] @metadata = args['metadata'] + @metadata_fields = args['metadataFields'] + @filter_expr = args['filterExpr'] end def to_s diff --git a/libraries/google/container/property/cluster_node_config.rb b/libraries/google/container/property/cluster_node_config.rb index 674e292e4..e3c6fa702 100644 --- a/libraries/google/container/property/cluster_node_config.rb +++ b/libraries/google/container/property/cluster_node_config.rb @@ -14,6 +14,7 @@ # # ---------------------------------------------------------------------------- require 'google/container/property/cluster_node_config_accelerators' +require 'google/container/property/cluster_node_config_shielded_instance_config' require 'google/container/property/cluster_node_config_taints' module GoogleInSpec module Container @@ -47,6 +48,8 @@ class ClusterNodeConfig attr_reader :taints + attr_reader :shielded_instance_config + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @@ -64,6 +67,7 @@ def initialize(args = nil, parent_identifier = nil) @disk_type = args['diskType'] @min_cpu_platform = args['minCpuPlatform'] @taints = GoogleInSpec::Container::Property::ClusterNodeConfigTaintsArray.parse(args['taints'], to_s) + @shielded_instance_config = GoogleInSpec::Container::Property::ClusterNodeConfigShieldedInstanceConfig.new(args['shieldedInstanceConfig'], to_s) end def to_s diff --git a/libraries/google/container/property/cluster_node_config_shielded_instance_config.rb b/libraries/google/container/property/cluster_node_config_shielded_instance_config.rb new file mode 100644 index 000000000..505d08b58 --- /dev/null +++ b/libraries/google/container/property/cluster_node_config_shielded_instance_config.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Container + module Property + class ClusterNodeConfigShieldedInstanceConfig + attr_reader :enable_secure_boot + + attr_reader :enable_integrity_monitoring + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @enable_secure_boot = args['enableSecureBoot'] + @enable_integrity_monitoring = args['enableIntegrityMonitoring'] + end + + def to_s + "#{@parent_identifier} ClusterNodeConfigShieldedInstanceConfig" + end + end + end + end +end diff --git a/libraries/google/container/property/cluster_shielded_nodes.rb b/libraries/google/container/property/cluster_shielded_nodes.rb new file mode 100644 index 000000000..036218f50 --- /dev/null +++ b/libraries/google/container/property/cluster_shielded_nodes.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Container + module Property + class ClusterShieldedNodes + attr_reader :enabled + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @enabled = args['enabled'] + end + + def to_s + "#{@parent_identifier} ClusterShieldedNodes" + end + end + end + end +end diff --git a/libraries/google/container/property/nodepool_config.rb b/libraries/google/container/property/nodepool_config.rb index f2f00dd8f..856e1c2c3 100644 --- a/libraries/google/container/property/nodepool_config.rb +++ b/libraries/google/container/property/nodepool_config.rb @@ -14,6 +14,7 @@ # # ---------------------------------------------------------------------------- require 'google/container/property/nodepool_config_accelerators' +require 'google/container/property/nodepool_config_shielded_instance_config' require 'google/container/property/nodepool_config_taints' module GoogleInSpec module Container @@ -47,6 +48,8 @@ class NodePoolConfig attr_reader :taints + attr_reader :shielded_instance_config + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @@ -64,6 +67,7 @@ def initialize(args = nil, parent_identifier = nil) @disk_type = args['diskType'] @min_cpu_platform = args['minCpuPlatform'] @taints = GoogleInSpec::Container::Property::NodePoolConfigTaintsArray.parse(args['taints'], to_s) + @shielded_instance_config = GoogleInSpec::Container::Property::NodePoolConfigShieldedInstanceConfig.new(args['shieldedInstanceConfig'], to_s) end def to_s diff --git a/libraries/google/container/property/nodepool_config_shielded_instance_config.rb b/libraries/google/container/property/nodepool_config_shielded_instance_config.rb new file mode 100644 index 000000000..a4e585a7a --- /dev/null +++ b/libraries/google/container/property/nodepool_config_shielded_instance_config.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Container + module Property + class NodePoolConfigShieldedInstanceConfig + attr_reader :enable_secure_boot + + attr_reader :enable_integrity_monitoring + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @enable_secure_boot = args['enableSecureBoot'] + @enable_integrity_monitoring = args['enableIntegrityMonitoring'] + end + + def to_s + "#{@parent_identifier} NodePoolConfigShieldedInstanceConfig" + end + end + end + end +end diff --git a/libraries/google/filestore/property/instance_file_shares.rb b/libraries/google/filestore/property/instance_file_shares.rb index 24cfc10d2..c406046f0 100644 --- a/libraries/google/filestore/property/instance_file_shares.rb +++ b/libraries/google/filestore/property/instance_file_shares.rb @@ -13,6 +13,7 @@ # CONTRIBUTING.md located at the root of this package. # # ---------------------------------------------------------------------------- +require 'google/filestore/property/instance_file_shares_nfs_export_options' module GoogleInSpec module Filestore module Property @@ -21,11 +22,14 @@ class InstanceFileShares attr_reader :capacity_gb + attr_reader :nfs_export_options + def initialize(args = nil, parent_identifier = nil) return if args.nil? @parent_identifier = parent_identifier @name = args['name'] @capacity_gb = args['capacityGb'] + @nfs_export_options = GoogleInSpec::Filestore::Property::InstanceFileSharesNfsExportOptionsArray.parse(args['nfsExportOptions'], to_s) end def to_s diff --git a/libraries/google/filestore/property/instance_file_shares_nfs_export_options.rb b/libraries/google/filestore/property/instance_file_shares_nfs_export_options.rb new file mode 100644 index 000000000..89601ed8c --- /dev/null +++ b/libraries/google/filestore/property/instance_file_shares_nfs_export_options.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Filestore + module Property + class InstanceFileSharesNfsExportOptions + attr_reader :ip_ranges + + attr_reader :access_mode + + attr_reader :squash_mode + + attr_reader :anon_uid + + attr_reader :anon_gid + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @ip_ranges = args['ipRanges'] + @access_mode = args['accessMode'] + @squash_mode = args['squashMode'] + @anon_uid = args['anonUid'] + @anon_gid = args['anonGid'] + end + + def to_s + "#{@parent_identifier} InstanceFileSharesNfsExportOptions" + end + end + + class InstanceFileSharesNfsExportOptionsArray + def self.parse(value, parent_identifier) + return if value.nil? + return InstanceFileSharesNfsExportOptions.new(value, parent_identifier) unless value.is_a?(::Array) + value.map { |v| InstanceFileSharesNfsExportOptions.new(v, parent_identifier) } + end + end + end + end +end diff --git a/libraries/google/memcache/property/instance_memcache_nodes.rb b/libraries/google/memcache/property/instance_memcache_nodes.rb new file mode 100644 index 000000000..f9d52dbf3 --- /dev/null +++ b/libraries/google/memcache/property/instance_memcache_nodes.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Memcache + module Property + class InstanceMemcacheNodes + attr_reader :node_id + + attr_reader :zone + + attr_reader :port + + attr_reader :host + + attr_reader :state + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @node_id = args['nodeId'] + @zone = args['zone'] + @port = args['port'] + @host = args['host'] + @state = args['state'] + end + + def to_s + "#{@parent_identifier} InstanceMemcacheNodes" + end + end + + class InstanceMemcacheNodesArray + def self.parse(value, parent_identifier) + return if value.nil? + return InstanceMemcacheNodes.new(value, parent_identifier) unless value.is_a?(::Array) + value.map { |v| InstanceMemcacheNodes.new(v, parent_identifier) } + end + end + end + end +end diff --git a/libraries/google/memcache/property/instance_parameters.rb b/libraries/google/memcache/property/instance_parameters.rb new file mode 100644 index 000000000..ecf924cdd --- /dev/null +++ b/libraries/google/memcache/property/instance_parameters.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Memcache + module Property + class InstanceParameters + attr_reader :id + + attr_reader :params + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @id = args['id'] + @params = args['params'] + end + + def to_s + "#{@parent_identifier} InstanceParameters" + end + end + end + end +end diff --git a/libraries/google/pubsub/property/subscription_retry_policy.rb b/libraries/google/pubsub/property/subscription_retry_policy.rb new file mode 100644 index 000000000..0ce49a2fe --- /dev/null +++ b/libraries/google/pubsub/property/subscription_retry_policy.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: false + +# ---------------------------------------------------------------------------- +# +# *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** +# +# ---------------------------------------------------------------------------- +# +# This file is automatically generated by Magic Modules and manual +# changes will be clobbered when the file is regenerated. +# +# Please read more about how to change this file in README.md and +# CONTRIBUTING.md located at the root of this package. +# +# ---------------------------------------------------------------------------- +module GoogleInSpec + module Pubsub + module Property + class SubscriptionRetryPolicy + attr_reader :minimum_backoff + + attr_reader :maximum_backoff + + def initialize(args = nil, parent_identifier = nil) + return if args.nil? + @parent_identifier = parent_identifier + @minimum_backoff = args['minimumBackoff'] + @maximum_backoff = args['maximumBackoff'] + end + + def to_s + "#{@parent_identifier} SubscriptionRetryPolicy" + end + end + end + end +end diff --git a/libraries/google_appengine_standard_app_version.rb b/libraries/google_appengine_standard_app_version.rb index e1a2d2e0d..98469177f 100644 --- a/libraries/google_appengine_standard_app_version.rb +++ b/libraries/google_appengine_standard_app_version.rb @@ -18,6 +18,7 @@ require 'google/appengine/property/standardappversion_automatic_scaling_standard_scheduler_settings' require 'google/appengine/property/standardappversion_basic_scaling' require 'google/appengine/property/standardappversion_manual_scaling' +require 'google/appengine/property/standardappversion_vpc_access_connector' # A provider to manage App Engine resources. class AppEngineStandardAppVersion < GcpResourceBase @@ -30,6 +31,7 @@ class AppEngineStandardAppVersion < GcpResourceBase attr_reader :version_id attr_reader :runtime attr_reader :threadsafe + attr_reader :vpc_access_connector attr_reader :inbound_services attr_reader :instance_class attr_reader :automatic_scaling @@ -48,6 +50,7 @@ def parse @version_id = @fetched['id'] @runtime = @fetched['runtime'] @threadsafe = @fetched['threadsafe'] + @vpc_access_connector = GoogleInSpec::AppEngine::Property::StandardAppVersionVPCAccessConnector.new(@fetched['vpcAccessConnector'], to_s) @inbound_services = @fetched['inboundServices'] @instance_class = @fetched['instanceClass'] @automatic_scaling = GoogleInSpec::AppEngine::Property::StandardAppVersionAutomaticScaling.new(@fetched['automaticScaling'], to_s) diff --git a/libraries/google_appengine_standard_app_versions.rb b/libraries/google_appengine_standard_app_versions.rb index fe5a16887..546db82ea 100644 --- a/libraries/google_appengine_standard_app_versions.rb +++ b/libraries/google_appengine_standard_app_versions.rb @@ -27,6 +27,7 @@ class AppEngineStandardAppVersions < GcpResourceBase filter_table_config.add(:version_ids, field: :version_id) filter_table_config.add(:runtimes, field: :runtime) filter_table_config.add(:threadsaves, field: :threadsafe) + filter_table_config.add(:vpc_access_connectors, field: :vpc_access_connector) filter_table_config.add(:inbound_services, field: :inbound_services) filter_table_config.add(:instance_classes, field: :instance_class) filter_table_config.add(:automatic_scalings, field: :automatic_scaling) @@ -75,6 +76,7 @@ def transformers 'id' => ->(obj) { return :version_id, obj['id'] }, 'runtime' => ->(obj) { return :runtime, obj['runtime'] }, 'threadsafe' => ->(obj) { return :threadsafe, obj['threadsafe'] }, + 'vpcAccessConnector' => ->(obj) { return :vpc_access_connector, GoogleInSpec::AppEngine::Property::StandardAppVersionVPCAccessConnector.new(obj['vpcAccessConnector'], to_s) }, 'inboundServices' => ->(obj) { return :inbound_services, obj['inboundServices'] }, 'instanceClass' => ->(obj) { return :instance_class, obj['instanceClass'] }, 'automaticScaling' => ->(obj) { return :automatic_scaling, GoogleInSpec::AppEngine::Property::StandardAppVersionAutomaticScaling.new(obj['automaticScaling'], to_s) }, diff --git a/libraries/google_bigquery_dataset.rb b/libraries/google_bigquery_dataset.rb index 7d34fd879..a29fcef86 100644 --- a/libraries/google_bigquery_dataset.rb +++ b/libraries/google_bigquery_dataset.rb @@ -77,7 +77,7 @@ def name private def product_url(_ = nil) - 'https://www.googleapis.com/bigquery/v2/' + 'https://bigquery.googleapis.com/bigquery/v2/' end def resource_base_url diff --git a/libraries/google_bigquery_datasets.rb b/libraries/google_bigquery_datasets.rb index 29bbeb810..f739aa363 100644 --- a/libraries/google_bigquery_datasets.rb +++ b/libraries/google_bigquery_datasets.rb @@ -84,7 +84,7 @@ def transformers private def product_url(_ = nil) - 'https://www.googleapis.com/bigquery/v2/' + 'https://bigquery.googleapis.com/bigquery/v2/' end def resource_base_url diff --git a/libraries/google_bigquery_table.rb b/libraries/google_bigquery_table.rb index 1a4b2cbfe..85d5a13bb 100644 --- a/libraries/google_bigquery_table.rb +++ b/libraries/google_bigquery_table.rb @@ -105,7 +105,7 @@ def to_s private def product_url(_ = nil) - 'https://www.googleapis.com/bigquery/v2/' + 'https://bigquery.googleapis.com/bigquery/v2/' end def resource_base_url diff --git a/libraries/google_bigquery_tables.rb b/libraries/google_bigquery_tables.rb index e2702d11f..3cbb31a4d 100644 --- a/libraries/google_bigquery_tables.rb +++ b/libraries/google_bigquery_tables.rb @@ -110,7 +110,7 @@ def transformers private def product_url(_ = nil) - 'https://www.googleapis.com/bigquery/v2/' + 'https://bigquery.googleapis.com/bigquery/v2/' end def resource_base_url diff --git a/libraries/google_cloudbuild_trigger.rb b/libraries/google_cloudbuild_trigger.rb index bfaaa0bdb..e14e02626 100644 --- a/libraries/google_cloudbuild_trigger.rb +++ b/libraries/google_cloudbuild_trigger.rb @@ -15,6 +15,15 @@ # ---------------------------------------------------------------------------- require 'gcp_backend' require 'google/cloudbuild/property/trigger_build' +require 'google/cloudbuild/property/trigger_build_artifacts' +require 'google/cloudbuild/property/trigger_build_artifacts_objects' +require 'google/cloudbuild/property/trigger_build_artifacts_objects_timing' +require 'google/cloudbuild/property/trigger_build_options' +require 'google/cloudbuild/property/trigger_build_options_volumes' +require 'google/cloudbuild/property/trigger_build_secrets' +require 'google/cloudbuild/property/trigger_build_source' +require 'google/cloudbuild/property/trigger_build_source_repo_source' +require 'google/cloudbuild/property/trigger_build_source_storage_source' require 'google/cloudbuild/property/trigger_build_steps' require 'google/cloudbuild/property/trigger_github' require 'google/cloudbuild/property/trigger_github_pull_request' @@ -31,6 +40,7 @@ class CloudBuildTrigger < GcpResourceBase attr_reader :id attr_reader :name attr_reader :description + attr_reader :tags attr_reader :disabled attr_reader :create_time attr_reader :substitutions @@ -52,6 +62,7 @@ def parse @id = @fetched['id'] @name = @fetched['name'] @description = @fetched['description'] + @tags = @fetched['tags'] @disabled = @fetched['disabled'] @create_time = parse_time_string(@fetched['createTime']) @substitutions = @fetched['substitutions'] diff --git a/libraries/google_cloudbuild_triggers.rb b/libraries/google_cloudbuild_triggers.rb index cf37649dd..876ab032d 100644 --- a/libraries/google_cloudbuild_triggers.rb +++ b/libraries/google_cloudbuild_triggers.rb @@ -26,6 +26,7 @@ class CloudBuildTriggers < GcpResourceBase filter_table_config.add(:ids, field: :id) filter_table_config.add(:names, field: :name) filter_table_config.add(:descriptions, field: :description) + filter_table_config.add(:tags, field: :tags) filter_table_config.add(:disableds, field: :disabled) filter_table_config.add(:create_times, field: :create_time) filter_table_config.add(:substitutions, field: :substitutions) @@ -77,6 +78,7 @@ def transformers 'id' => ->(obj) { return :id, obj['id'] }, 'name' => ->(obj) { return :name, obj['name'] }, 'description' => ->(obj) { return :description, obj['description'] }, + 'tags' => ->(obj) { return :tags, obj['tags'] }, 'disabled' => ->(obj) { return :disabled, obj['disabled'] }, 'createTime' => ->(obj) { return :create_time, parse_time_string(obj['createTime']) }, 'substitutions' => ->(obj) { return :substitutions, obj['substitutions'] }, diff --git a/libraries/google_compute_address.rb b/libraries/google_compute_address.rb index fe1562dd9..d2d2de0bd 100644 --- a/libraries/google_compute_address.rb +++ b/libraries/google_compute_address.rb @@ -93,9 +93,9 @@ def user_resource_name def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_addresses.rb b/libraries/google_compute_addresses.rb index 311d5fb3f..1da3fc96b 100644 --- a/libraries/google_compute_addresses.rb +++ b/libraries/google_compute_addresses.rb @@ -102,9 +102,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_autoscaler.rb b/libraries/google_compute_autoscaler.rb index 93c75b59c..c6bd564c9 100644 --- a/libraries/google_compute_autoscaler.rb +++ b/libraries/google_compute_autoscaler.rb @@ -18,6 +18,8 @@ require 'google/compute/property/autoscaler_autoscaling_policy_cpu_utilization' require 'google/compute/property/autoscaler_autoscaling_policy_custom_metric_utilizations' require 'google/compute/property/autoscaler_autoscaling_policy_load_balancing_utilization' +require 'google/compute/property/autoscaler_autoscaling_policy_scale_down_control' +require 'google/compute/property/autoscaler_autoscaling_policy_scale_down_control_max_scaled_down_replicas' # A provider to manage Compute Engine resources. class ComputeAutoscaler < GcpResourceBase @@ -68,9 +70,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_autoscalers.rb b/libraries/google_compute_autoscalers.rb index 5e6095d11..d0db9a174 100644 --- a/libraries/google_compute_autoscalers.rb +++ b/libraries/google_compute_autoscalers.rb @@ -88,9 +88,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_backend_bucket.rb b/libraries/google_compute_backend_bucket.rb index e61fb5100..9f15b489a 100644 --- a/libraries/google_compute_backend_bucket.rb +++ b/libraries/google_compute_backend_bucket.rb @@ -65,9 +65,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_backend_buckets.rb b/libraries/google_compute_backend_buckets.rb index 6e6ef8d00..61fa6656a 100644 --- a/libraries/google_compute_backend_buckets.rb +++ b/libraries/google_compute_backend_buckets.rb @@ -88,9 +88,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_backend_service.rb b/libraries/google_compute_backend_service.rb index e6eaea9bf..e91cb6af0 100644 --- a/libraries/google_compute_backend_service.rb +++ b/libraries/google_compute_backend_service.rb @@ -112,9 +112,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_backend_services.rb b/libraries/google_compute_backend_services.rb index 552c0cf91..77ffb6da2 100644 --- a/libraries/google_compute_backend_services.rb +++ b/libraries/google_compute_backend_services.rb @@ -122,9 +122,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_disk.rb b/libraries/google_compute_disk.rb index ae3adea53..1523aab0b 100644 --- a/libraries/google_compute_disk.rb +++ b/libraries/google_compute_disk.rb @@ -97,9 +97,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_disks.rb b/libraries/google_compute_disks.rb index 2bc9ec29d..5c254f3c5 100644 --- a/libraries/google_compute_disks.rb +++ b/libraries/google_compute_disks.rb @@ -118,9 +118,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_firewall.rb b/libraries/google_compute_firewall.rb index ef6df952a..8ea479fe1 100644 --- a/libraries/google_compute_firewall.rb +++ b/libraries/google_compute_firewall.rb @@ -257,9 +257,9 @@ def log_config_enabled? def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_firewalls.rb b/libraries/google_compute_firewalls.rb index 5d09207bf..529aa04b5 100644 --- a/libraries/google_compute_firewalls.rb +++ b/libraries/google_compute_firewalls.rb @@ -108,9 +108,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_forwarding_rule.rb b/libraries/google_compute_forwarding_rule.rb index b113e6d31..c189b0883 100644 --- a/libraries/google_compute_forwarding_rule.rb +++ b/libraries/google_compute_forwarding_rule.rb @@ -94,9 +94,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_forwarding_rules.rb b/libraries/google_compute_forwarding_rules.rb index 2d2c7ad44..b14b3fe97 100644 --- a/libraries/google_compute_forwarding_rules.rb +++ b/libraries/google_compute_forwarding_rules.rb @@ -118,9 +118,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_global_address.rb b/libraries/google_compute_global_address.rb index d3b385bf5..eea487b97 100644 --- a/libraries/google_compute_global_address.rb +++ b/libraries/google_compute_global_address.rb @@ -76,9 +76,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_global_addresses.rb b/libraries/google_compute_global_addresses.rb index 3ebc0d9a8..e23d5c99f 100644 --- a/libraries/google_compute_global_addresses.rb +++ b/libraries/google_compute_global_addresses.rb @@ -100,9 +100,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_global_forwarding_rule.rb b/libraries/google_compute_global_forwarding_rule.rb index 5468e22bc..d64127513 100644 --- a/libraries/google_compute_global_forwarding_rule.rb +++ b/libraries/google_compute_global_forwarding_rule.rb @@ -79,9 +79,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_global_forwarding_rules.rb b/libraries/google_compute_global_forwarding_rules.rb index 29f293a46..c47feb0c7 100644 --- a/libraries/google_compute_global_forwarding_rules.rb +++ b/libraries/google_compute_global_forwarding_rules.rb @@ -102,9 +102,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_health_check.rb b/libraries/google_compute_health_check.rb index ff72c00e4..d3f5b1047 100644 --- a/libraries/google_compute_health_check.rb +++ b/libraries/google_compute_health_check.rb @@ -14,6 +14,7 @@ # # ---------------------------------------------------------------------------- require 'gcp_backend' +require 'google/compute/property/healthcheck_grpc_health_check' require 'google/compute/property/healthcheck_http2_health_check' require 'google/compute/property/healthcheck_http_health_check' require 'google/compute/property/healthcheck_https_health_check' @@ -42,6 +43,7 @@ class ComputeHealthCheck < GcpResourceBase attr_reader :tcp_health_check attr_reader :ssl_health_check attr_reader :http2_health_check + attr_reader :grpc_health_check attr_reader :log_config def initialize(params) @@ -66,6 +68,7 @@ def parse @tcp_health_check = GoogleInSpec::Compute::Property::HealthCheckTcpHealthCheck.new(@fetched['tcpHealthCheck'], to_s) @ssl_health_check = GoogleInSpec::Compute::Property::HealthCheckSslHealthCheck.new(@fetched['sslHealthCheck'], to_s) @http2_health_check = GoogleInSpec::Compute::Property::HealthCheckHttp2HealthCheck.new(@fetched['http2HealthCheck'], to_s) + @grpc_health_check = GoogleInSpec::Compute::Property::HealthCheckGrpcHealthCheck.new(@fetched['grpcHealthCheck'], to_s) @log_config = GoogleInSpec::Compute::Property::HealthCheckLogConfig.new(@fetched['logConfig'], to_s) end @@ -86,9 +89,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_health_checks.rb b/libraries/google_compute_health_checks.rb index 62c814d6b..90cd8dfd2 100644 --- a/libraries/google_compute_health_checks.rb +++ b/libraries/google_compute_health_checks.rb @@ -37,6 +37,7 @@ class ComputeHealthChecks < GcpResourceBase filter_table_config.add(:tcp_health_checks, field: :tcp_health_check) filter_table_config.add(:ssl_health_checks, field: :ssl_health_check) filter_table_config.add(:http2_health_checks, field: :http2_health_check) + filter_table_config.add(:grpc_health_checks, field: :grpc_health_check) filter_table_config.add(:log_configs, field: :log_config) filter_table_config.connect(self, :table) @@ -91,6 +92,7 @@ def transformers 'tcpHealthCheck' => ->(obj) { return :tcp_health_check, GoogleInSpec::Compute::Property::HealthCheckTcpHealthCheck.new(obj['tcpHealthCheck'], to_s) }, 'sslHealthCheck' => ->(obj) { return :ssl_health_check, GoogleInSpec::Compute::Property::HealthCheckSslHealthCheck.new(obj['sslHealthCheck'], to_s) }, 'http2HealthCheck' => ->(obj) { return :http2_health_check, GoogleInSpec::Compute::Property::HealthCheckHttp2HealthCheck.new(obj['http2HealthCheck'], to_s) }, + 'grpcHealthCheck' => ->(obj) { return :grpc_health_check, GoogleInSpec::Compute::Property::HealthCheckGrpcHealthCheck.new(obj['grpcHealthCheck'], to_s) }, 'logConfig' => ->(obj) { return :log_config, GoogleInSpec::Compute::Property::HealthCheckLogConfig.new(obj['logConfig'], to_s) }, } end @@ -104,9 +106,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_http_health_check.rb b/libraries/google_compute_http_health_check.rb index b38386ce6..5cb0a2a9e 100644 --- a/libraries/google_compute_http_health_check.rb +++ b/libraries/google_compute_http_health_check.rb @@ -72,9 +72,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_http_health_checks.rb b/libraries/google_compute_http_health_checks.rb index a92141eb8..af4d4c07a 100644 --- a/libraries/google_compute_http_health_checks.rb +++ b/libraries/google_compute_http_health_checks.rb @@ -96,9 +96,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_https_health_check.rb b/libraries/google_compute_https_health_check.rb index f9a9e44d1..6c64c5632 100644 --- a/libraries/google_compute_https_health_check.rb +++ b/libraries/google_compute_https_health_check.rb @@ -72,9 +72,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_https_health_checks.rb b/libraries/google_compute_https_health_checks.rb index f9d33e5cf..fc67ec3dc 100644 --- a/libraries/google_compute_https_health_checks.rb +++ b/libraries/google_compute_https_health_checks.rb @@ -96,9 +96,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_image.rb b/libraries/google_compute_image.rb index fe8983ae7..313eac7fe 100644 --- a/libraries/google_compute_image.rb +++ b/libraries/google_compute_image.rb @@ -44,6 +44,8 @@ class ComputeImage < GcpResourceBase attr_reader :source_disk attr_reader :source_disk_encryption_key attr_reader :source_disk_id + attr_reader :source_image + attr_reader :source_snapshot attr_reader :source_type attr_reader :self_link attr_reader :status @@ -76,6 +78,8 @@ def parse @source_disk = @fetched['sourceDisk'] @source_disk_encryption_key = GoogleInSpec::Compute::Property::ImageSourceDiskEncryptionKey.new(@fetched['sourceDiskEncryptionKey'], to_s) @source_disk_id = @fetched['sourceDiskId'] + @source_image = @fetched['sourceImage'] + @source_snapshot = @fetched['sourceSnapshot'] @source_type = @fetched['sourceType'] @self_link = @fetched['selfLink'] @status = @fetched['status'] @@ -98,9 +102,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance.rb b/libraries/google_compute_instance.rb index eea847183..bf5845ab8 100644 --- a/libraries/google_compute_instance.rb +++ b/libraries/google_compute_instance.rb @@ -233,9 +233,9 @@ def has_disks_encrypted_with_csek? def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance_group.rb b/libraries/google_compute_instance_group.rb index 1559996dc..7789c9bb0 100644 --- a/libraries/google_compute_instance_group.rb +++ b/libraries/google_compute_instance_group.rb @@ -88,9 +88,9 @@ def find_named_ports(key = :name) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance_group_manager.rb b/libraries/google_compute_instance_group_manager.rb index 5624341ad..a72bad8e4 100644 --- a/libraries/google_compute_instance_group_manager.rb +++ b/libraries/google_compute_instance_group_manager.rb @@ -78,9 +78,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance_group_managers.rb b/libraries/google_compute_instance_group_managers.rb index 9f629754e..d9fb3f7b4 100644 --- a/libraries/google_compute_instance_group_managers.rb +++ b/libraries/google_compute_instance_group_managers.rb @@ -100,9 +100,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance_groups.rb b/libraries/google_compute_instance_groups.rb index 49a5583a3..d3001a336 100644 --- a/libraries/google_compute_instance_groups.rb +++ b/libraries/google_compute_instance_groups.rb @@ -92,9 +92,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance_template.rb b/libraries/google_compute_instance_template.rb index a4524ab20..f5ca9fb1f 100644 --- a/libraries/google_compute_instance_template.rb +++ b/libraries/google_compute_instance_template.rb @@ -67,9 +67,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instance_templates.rb b/libraries/google_compute_instance_templates.rb index b7f54f037..51ecc34a8 100644 --- a/libraries/google_compute_instance_templates.rb +++ b/libraries/google_compute_instance_templates.rb @@ -84,9 +84,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_instances.rb b/libraries/google_compute_instances.rb index f09959734..ba3ed529c 100644 --- a/libraries/google_compute_instances.rb +++ b/libraries/google_compute_instances.rb @@ -113,9 +113,9 @@ def transformers def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_network.rb b/libraries/google_compute_network.rb index 5f10b9229..2e3b4272d 100644 --- a/libraries/google_compute_network.rb +++ b/libraries/google_compute_network.rb @@ -14,6 +14,7 @@ # # ---------------------------------------------------------------------------- require 'gcp_backend' +require 'google/compute/property/network_peerings' require 'google/compute/property/network_routing_config' # A provider to manage Compute Engine resources. @@ -31,6 +32,7 @@ class ComputeNetwork < GcpResourceBase attr_reader :auto_create_subnetworks attr_reader :creation_timestamp attr_reader :routing_config + attr_reader :peerings def initialize(params) super(params.merge({ use_http_transport: true })) @@ -48,6 +50,7 @@ def parse @auto_create_subnetworks = @fetched['autoCreateSubnetworks'] @creation_timestamp = parse_time_string(@fetched['creationTimestamp']) @routing_config = GoogleInSpec::Compute::Property::NetworkRoutingConfig.new(@fetched['routingConfig'], to_s) + @peerings = GoogleInSpec::Compute::Property::NetworkPeeringsArray.parse(@fetched['peerings'], to_s) end # Handles parsing RFC3339 time string @@ -80,9 +83,9 @@ def creation_timestamp_date def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_network_endpoint_group.rb b/libraries/google_compute_network_endpoint_group.rb index d2bb29e13..b68e8a9ed 100644 --- a/libraries/google_compute_network_endpoint_group.rb +++ b/libraries/google_compute_network_endpoint_group.rb @@ -63,9 +63,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_network_endpoint_groups.rb b/libraries/google_compute_network_endpoint_groups.rb index 6b253f46b..a367b49ad 100644 --- a/libraries/google_compute_network_endpoint_groups.rb +++ b/libraries/google_compute_network_endpoint_groups.rb @@ -87,9 +87,9 @@ def transformers def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_networks.rb b/libraries/google_compute_networks.rb index 6deddb727..59f33cc5a 100644 --- a/libraries/google_compute_networks.rb +++ b/libraries/google_compute_networks.rb @@ -31,6 +31,7 @@ class ComputeNetworks < GcpResourceBase filter_table_config.add(:auto_create_subnetworks, field: :auto_create_subnetworks) filter_table_config.add(:creation_timestamps, field: :creation_timestamp) filter_table_config.add(:routing_configs, field: :routing_config) + filter_table_config.add(:peerings, field: :peerings) filter_table_config.connect(self, :table) @@ -78,6 +79,7 @@ def transformers 'autoCreateSubnetworks' => ->(obj) { return :auto_create_subnetworks, obj['autoCreateSubnetworks'] }, 'creationTimestamp' => ->(obj) { return :creation_timestamp, parse_time_string(obj['creationTimestamp']) }, 'routingConfig' => ->(obj) { return :routing_config, GoogleInSpec::Compute::Property::NetworkRoutingConfig.new(obj['routingConfig'], to_s) }, + 'peerings' => ->(obj) { return :peerings, GoogleInSpec::Compute::Property::NetworkPeeringsArray.parse(obj['peerings'], to_s) }, } end @@ -90,9 +92,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_node_group.rb b/libraries/google_compute_node_group.rb index c04f5d5d0..eb6b385c6 100644 --- a/libraries/google_compute_node_group.rb +++ b/libraries/google_compute_node_group.rb @@ -65,9 +65,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_node_groups.rb b/libraries/google_compute_node_groups.rb index 4ac298e78..6a5020496 100644 --- a/libraries/google_compute_node_groups.rb +++ b/libraries/google_compute_node_groups.rb @@ -88,9 +88,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_node_template.rb b/libraries/google_compute_node_template.rb index 6fcc4fab8..0c23ad476 100644 --- a/libraries/google_compute_node_template.rb +++ b/libraries/google_compute_node_template.rb @@ -70,9 +70,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_node_templates.rb b/libraries/google_compute_node_templates.rb index 2b0015cf8..7d693f895 100644 --- a/libraries/google_compute_node_templates.rb +++ b/libraries/google_compute_node_templates.rb @@ -92,9 +92,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_project_info.rb b/libraries/google_compute_project_info.rb index b1206d5e3..52916e51f 100644 --- a/libraries/google_compute_project_info.rb +++ b/libraries/google_compute_project_info.rb @@ -76,9 +76,9 @@ def has_enabled_oslogin? def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_region.rb b/libraries/google_compute_region.rb index 5828ea44c..7992aeb5f 100644 --- a/libraries/google_compute_region.rb +++ b/libraries/google_compute_region.rb @@ -80,9 +80,9 @@ def up? def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_region_backend_service.rb b/libraries/google_compute_region_backend_service.rb index 401a7b239..e5954cf70 100644 --- a/libraries/google_compute_region_backend_service.rb +++ b/libraries/google_compute_region_backend_service.rb @@ -106,9 +106,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_region_backend_services.rb b/libraries/google_compute_region_backend_services.rb index d19f5a273..175eb4742 100644 --- a/libraries/google_compute_region_backend_services.rb +++ b/libraries/google_compute_region_backend_services.rb @@ -118,9 +118,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_region_instance_group_manager.rb b/libraries/google_compute_region_instance_group_manager.rb index acda280d7..65192b0be 100644 --- a/libraries/google_compute_region_instance_group_manager.rb +++ b/libraries/google_compute_region_instance_group_manager.rb @@ -99,9 +99,9 @@ def find_named_ports(key = :name) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_region_instance_group_managers.rb b/libraries/google_compute_region_instance_group_managers.rb index 13b3ba38b..c52d4da7d 100644 --- a/libraries/google_compute_region_instance_group_managers.rb +++ b/libraries/google_compute_region_instance_group_managers.rb @@ -100,9 +100,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_regions.rb b/libraries/google_compute_regions.rb index ef3d5b986..38c1e0714 100644 --- a/libraries/google_compute_regions.rb +++ b/libraries/google_compute_regions.rb @@ -90,9 +90,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_route.rb b/libraries/google_compute_route.rb index 4432b64cb..b70d7ce9e 100644 --- a/libraries/google_compute_route.rb +++ b/libraries/google_compute_route.rb @@ -69,9 +69,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_router.rb b/libraries/google_compute_router.rb index 1736b6de0..533731211 100644 --- a/libraries/google_compute_router.rb +++ b/libraries/google_compute_router.rb @@ -66,9 +66,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_router_nat.rb b/libraries/google_compute_router_nat.rb index 1a53fd180..7b32dfbe3 100644 --- a/libraries/google_compute_router_nat.rb +++ b/libraries/google_compute_router_nat.rb @@ -88,9 +88,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_router_nats.rb b/libraries/google_compute_router_nats.rb index 9be17b109..eaad94c04 100644 --- a/libraries/google_compute_router_nats.rb +++ b/libraries/google_compute_router_nats.rb @@ -97,9 +97,9 @@ def transformers def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_routers.rb b/libraries/google_compute_routers.rb index c2acaf8c0..e7ce0add6 100644 --- a/libraries/google_compute_routers.rb +++ b/libraries/google_compute_routers.rb @@ -88,9 +88,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_routes.rb b/libraries/google_compute_routes.rb index 8faa53d22..40b6ae122 100644 --- a/libraries/google_compute_routes.rb +++ b/libraries/google_compute_routes.rb @@ -93,9 +93,9 @@ def transformers def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_security_policies.rb b/libraries/google_compute_security_policies.rb index c24fdcc49..0081cc59d 100644 --- a/libraries/google_compute_security_policies.rb +++ b/libraries/google_compute_security_policies.rb @@ -75,9 +75,9 @@ def transformers def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_security_policy.rb b/libraries/google_compute_security_policy.rb index 410222928..4e3a78f14 100644 --- a/libraries/google_compute_security_policy.rb +++ b/libraries/google_compute_security_policy.rb @@ -52,9 +52,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_snapshot.rb b/libraries/google_compute_snapshot.rb index 9f53bd829..fa94b37c6 100644 --- a/libraries/google_compute_snapshot.rb +++ b/libraries/google_compute_snapshot.rb @@ -30,6 +30,7 @@ class ComputeSnapshot < GcpResourceBase attr_reader :name attr_reader :description attr_reader :storage_bytes + attr_reader :storage_locations attr_reader :licenses attr_reader :labels attr_reader :label_fingerprint @@ -52,6 +53,7 @@ def parse @name = @fetched['name'] @description = @fetched['description'] @storage_bytes = @fetched['storageBytes'] + @storage_locations = @fetched['storageLocations'] @licenses = @fetched['licenses'] @labels = @fetched['labels'] @label_fingerprint = @fetched['labelFingerprint'] @@ -78,9 +80,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_snapshots.rb b/libraries/google_compute_snapshots.rb index 009524a8f..0a986c8fc 100644 --- a/libraries/google_compute_snapshots.rb +++ b/libraries/google_compute_snapshots.rb @@ -29,6 +29,7 @@ class ComputeSnapshots < GcpResourceBase filter_table_config.add(:names, field: :name) filter_table_config.add(:descriptions, field: :description) filter_table_config.add(:storage_bytes, field: :storage_bytes) + filter_table_config.add(:storage_locations, field: :storage_locations) filter_table_config.add(:licenses, field: :licenses) filter_table_config.add(:labels, field: :labels) filter_table_config.add(:label_fingerprints, field: :label_fingerprint) @@ -81,6 +82,7 @@ def transformers 'name' => ->(obj) { return :name, obj['name'] }, 'description' => ->(obj) { return :description, obj['description'] }, 'storageBytes' => ->(obj) { return :storage_bytes, obj['storageBytes'] }, + 'storageLocations' => ->(obj) { return :storage_locations, obj['storageLocations'] }, 'licenses' => ->(obj) { return :licenses, obj['licenses'] }, 'labels' => ->(obj) { return :labels, obj['labels'] }, 'labelFingerprint' => ->(obj) { return :label_fingerprint, obj['labelFingerprint'] }, @@ -100,9 +102,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_ssl_certificate.rb b/libraries/google_compute_ssl_certificate.rb index ef9835d06..72314a94f 100644 --- a/libraries/google_compute_ssl_certificate.rb +++ b/libraries/google_compute_ssl_certificate.rb @@ -62,9 +62,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_ssl_certificates.rb b/libraries/google_compute_ssl_certificates.rb index 3d4483b46..2215d85d7 100644 --- a/libraries/google_compute_ssl_certificates.rb +++ b/libraries/google_compute_ssl_certificates.rb @@ -86,9 +86,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_ssl_policies.rb b/libraries/google_compute_ssl_policies.rb index a4f317c10..a0636c69d 100644 --- a/libraries/google_compute_ssl_policies.rb +++ b/libraries/google_compute_ssl_policies.rb @@ -94,9 +94,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_ssl_policy.rb b/libraries/google_compute_ssl_policy.rb index 0b9f7529e..9853521fb 100644 --- a/libraries/google_compute_ssl_policy.rb +++ b/libraries/google_compute_ssl_policy.rb @@ -71,9 +71,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_subnetwork.rb b/libraries/google_compute_subnetwork.rb index 68166f5b3..95c145e26 100644 --- a/libraries/google_compute_subnetwork.rb +++ b/libraries/google_compute_subnetwork.rb @@ -82,9 +82,9 @@ def creation_timestamp_date def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_subnetwork_iam_binding.rb b/libraries/google_compute_subnetwork_iam_binding.rb index 889e6ceb9..2f5af0873 100644 --- a/libraries/google_compute_subnetwork_iam_binding.rb +++ b/libraries/google_compute_subnetwork_iam_binding.rb @@ -75,7 +75,7 @@ def to_s private def product_url - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' end def resource_base_url diff --git a/libraries/google_compute_subnetwork_iam_policy.rb b/libraries/google_compute_subnetwork_iam_policy.rb index 0cc5215dd..de6d1b120 100644 --- a/libraries/google_compute_subnetwork_iam_policy.rb +++ b/libraries/google_compute_subnetwork_iam_policy.rb @@ -58,7 +58,7 @@ def count private def product_url - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' end def resource_base_url diff --git a/libraries/google_compute_subnetworks.rb b/libraries/google_compute_subnetworks.rb index 96145dbbf..c04df6746 100644 --- a/libraries/google_compute_subnetworks.rb +++ b/libraries/google_compute_subnetworks.rb @@ -100,9 +100,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_http_proxies.rb b/libraries/google_compute_target_http_proxies.rb index dfb09ffe4..f7230aaba 100644 --- a/libraries/google_compute_target_http_proxies.rb +++ b/libraries/google_compute_target_http_proxies.rb @@ -84,9 +84,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_http_proxy.rb b/libraries/google_compute_target_http_proxy.rb index d7c19c653..97f7db906 100644 --- a/libraries/google_compute_target_http_proxy.rb +++ b/libraries/google_compute_target_http_proxy.rb @@ -60,9 +60,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_https_proxies.rb b/libraries/google_compute_target_https_proxies.rb index 1afd3b1eb..ce020873a 100644 --- a/libraries/google_compute_target_https_proxies.rb +++ b/libraries/google_compute_target_https_proxies.rb @@ -90,9 +90,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_https_proxy.rb b/libraries/google_compute_target_https_proxy.rb index 4cee9c7f5..043d77a16 100644 --- a/libraries/google_compute_target_https_proxy.rb +++ b/libraries/google_compute_target_https_proxy.rb @@ -66,9 +66,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_pool.rb b/libraries/google_compute_target_pool.rb index fb8e6e55b..6717be0a9 100644 --- a/libraries/google_compute_target_pool.rb +++ b/libraries/google_compute_target_pool.rb @@ -76,9 +76,9 @@ def has_target_instance?(name, zone) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_pools.rb b/libraries/google_compute_target_pools.rb index 04e5815f5..48870753e 100644 --- a/libraries/google_compute_target_pools.rb +++ b/libraries/google_compute_target_pools.rb @@ -94,9 +94,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_tcp_proxies.rb b/libraries/google_compute_target_tcp_proxies.rb index 04131284a..2fc8a8754 100644 --- a/libraries/google_compute_target_tcp_proxies.rb +++ b/libraries/google_compute_target_tcp_proxies.rb @@ -86,9 +86,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_target_tcp_proxy.rb b/libraries/google_compute_target_tcp_proxy.rb index 5ba337185..6ffce7326 100644 --- a/libraries/google_compute_target_tcp_proxy.rb +++ b/libraries/google_compute_target_tcp_proxy.rb @@ -62,9 +62,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_url_map.rb b/libraries/google_compute_url_map.rb index 4b31b34dd..b866c8fcf 100644 --- a/libraries/google_compute_url_map.rb +++ b/libraries/google_compute_url_map.rb @@ -93,9 +93,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_url_maps.rb b/libraries/google_compute_url_maps.rb index 3427a0d8d..693daaba5 100644 --- a/libraries/google_compute_url_maps.rb +++ b/libraries/google_compute_url_maps.rb @@ -98,9 +98,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_vpn_tunnel.rb b/libraries/google_compute_vpn_tunnel.rb index 0716bb6c2..e008c6015 100644 --- a/libraries/google_compute_vpn_tunnel.rb +++ b/libraries/google_compute_vpn_tunnel.rb @@ -90,9 +90,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_vpn_tunnels.rb b/libraries/google_compute_vpn_tunnels.rb index 7ab2c50cc..bebe82670 100644 --- a/libraries/google_compute_vpn_tunnels.rb +++ b/libraries/google_compute_vpn_tunnels.rb @@ -114,9 +114,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_zone.rb b/libraries/google_compute_zone.rb index eb2d0ab03..4b6200fb2 100644 --- a/libraries/google_compute_zone.rb +++ b/libraries/google_compute_zone.rb @@ -76,9 +76,9 @@ def up? def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_compute_zones.rb b/libraries/google_compute_zones.rb index d91e9642f..724cb6429 100644 --- a/libraries/google_compute_zones.rb +++ b/libraries/google_compute_zones.rb @@ -90,9 +90,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/compute/beta/' + 'https://compute.googleapis.com/compute/beta/' else - 'https://www.googleapis.com/compute/v1/' + 'https://compute.googleapis.com/compute/v1/' end end diff --git a/libraries/google_container_cluster.rb b/libraries/google_container_cluster.rb index cfbefb668..338954139 100644 --- a/libraries/google_container_cluster.rb +++ b/libraries/google_container_cluster.rb @@ -31,11 +31,12 @@ require 'google/container/property/cluster_network_policy' require 'google/container/property/cluster_node_config' require 'google/container/property/cluster_node_config_accelerators' +require 'google/container/property/cluster_node_config_shielded_instance_config' require 'google/container/property/cluster_node_config_taints' require 'google/container/property/cluster_node_pools' require 'google/container/property/cluster_pod_security_policy_config' require 'google/container/property/cluster_private_cluster_config' -require 'google/container/property/cluster_release_channel' +require 'google/container/property/cluster_shielded_nodes' # A provider to manage Google Kubernetes Engine resources. class ContainerCluster < GcpResourceBase @@ -58,6 +59,7 @@ class ContainerCluster < GcpResourceBase attr_reader :tpu_ipv4_cidr_block attr_reader :addons_config attr_reader :subnetwork + attr_reader :datapath_provider attr_reader :locations attr_reader :resource_labels attr_reader :label_fingerprint @@ -81,7 +83,7 @@ class ContainerCluster < GcpResourceBase attr_reader :node_pools attr_reader :pod_security_policy_config attr_reader :binary_authorization - attr_reader :release_channel + attr_reader :shielded_nodes attr_reader :location def initialize(params) @@ -106,6 +108,7 @@ def parse @tpu_ipv4_cidr_block = @fetched['tpuIpv4CidrBlock'] @addons_config = GoogleInSpec::Container::Property::ClusterAddonsConfig.new(@fetched['addonsConfig'], to_s) @subnetwork = @fetched['subnetwork'] + @datapath_provider = @fetched['datapathProvider'] @locations = @fetched['locations'] @resource_labels = @fetched['resourceLabels'] @label_fingerprint = @fetched['labelFingerprint'] @@ -129,7 +132,7 @@ def parse @node_pools = GoogleInSpec::Container::Property::ClusterNodePoolsArray.parse(@fetched['nodePools'], to_s) @pod_security_policy_config = GoogleInSpec::Container::Property::ClusterPodSecurityPolicyConfig.new(@fetched['podSecurityPolicyConfig'], to_s) @binary_authorization = GoogleInSpec::Container::Property::ClusterBinaryAuthorization.new(@fetched['binaryAuthorization'], to_s) - @release_channel = GoogleInSpec::Container::Property::ClusterReleaseChannel.new(@fetched['releaseChannel'], to_s) + @shielded_nodes = GoogleInSpec::Container::Property::ClusterShieldedNodes.new(@fetched['shieldedNodes'], to_s) @location = @fetched['location'] end diff --git a/libraries/google_container_clusters.rb b/libraries/google_container_clusters.rb index 9fe527c24..c419950ea 100644 --- a/libraries/google_container_clusters.rb +++ b/libraries/google_container_clusters.rb @@ -37,6 +37,7 @@ class ContainerClusters < GcpResourceBase filter_table_config.add(:tpu_ipv4_cidr_blocks, field: :tpu_ipv4_cidr_block) filter_table_config.add(:addons_configs, field: :addons_config) filter_table_config.add(:subnetworks, field: :subnetwork) + filter_table_config.add(:datapath_providers, field: :datapath_provider) filter_table_config.add(:locations, field: :locations) filter_table_config.add(:resource_labels, field: :resource_labels) filter_table_config.add(:label_fingerprints, field: :label_fingerprint) @@ -60,7 +61,7 @@ class ContainerClusters < GcpResourceBase filter_table_config.add(:node_pools, field: :node_pools) filter_table_config.add(:pod_security_policy_configs, field: :pod_security_policy_config) filter_table_config.add(:binary_authorizations, field: :binary_authorization) - filter_table_config.add(:release_channels, field: :release_channel) + filter_table_config.add(:shielded_nodes, field: :shielded_nodes) filter_table_config.add(:locations, field: :location) filter_table_config.connect(self, :table) @@ -115,6 +116,7 @@ def transformers 'tpuIpv4CidrBlock' => ->(obj) { return :tpu_ipv4_cidr_block, obj['tpuIpv4CidrBlock'] }, 'addonsConfig' => ->(obj) { return :addons_config, GoogleInSpec::Container::Property::ClusterAddonsConfig.new(obj['addonsConfig'], to_s) }, 'subnetwork' => ->(obj) { return :subnetwork, obj['subnetwork'] }, + 'datapathProvider' => ->(obj) { return :datapath_provider, obj['datapathProvider'] }, 'locations' => ->(obj) { return :locations, obj['locations'] }, 'resourceLabels' => ->(obj) { return :resource_labels, obj['resourceLabels'] }, 'labelFingerprint' => ->(obj) { return :label_fingerprint, obj['labelFingerprint'] }, @@ -138,7 +140,7 @@ def transformers 'nodePools' => ->(obj) { return :node_pools, GoogleInSpec::Container::Property::ClusterNodePoolsArray.parse(obj['nodePools'], to_s) }, 'podSecurityPolicyConfig' => ->(obj) { return :pod_security_policy_config, GoogleInSpec::Container::Property::ClusterPodSecurityPolicyConfig.new(obj['podSecurityPolicyConfig'], to_s) }, 'binaryAuthorization' => ->(obj) { return :binary_authorization, GoogleInSpec::Container::Property::ClusterBinaryAuthorization.new(obj['binaryAuthorization'], to_s) }, - 'releaseChannel' => ->(obj) { return :release_channel, GoogleInSpec::Container::Property::ClusterReleaseChannel.new(obj['releaseChannel'], to_s) }, + 'shieldedNodes' => ->(obj) { return :shielded_nodes, GoogleInSpec::Container::Property::ClusterShieldedNodes.new(obj['shieldedNodes'], to_s) }, 'location' => ->(obj) { return :location, obj['location'] }, } end diff --git a/libraries/google_container_node_pool.rb b/libraries/google_container_node_pool.rb index 79fd2c0ee..aa060b693 100644 --- a/libraries/google_container_node_pool.rb +++ b/libraries/google_container_node_pool.rb @@ -18,6 +18,7 @@ require 'google/container/property/nodepool_conditions' require 'google/container/property/nodepool_config' require 'google/container/property/nodepool_config_accelerators' +require 'google/container/property/nodepool_config_shielded_instance_config' require 'google/container/property/nodepool_config_taints' require 'google/container/property/nodepool_management' require 'google/container/property/nodepool_management_upgrade_options' diff --git a/libraries/google_dns_managed_zone.rb b/libraries/google_dns_managed_zone.rb index c0b7fe6f0..b85653ee9 100644 --- a/libraries/google_dns_managed_zone.rb +++ b/libraries/google_dns_managed_zone.rb @@ -104,9 +104,9 @@ def zone_signing_key_algorithm def product_url(beta = false) if beta - 'https://www.googleapis.com/dns/v1beta2/' + 'https://dns.googleapis.com/dns/v1beta2/' else - 'https://www.googleapis.com/dns/v1/' + 'https://dns.googleapis.com/dns/v1/' end end diff --git a/libraries/google_dns_managed_zones.rb b/libraries/google_dns_managed_zones.rb index 50cfae44f..c806d6630 100644 --- a/libraries/google_dns_managed_zones.rb +++ b/libraries/google_dns_managed_zones.rb @@ -106,9 +106,9 @@ def parse_time_string(time_string) def product_url(beta = false) if beta - 'https://www.googleapis.com/dns/v1beta2/' + 'https://dns.googleapis.com/dns/v1beta2/' else - 'https://www.googleapis.com/dns/v1/' + 'https://dns.googleapis.com/dns/v1/' end end diff --git a/libraries/google_dns_resource_record_set.rb b/libraries/google_dns_resource_record_set.rb index 2a3a29a28..35ae2ce6b 100644 --- a/libraries/google_dns_resource_record_set.rb +++ b/libraries/google_dns_resource_record_set.rb @@ -68,9 +68,9 @@ def to_s def product_url(beta = false) if beta - 'https://www.googleapis.com/dns/v1beta2/' + 'https://dns.googleapis.com/dns/v1beta2/' else - 'https://www.googleapis.com/dns/v1/' + 'https://dns.googleapis.com/dns/v1/' end end diff --git a/libraries/google_dns_resource_record_sets.rb b/libraries/google_dns_resource_record_sets.rb index 4f8b68d01..0df4c5914 100644 --- a/libraries/google_dns_resource_record_sets.rb +++ b/libraries/google_dns_resource_record_sets.rb @@ -79,9 +79,9 @@ def transformers def product_url(beta = false) if beta - 'https://www.googleapis.com/dns/v1beta2/' + 'https://dns.googleapis.com/dns/v1beta2/' else - 'https://www.googleapis.com/dns/v1/' + 'https://dns.googleapis.com/dns/v1/' end end diff --git a/libraries/google_filestore_instance.rb b/libraries/google_filestore_instance.rb index 56a1fe632..ab1cc923f 100644 --- a/libraries/google_filestore_instance.rb +++ b/libraries/google_filestore_instance.rb @@ -68,8 +68,12 @@ def to_s private - def product_url(_ = nil) - 'https://file.googleapis.com/v1/' + def product_url(beta = false) + if beta + 'https://file.googleapis.com/v1beta1/' + else + 'https://file.googleapis.com/v1/' + end end def resource_base_url diff --git a/libraries/google_filestore_instances.rb b/libraries/google_filestore_instances.rb index ae596f3e6..5bf42616f 100644 --- a/libraries/google_filestore_instances.rb +++ b/libraries/google_filestore_instances.rb @@ -90,8 +90,12 @@ def parse_time_string(time_string) private - def product_url(_ = nil) - 'https://file.googleapis.com/v1/' + def product_url(beta = false) + if beta + 'https://file.googleapis.com/v1beta1/' + else + 'https://file.googleapis.com/v1/' + end end def resource_base_url diff --git a/libraries/google_memcache_instance.rb b/libraries/google_memcache_instance.rb index e9f2942a2..a84035a3a 100644 --- a/libraries/google_memcache_instance.rb +++ b/libraries/google_memcache_instance.rb @@ -14,8 +14,9 @@ # # ---------------------------------------------------------------------------- require 'gcp_backend' -require 'google/memcache/property/instance_memcache_parameters' +require 'google/memcache/property/instance_memcache_nodes' require 'google/memcache/property/instance_node_config' +require 'google/memcache/property/instance_parameters' # A provider to manage Memcache resources. class MemcacheInstance < GcpResourceBase @@ -26,13 +27,17 @@ class MemcacheInstance < GcpResourceBase attr_reader :params attr_reader :name attr_reader :display_name + attr_reader :memcache_nodes attr_reader :create_time + attr_reader :discovery_endpoint attr_reader :labels + attr_reader :memcache_full_version attr_reader :zones attr_reader :authorized_network attr_reader :node_count + attr_reader :memcache_version attr_reader :node_config - attr_reader :memcache_parameters + attr_reader :parameters attr_reader :region def initialize(params) @@ -45,13 +50,17 @@ def initialize(params) def parse @name = @fetched['name'] @display_name = @fetched['displayName'] + @memcache_nodes = GoogleInSpec::Memcache::Property::InstanceMemcacheNodesArray.parse(@fetched['memcacheNodes'], to_s) @create_time = parse_time_string(@fetched['createTime']) + @discovery_endpoint = parse_time_string(@fetched['discoveryEndpoint']) @labels = @fetched['labels'] + @memcache_full_version = @fetched['memcacheFullVersion'] @zones = @fetched['zones'] @authorized_network = @fetched['authorizedNetwork'] @node_count = @fetched['nodeCount'] + @memcache_version = @fetched['memcacheVersion'] @node_config = GoogleInSpec::Memcache::Property::InstanceNodeConfig.new(@fetched['nodeConfig'], to_s) - @memcache_parameters = GoogleInSpec::Memcache::Property::InstanceMemcacheParameters.new(@fetched['memcacheParameters'], to_s) + @parameters = GoogleInSpec::Memcache::Property::InstanceParameters.new(@fetched['parameters'], to_s) @region = @fetched['region'] end diff --git a/libraries/google_memcache_instances.rb b/libraries/google_memcache_instances.rb index 2b9873b31..a7368d339 100644 --- a/libraries/google_memcache_instances.rb +++ b/libraries/google_memcache_instances.rb @@ -25,13 +25,17 @@ class MemcacheInstances < GcpResourceBase filter_table_config.add(:names, field: :name) filter_table_config.add(:display_names, field: :display_name) + filter_table_config.add(:memcache_nodes, field: :memcache_nodes) filter_table_config.add(:create_times, field: :create_time) + filter_table_config.add(:discovery_endpoints, field: :discovery_endpoint) filter_table_config.add(:labels, field: :labels) + filter_table_config.add(:memcache_full_versions, field: :memcache_full_version) filter_table_config.add(:zones, field: :zones) filter_table_config.add(:authorized_networks, field: :authorized_network) filter_table_config.add(:node_counts, field: :node_count) + filter_table_config.add(:memcache_versions, field: :memcache_version) filter_table_config.add(:node_configs, field: :node_config) - filter_table_config.add(:memcache_parameters, field: :memcache_parameters) + filter_table_config.add(:parameters, field: :parameters) filter_table_config.add(:regions, field: :region) filter_table_config.connect(self, :table) @@ -74,13 +78,17 @@ def transformers { 'name' => ->(obj) { return :name, obj['name'] }, 'displayName' => ->(obj) { return :display_name, obj['displayName'] }, + 'memcacheNodes' => ->(obj) { return :memcache_nodes, GoogleInSpec::Memcache::Property::InstanceMemcacheNodesArray.parse(obj['memcacheNodes'], to_s) }, 'createTime' => ->(obj) { return :create_time, parse_time_string(obj['createTime']) }, + 'discoveryEndpoint' => ->(obj) { return :discovery_endpoint, parse_time_string(obj['discoveryEndpoint']) }, 'labels' => ->(obj) { return :labels, obj['labels'] }, + 'memcacheFullVersion' => ->(obj) { return :memcache_full_version, obj['memcacheFullVersion'] }, 'zones' => ->(obj) { return :zones, obj['zones'] }, 'authorizedNetwork' => ->(obj) { return :authorized_network, obj['authorizedNetwork'] }, 'nodeCount' => ->(obj) { return :node_count, obj['nodeCount'] }, + 'memcacheVersion' => ->(obj) { return :memcache_version, obj['memcacheVersion'] }, 'nodeConfig' => ->(obj) { return :node_config, GoogleInSpec::Memcache::Property::InstanceNodeConfig.new(obj['nodeConfig'], to_s) }, - 'memcacheParameters' => ->(obj) { return :memcache_parameters, GoogleInSpec::Memcache::Property::InstanceMemcacheParameters.new(obj['memcacheParameters'], to_s) }, + 'parameters' => ->(obj) { return :parameters, GoogleInSpec::Memcache::Property::InstanceParameters.new(obj['parameters'], to_s) }, 'region' => ->(obj) { return :region, obj['region'] }, } end diff --git a/libraries/google_pubsub_subscription.rb b/libraries/google_pubsub_subscription.rb index 1b3147395..e9bc2a783 100644 --- a/libraries/google_pubsub_subscription.rb +++ b/libraries/google_pubsub_subscription.rb @@ -18,6 +18,7 @@ require 'google/pubsub/property/subscription_expiration_policy' require 'google/pubsub/property/subscription_push_config' require 'google/pubsub/property/subscription_push_config_oidc_token' +require 'google/pubsub/property/subscription_retry_policy' # A provider to manage Cloud Pub/Sub resources. class PubsubSubscription < GcpResourceBase @@ -34,7 +35,10 @@ class PubsubSubscription < GcpResourceBase attr_reader :message_retention_duration attr_reader :retain_acked_messages attr_reader :expiration_policy + attr_reader :filter attr_reader :dead_letter_policy + attr_reader :retry_policy + attr_reader :enable_message_ordering def initialize(params) super(params.merge({ use_http_transport: true })) @@ -52,7 +56,10 @@ def parse @message_retention_duration = @fetched['messageRetentionDuration'] @retain_acked_messages = @fetched['retainAckedMessages'] @expiration_policy = GoogleInSpec::Pubsub::Property::SubscriptionExpirationPolicy.new(@fetched['expirationPolicy'], to_s) + @filter = @fetched['filter'] @dead_letter_policy = GoogleInSpec::Pubsub::Property::SubscriptionDeadLetterPolicy.new(@fetched['deadLetterPolicy'], to_s) + @retry_policy = GoogleInSpec::Pubsub::Property::SubscriptionRetryPolicy.new(@fetched['retryPolicy'], to_s) + @enable_message_ordering = @fetched['enableMessageOrdering'] end def exists? diff --git a/libraries/google_pubsub_subscriptions.rb b/libraries/google_pubsub_subscriptions.rb index e3800e0c0..c8b08152d 100644 --- a/libraries/google_pubsub_subscriptions.rb +++ b/libraries/google_pubsub_subscriptions.rb @@ -31,7 +31,10 @@ class PubsubSubscriptions < GcpResourceBase filter_table_config.add(:message_retention_durations, field: :message_retention_duration) filter_table_config.add(:retain_acked_messages, field: :retain_acked_messages) filter_table_config.add(:expiration_policies, field: :expiration_policy) + filter_table_config.add(:filters, field: :filter) filter_table_config.add(:dead_letter_policies, field: :dead_letter_policy) + filter_table_config.add(:retry_policies, field: :retry_policy) + filter_table_config.add(:enable_message_orderings, field: :enable_message_ordering) filter_table_config.connect(self, :table) @@ -79,7 +82,10 @@ def transformers 'messageRetentionDuration' => ->(obj) { return :message_retention_duration, obj['messageRetentionDuration'] }, 'retainAckedMessages' => ->(obj) { return :retain_acked_messages, obj['retainAckedMessages'] }, 'expirationPolicy' => ->(obj) { return :expiration_policy, GoogleInSpec::Pubsub::Property::SubscriptionExpirationPolicy.new(obj['expirationPolicy'], to_s) }, + 'filter' => ->(obj) { return :filter, obj['filter'] }, 'deadLetterPolicy' => ->(obj) { return :dead_letter_policy, GoogleInSpec::Pubsub::Property::SubscriptionDeadLetterPolicy.new(obj['deadLetterPolicy'], to_s) }, + 'retryPolicy' => ->(obj) { return :retry_policy, GoogleInSpec::Pubsub::Property::SubscriptionRetryPolicy.new(obj['retryPolicy'], to_s) }, + 'enableMessageOrdering' => ->(obj) { return :enable_message_ordering, obj['enableMessageOrdering'] }, } end diff --git a/libraries/google_redis_instance.rb b/libraries/google_redis_instance.rb index 2bb862d9c..ac94741b4 100644 --- a/libraries/google_redis_instance.rb +++ b/libraries/google_redis_instance.rb @@ -35,6 +35,7 @@ class RedisInstance < GcpResourceBase attr_reader :name attr_reader :memory_size_gb attr_reader :port + attr_reader :persistence_iam_identity attr_reader :redis_version attr_reader :reserved_ip_range attr_reader :tier @@ -61,6 +62,7 @@ def parse @name = @fetched['name'] @memory_size_gb = @fetched['memorySizeGb'] @port = @fetched['port'] + @persistence_iam_identity = @fetched['persistenceIamIdentity'] @redis_version = @fetched['redisVersion'] @reserved_ip_range = @fetched['reservedIpRange'] @tier = @fetched['tier'] diff --git a/libraries/google_redis_instances.rb b/libraries/google_redis_instances.rb index 1711042c6..ebdfeb045 100644 --- a/libraries/google_redis_instances.rb +++ b/libraries/google_redis_instances.rb @@ -36,6 +36,7 @@ class RedisInstances < GcpResourceBase filter_table_config.add(:names, field: :name) filter_table_config.add(:memory_size_gbs, field: :memory_size_gb) filter_table_config.add(:ports, field: :port) + filter_table_config.add(:persistence_iam_identities, field: :persistence_iam_identity) filter_table_config.add(:redis_versions, field: :redis_version) filter_table_config.add(:reserved_ip_ranges, field: :reserved_ip_range) filter_table_config.add(:tiers, field: :tier) @@ -92,6 +93,7 @@ def transformers 'name' => ->(obj) { return :name, obj['name'] }, 'memorySizeGb' => ->(obj) { return :memory_size_gb, obj['memorySizeGb'] }, 'port' => ->(obj) { return :port, obj['port'] }, + 'persistenceIamIdentity' => ->(obj) { return :persistence_iam_identity, obj['persistenceIamIdentity'] }, 'redisVersion' => ->(obj) { return :redis_version, obj['redisVersion'] }, 'reservedIpRange' => ->(obj) { return :reserved_ip_range, obj['reservedIpRange'] }, 'tier' => ->(obj) { return :tier, obj['tier'] }, diff --git a/libraries/google_storage_bucket.rb b/libraries/google_storage_bucket.rb index f9cc771af..bbfc94be1 100644 --- a/libraries/google_storage_bucket.rb +++ b/libraries/google_storage_bucket.rb @@ -104,7 +104,7 @@ def to_s private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_bucket_acl.rb b/libraries/google_storage_bucket_acl.rb index a86007b1d..a1830df55 100644 --- a/libraries/google_storage_bucket_acl.rb +++ b/libraries/google_storage_bucket_acl.rb @@ -63,7 +63,7 @@ def bucket private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_bucket_iam_binding.rb b/libraries/google_storage_bucket_iam_binding.rb index 908f96c98..df447d5aa 100644 --- a/libraries/google_storage_bucket_iam_binding.rb +++ b/libraries/google_storage_bucket_iam_binding.rb @@ -75,7 +75,7 @@ def to_s private def product_url - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_bucket_iam_policy.rb b/libraries/google_storage_bucket_iam_policy.rb index 9322ee8ca..3116f40e3 100644 --- a/libraries/google_storage_bucket_iam_policy.rb +++ b/libraries/google_storage_bucket_iam_policy.rb @@ -58,7 +58,7 @@ def count private def product_url - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_bucket_object.rb b/libraries/google_storage_bucket_object.rb index 9a6522463..798d9eae1 100644 --- a/libraries/google_storage_bucket_object.rb +++ b/libraries/google_storage_bucket_object.rb @@ -89,7 +89,7 @@ def size private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_bucket_objects.rb b/libraries/google_storage_bucket_objects.rb index 8975c9c42..34fa26659 100644 --- a/libraries/google_storage_bucket_objects.rb +++ b/libraries/google_storage_bucket_objects.rb @@ -107,7 +107,7 @@ def parse_time_string(time_string) private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_buckets.rb b/libraries/google_storage_buckets.rb index e2c4cd9f7..5eb9dc9ad 100644 --- a/libraries/google_storage_buckets.rb +++ b/libraries/google_storage_buckets.rb @@ -117,7 +117,7 @@ def parse_time_string(time_string) private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_default_object_acl.rb b/libraries/google_storage_default_object_acl.rb index 0521a8cd0..f36adf0b5 100644 --- a/libraries/google_storage_default_object_acl.rb +++ b/libraries/google_storage_default_object_acl.rb @@ -67,7 +67,7 @@ def bucket private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url diff --git a/libraries/google_storage_object_acl.rb b/libraries/google_storage_object_acl.rb index 7d09ca8c2..86414fdf1 100644 --- a/libraries/google_storage_object_acl.rb +++ b/libraries/google_storage_object_acl.rb @@ -67,7 +67,7 @@ def bucket private def product_url(_ = nil) - 'https://www.googleapis.com/storage/v1/' + 'https://storage.googleapis.com/storage/v1/' end def resource_base_url