summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThe Magician <magic-modules@google.com>2019-07-19 11:33:47 -0700
committerMatt Clay <matt@mystile.com>2019-07-19 11:33:47 -0700
commit5c6aa9b9e8b0d3faeba1e4443d63c231d7617a01 (patch)
treee59771d179aeb07e280754f072346b9b59889d3c
parentc5e26ab4daf1a01372bd7b41f7c5d7064ea0257a (diff)
downloadansible-5c6aa9b9e8b0d3faeba1e4443d63c231d7617a01.tar.gz
Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59171)
* Bug fixes for GCP modules * ignore syntax
-rw-r--r--lib/ansible/modules/cloud/google/gcp_bigquery_dataset.py19
-rw-r--r--lib/ansible/modules/cloud/google/gcp_bigquery_table.py55
-rw-r--r--lib/ansible/modules/cloud/google/gcp_bigquery_table_facts.py1
-rw-r--r--lib/ansible/modules/cloud/google/gcp_cloudbuild_trigger.py30
-rw-r--r--lib/ansible/modules/cloud/google/gcp_cloudscheduler_job.py29
-rw-r--r--lib/ansible/modules/cloud/google/gcp_cloudscheduler_job_facts.py1
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_address.py7
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_address_facts.py1
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_backend_bucket.py5
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_backend_service.py32
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_disk.py19
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_disk_facts.py1
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_firewall.py17
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule.py15
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule_facts.py1
-rw-r--r--lib/ansible/modules/cloud/google/gcp_compute_global_address.py8
-rw-r--r--test/sanity/validate-modules/ignore.txt2
17 files changed, 241 insertions, 2 deletions
diff --git a/lib/ansible/modules/cloud/google/gcp_bigquery_dataset.py b/lib/ansible/modules/cloud/google/gcp_bigquery_dataset.py
index 82105bde1f..5afa3fd62b 100644
--- a/lib/ansible/modules/cloud/google/gcp_bigquery_dataset.py
+++ b/lib/ansible/modules/cloud/google/gcp_bigquery_dataset.py
@@ -51,35 +51,42 @@ options:
description:
- Dataset name.
required: false
+ type: str
access:
description:
- Access controls on the bucket.
required: false
+ type: list
suboptions:
domain:
description:
- A domain to grant access to. Any users signed in with the domain specified
will be granted the specified access .
required: false
+ type: str
group_by_email:
description:
- An email address of a Google Group to grant access to.
required: false
+ type: str
role:
description:
- Describes the rights granted to the user specified by the other member of
the access object .
- 'Some valid choices include: "READER", "WRITER", "OWNER"'
required: false
+ type: str
special_group:
description:
- A special group to grant access to.
required: false
+ type: str
user_by_email:
description:
- 'An email address of a user to grant access to. For example: fred@example.com
.'
required: false
+ type: str
view:
description:
- A view from a different dataset to grant access to. Queries executed against
@@ -87,24 +94,29 @@ options:
is not required when this field is set. If that view is updated by any user,
access to the view needs to be granted again via an update operation.
required: false
+ type: dict
suboptions:
dataset_id:
description:
- The ID of the dataset containing this table.
required: true
+ type: str
project_id:
description:
- The ID of the project containing this table.
required: true
+ type: str
table_id:
description:
- The ID of the table. The ID must contain only letters (a-z, A-Z), numbers
(0-9), or underscores. The maximum length is 1,024 characters.
required: true
+ type: str
dataset_reference:
description:
- A reference that identifies the dataset.
required: true
+ type: dict
suboptions:
dataset_id:
description:
@@ -112,33 +124,40 @@ options:
only letters (a-z, A-Z), numbers (0-9), or underscores. The maximum length
is 1,024 characters.
required: true
+ type: str
project_id:
description:
- The ID of the project containing this dataset.
required: false
+ type: str
default_table_expiration_ms:
description:
- The default lifetime of all tables in the dataset, in milliseconds .
required: false
+ type: int
description:
description:
- A user-friendly description of the dataset.
required: false
+ type: str
friendly_name:
description:
- A descriptive name for the dataset.
required: false
+ type: str
labels:
description:
- The labels associated with this dataset. You can use these to organize and group
your datasets .
required: false
+ type: dict
location:
description:
- The geographic location where the dataset should reside. Possible values include
EU and US. The default value is US.
required: false
default: US
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_bigquery_table.py b/lib/ansible/modules/cloud/google/gcp_bigquery_table.py
index fcd6d2fa61..98f401c389 100644
--- a/lib/ansible/modules/cloud/google/gcp_bigquery_table.py
+++ b/lib/ansible/modules/cloud/google/gcp_bigquery_table.py
@@ -51,40 +51,49 @@ options:
description:
- Reference describing the ID of this table.
required: false
+ type: dict
suboptions:
dataset_id:
description:
- The ID of the dataset containing this table.
required: false
+ type: str
project_id:
description:
- The ID of the project containing this table.
required: false
+ type: str
table_id:
description:
- The ID of the the table.
required: false
+ type: str
description:
description:
- A user-friendly description of the dataset.
required: false
+ type: str
friendly_name:
description:
- A descriptive name for this table.
required: false
+ type: str
labels:
description:
- The labels associated with this dataset. You can use these to organize and group
your datasets .
required: false
+ type: dict
name:
description:
- Name of the table.
required: false
+ type: str
view:
description:
- The view definition.
required: false
+ type: dict
suboptions:
use_legacy_sql:
description:
@@ -95,6 +104,7 @@ options:
description:
- Describes user-defined function resources used in the query.
required: false
+ type: list
suboptions:
inline_code:
description:
@@ -102,61 +112,74 @@ options:
Providing a inline code resource is equivalent to providing a URI for
a file containing the same code.
required: false
+ type: str
resource_uri:
description:
- A code resource to load from a Google Cloud Storage URI (gs://bucket/path).
required: false
+ type: str
time_partitioning:
description:
- If specified, configures time-based partitioning for this table.
required: false
+ type: dict
suboptions:
expiration_ms:
description:
- Number of milliseconds for which to keep the storage for a partition.
required: false
+ type: int
type:
description:
- The only type supported is DAY, which will generate one partition per day.
- 'Some valid choices include: "DAY"'
required: false
+ type: str
schema:
description:
- Describes the schema of this table.
required: false
+ type: dict
suboptions:
fields:
description:
- Describes the fields in a table.
required: false
+ type: list
suboptions:
description:
description:
- The field description. The maximum length is 1,024 characters.
required: false
+ type: str
fields:
description:
- Describes the nested schema fields if the type property is set to RECORD.
required: false
+ type: list
mode:
description:
- The field mode.
- 'Some valid choices include: "NULLABLE", "REQUIRED", "REPEATED"'
required: false
+ type: str
name:
description:
- The field name.
required: false
+ type: str
type:
description:
- The field data type.
- 'Some valid choices include: "STRING", "BYTES", "INTEGER", "FLOAT",
"TIMESTAMP", "DATE", "TIME", "DATETIME", "RECORD"'
required: false
+ type: str
encryption_configuration:
description:
- Custom encryption configuration.
required: false
+ type: dict
suboptions:
kms_key_name:
description:
@@ -164,17 +187,20 @@ options:
BigQuery table. The BigQuery Service Account associated with your project
requires access to this encryption key.
required: false
+ type: str
expiration_time:
description:
- The time when this table expires, in milliseconds since the epoch. If not present,
the table will persist indefinitely.
required: false
+ type: int
external_data_configuration:
description:
- Describes the data format, location, and other properties of a table stored
outside of BigQuery. By defining these properties, the data source can then
be queried as if it were a standard BigQuery table.
required: false
+ type: dict
suboptions:
autodetect:
description:
@@ -187,6 +213,7 @@ options:
- The compression type of the data source.
- 'Some valid choices include: "GZIP", "NONE"'
required: false
+ type: str
ignore_unknown_values:
description:
- Indicates if BigQuery should allow extra values that are not represented
@@ -199,12 +226,14 @@ options:
data .
required: false
default: '0'
+ type: int
source_format:
description:
- The data format.
- 'Some valid choices include: "CSV", "GOOGLE_SHEETS", "NEWLINE_DELIMITED_JSON",
"AVRO", "DATASTORE_BACKUP", "BIGTABLE"'
required: false
+ type: str
source_uris:
description:
- The fully-qualified URIs that point to your data in Google Cloud.
@@ -216,44 +245,53 @@ options:
backups, exactly one URI can be specified. Also, the ''*'' wildcard character
is not allowed.'
required: false
+ type: list
schema:
description:
- The schema for the data. Schema is required for CSV and JSON formats.
required: false
+ type: dict
suboptions:
fields:
description:
- Describes the fields in a table.
required: false
+ type: list
suboptions:
description:
description:
- The field description.
required: false
+ type: str
fields:
description:
- Describes the nested schema fields if the type property is set to
RECORD .
required: false
+ type: list
mode:
description:
- Field mode.
- 'Some valid choices include: "NULLABLE", "REQUIRED", "REPEATED"'
required: false
+ type: str
name:
description:
- Field name.
required: false
+ type: str
type:
description:
- Field data type.
- 'Some valid choices include: "STRING", "BYTES", "INTEGER", "FLOAT",
"TIMESTAMP", "DATE", "TIME", "DATETIME", "RECORD"'
required: false
+ type: str
google_sheets_options:
description:
- Additional options if sourceFormat is set to GOOGLE_SHEETS.
required: false
+ type: dict
suboptions:
skip_leading_rows:
description:
@@ -261,10 +299,12 @@ options:
when reading the data.
required: false
default: '0'
+ type: int
csv_options:
description:
- Additional properties to set if sourceFormat is set to CSV.
required: false
+ type: dict
suboptions:
allow_jagged_rows:
description:
@@ -283,24 +323,29 @@ options:
- The character encoding of the data.
- 'Some valid choices include: "UTF-8", "ISO-8859-1"'
required: false
+ type: str
field_delimiter:
description:
- The separator for fields in a CSV file.
required: false
+ type: str
quote:
description:
- The value that is used to quote data sections in a CSV file.
required: false
+ type: str
skip_leading_rows:
description:
- The number of rows at the top of a CSV file that BigQuery will skip
when reading the data.
required: false
default: '0'
+ type: int
bigtable_options:
description:
- Additional options if sourceFormat is set to BIGTABLE.
required: false
+ type: dict
suboptions:
ignore_unspecified_column_families:
description:
@@ -319,24 +364,28 @@ options:
- List of column families to expose in the table schema along with their
types.
required: false
+ type: list
suboptions:
columns:
description:
- Lists of columns that should be exposed as individual fields as
opposed to a list of (column name, value) pairs.
required: false
+ type: list
suboptions:
encoding:
description:
- The encoding of the values when the type is not STRING.
- 'Some valid choices include: "TEXT", "BINARY"'
required: false
+ type: str
field_name:
description:
- If the qualifier is not a valid BigQuery field identifier, a
valid identifier must be provided as the column field name and
is used as field name in queries.
required: false
+ type: str
only_read_latest:
description:
- If this is set, only the latest version of value in this column
@@ -347,21 +396,25 @@ options:
description:
- Qualifier of the column.
required: true
+ type: str
type:
description:
- The type to convert the value in cells of this column.
- 'Some valid choices include: "BYTES", "STRING", "INTEGER", "FLOAT",
"BOOLEAN"'
required: false
+ type: str
encoding:
description:
- The encoding of the values when the type is not STRING.
- 'Some valid choices include: "TEXT", "BINARY"'
required: false
+ type: str
family_id:
description:
- Identifier of the column family.
required: false
+ type: str
only_read_latest:
description:
- If this is set only the latest version of value are exposed for
@@ -374,10 +427,12 @@ options:
- 'Some valid choices include: "BYTES", "STRING", "INTEGER", "FLOAT",
"BOOLEAN"'
required: false
+ type: str
dataset:
description:
- Name of the dataset.
required: false
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_bigquery_table_facts.py b/lib/ansible/modules/cloud/google/gcp_bigquery_table_facts.py
index 08a8d20c3e..eeaaa59943 100644
--- a/lib/ansible/modules/cloud/google/gcp_bigquery_table_facts.py
+++ b/lib/ansible/modules/cloud/google/gcp_bigquery_table_facts.py
@@ -44,6 +44,7 @@ options:
description:
- Name of the dataset.
required: false
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_cloudbuild_trigger.py b/lib/ansible/modules/cloud/google/gcp_cloudbuild_trigger.py
index 2b3d821e8f..1b98d21744 100644
--- a/lib/ansible/modules/cloud/google/gcp_cloudbuild_trigger.py
+++ b/lib/ansible/modules/cloud/google/gcp_cloudbuild_trigger.py
@@ -51,10 +51,12 @@ options:
description:
- The unique identifier for the trigger.
required: false
+ type: str
description:
description:
- Human-readable description of the trigger.
required: false
+ type: str
disabled:
description:
- Whether the trigger is disabled or not. If true, the trigger will never result
@@ -65,11 +67,13 @@ options:
description:
- Substitutions data for Build resource.
required: false
+ type: dict
filename:
description:
- Path, from the source root, to a file whose contents is used for the template.
Either a filename or build template must be provided.
required: false
+ type: str
ignored_files:
description:
- ignoredFiles and includedFiles are file glob matches using http://godoc/pkg/path/filepath#Match
@@ -80,6 +84,7 @@ options:
ignored_file globs. If the change has no files that are outside of the ignoredFiles
globs, then we do not trigger a build.
required: false
+ type: list
included_files:
description:
- ignoredFiles and includedFiles are file glob matches using http://godoc/pkg/path/filepath#Match
@@ -90,6 +95,7 @@ options:
is not empty, then we make sure that at least one of those files matches a includedFiles
glob. If not, then we do not trigger a build.
required: false
+ type: list
trigger_template:
description:
- Template describing the types of source changes to trigger a build.
@@ -97,48 +103,57 @@ options:
Any branch or tag change that matches that regular expression will trigger a
build.
required: false
+ type: dict
suboptions:
project_id:
description:
- ID of the project that owns the Cloud Source Repository. If omitted, the
project ID requesting the build is assumed.
required: false
+ type: str
repo_name:
description:
- Name of the Cloud Source Repository. If omitted, the name "default" is assumed.
required: false
default: default
+ type: str
dir:
description:
- 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.
required: false
+ type: str
branch_name:
description:
- Name of the branch to build. Exactly one a of branch name, tag, or commit
SHA must be provided.
required: false
+ type: str
tag_name:
description:
- Name of the tag to build. Exactly one of a branch name, tag, or commit SHA
must be provided.
required: false
+ type: str
commit_sha:
description:
- Explicit commit SHA to build. Exactly one of a branch name, tag, or commit
SHA must be provided.
required: false
+ type: str
build:
description:
- Contents of the build template. Either a filename or build template must be
provided.
required: false
+ type: dict
suboptions:
tags:
description:
- Tags for annotation of a Build. These are not docker tags.
required: false
+ type: list
images:
description:
- A list of images to be pushed upon the successful completion of all build
@@ -148,10 +163,12 @@ options:
results field.
- If any of the images fail to be pushed, the build status is marked FAILURE.
required: false
+ type: list
steps:
description:
- The operations to be performed on the workspace.
required: false
+ type: list
suboptions:
name:
description:
@@ -169,6 +186,7 @@ options:
the host's Docker daemon's cache and is available to use as the name
for a later build step.
required: false
+ type: str
args:
description:
- A list of arguments that will be presented to the step when it is started.
@@ -177,6 +195,7 @@ options:
define an entrypoint, the first element in args is used as the entrypoint,
and the remainder will be used as arguments.
required: false
+ type: list
env:
description:
- A list of environment variable definitions to be used when running a
@@ -184,16 +203,19 @@ options:
- The elements are of the form "KEY=VALUE" for the environment variable
"KEY" being given the value "VALUE".
required: false
+ type: list
id:
description:
- Unique identifier for this build step, used in `wait_for` to reference
this build step as a dependency.
required: false
+ type: str
entrypoint:
description:
- Entrypoint to be used instead of the build step image's default entrypoint.
- If unset, the image's default entrypoint is used .
required: false
+ type: str
dir:
description:
- Working directory to use when running this step's container.
@@ -206,22 +228,26 @@ options:
which specifies an absolute path, the `RepoSource` `dir` is ignored
for the step's execution.
required: false
+ type: str
secret_env:
description:
- A list of environment variables which are encrypted using a Cloud Key
Management Service crypto key. These values must be specified in the
build's `Secret`.
required: false
+ type: list
timeout:
description:
- Time limit for executing this build step. If not defined, the step has
no time limit and will be allowed to continue to run until either it
completes or the build itself times out.
required: false
+ type: str
timing:
description:
- Output only. Stores timing information for executing this build step.
required: false
+ type: str
volumes:
description:
- List of volumes to mount into the build step.
@@ -231,6 +257,7 @@ options:
- Using a named volume in only one step is not valid as it is indicative
of a build request with an incorrect configuration.
required: false
+ type: list
suboptions:
name:
description:
@@ -239,12 +266,14 @@ options:
for Docker volumes. Each named volume must be used by at least two
build steps.
required: false
+ type: str
path:
description:
- 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.
required: false
+ type: str
wait_for:
description:
- The ID(s) of the step(s) that this build step depends on.
@@ -253,6 +282,7 @@ options:
will start when all previous build steps in the `Build.Steps` list have
completed successfully.
required: false
+ type: list
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/cloud-build/docs/api/reference/rest/)'
diff --git a/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job.py b/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job.py
index 5720b7d527..cf353cfceb 100644
--- a/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job.py
+++ b/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job.py
@@ -55,27 +55,32 @@ options:
description:
- The name of the job.
required: true
+ type: str
description:
description:
- A human-readable description for the job. This string must not contain more
than 500 characters.
required: false
+ type: str
schedule:
description:
- Describes the schedule on which the job will be executed.
required: false
+ type: str
time_zone:
description:
- 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.
required: false
default: Etc/UTC
+ type: str
retry_config:
description:
- 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 .
required: false
+ type: dict
suboptions:
retry_count:
description:
@@ -83,6 +88,7 @@ options:
exponential backoff procedure described by maxDoublings.
- Values greater than 5 and negative values are not allowed.
required: false
+ type: int
max_retry_duration:
description:
- The time limit for retrying a failed job, measured from time when an execution
@@ -90,16 +96,19 @@ options:
until both limits are reached.
- A duration in seconds with up to nine fractional digits, terminated by 's'.
required: false
+ type: str
min_backoff_duration:
description:
- The minimum amount of time to wait before retrying a job after it fails.
- A duration in seconds with up to nine fractional digits, terminated by 's'.
required: false
+ type: str
max_backoff_duration:
description:
- The maximum amount of time to wait before retrying a job after it fails.
- A duration in seconds with up to nine fractional digits, terminated by 's'.
required: false
+ type: str
max_doublings:
description:
- The time between retries will double maxDoublings times.
@@ -107,11 +116,13 @@ options:
times, then increases linearly, and finally retries retries at intervals
of maxBackoffDuration up to retryCount times.
required: false
+ type: int
pubsub_target:
description:
- Pub/Sub target If the job providers a Pub/Sub target the cron will publish a
message to the provided topic .
required: false
+ type: dict
suboptions:
topic_name:
description:
@@ -119,31 +130,37 @@ options:
when a job is delivered. The topic name must be in the same format as required
by PubSub's PublishRequest.name, for example projects/PROJECT_ID/topics/TOPIC_ID.
required: true
+ type: str
data:
description:
- The message payload for PubsubMessage.
- Pubsub message must contain either non-empty data, or at least one attribute.
required: false
+ type: str
attributes:
description:
- Attributes for PubsubMessage.
- Pubsub message must contain either non-empty data, or at least one attribute.
required: false
+ type: dict
app_engine_http_target:
description:
- App Engine HTTP target.
- If the job providers a App Engine HTTP target the cron will send a request to
the service instance .
required: false
+ type: dict
suboptions:
http_method:
description:
- Which HTTP method to use for the request.
required: false
+ type: str
app_engine_routing:
description:
- App Engine Routing setting for the job.
required: false
+ type: dict
suboptions:
service:
description:
@@ -151,64 +168,76 @@ options:
- By default, the job is sent to the service which is the default service
when the job is attempted.
required: false
+ type: str
version:
description:
- App version.
- By default, the job is sent to the version which is the default version
when the job is attempted.
required: false
+ type: str
instance:
description:
- App instance.
- By default, the job is sent to an instance which is available when the
job is attempted.
required: false
+ type: str
relative_uri:
description:
- The relative URI.
required: true
+ type: str
body:
description:
- HTTP request body. A request body is allowed only if the HTTP method is
POST or PUT. It will result in invalid argument error to set a body on a
job with an incompatible HttpMethod.
required: false
+ type: str
headers:
description:
- HTTP request headers.
- This map contains the header field names and values. Headers can be set
when the job is created.
required: false
+ type: dict
http_target:
description:
- HTTP target.
- If the job providers a http_target the cron will send a request to the targeted
url .
required: false
+ type: dict
suboptions:
uri:
description:
- The full URI path that the request will be sent to.
required: true
+ type: str
http_method:
description:
- Which HTTP method to use for the request.
required: false
+ type: str
body:
description:
- HTTP request body. A request body is allowed only if the HTTP method is
POST, PUT, or PATCH. It is an error to set body on a job with an incompatible
HttpMethod.
required: false
+ type: str
headers:
description:
- This map contains the header field names and values. Repeated headers are
not supported, but a header value can contain commas.
required: false
+ type: dict
region:
description:
- Region where the scheduler job resides .
required: true
+ type: str
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/scheduler/docs/reference/rest/)'
diff --git a/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job_facts.py b/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job_facts.py
index b536dabee6..51052c8de9 100644
--- a/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job_facts.py
+++ b/lib/ansible/modules/cloud/google/gcp_cloudscheduler_job_facts.py
@@ -44,6 +44,7 @@ options:
description:
- Region where the scheduler job resides .
required: true
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_address.py b/lib/ansible/modules/cloud/google/gcp_compute_address.py
index 5c0af5ec4b..ecce02e54e 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_address.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_address.py
@@ -62,6 +62,7 @@ options:
An address may only be specified for INTERNAL address types. The IP address
must be inside the specified subnetwork, if any.
required: false
+ type: str
address_type:
description:
- The type of address to reserve, either INTERNAL or EXTERNAL.
@@ -69,11 +70,13 @@ options:
- 'Some valid choices include: "INTERNAL", "EXTERNAL"'
required: false
default: EXTERNAL
+ type: str
version_added: 2.7
description:
description:
- An optional description of this resource.
required: false
+ type: str
name:
description:
- Name of the resource. The name must be 1-63 characters long, and comply with
@@ -82,6 +85,7 @@ options:
be a lowercase letter, and all following characters must be a dash, lowercase
letter, or digit, except the last character, which cannot be a dash.
required: true
+ type: str
network_tier:
description:
- 'The networking tier used for configuring this address. This field can take
@@ -89,6 +93,7 @@ options:
is assumed to be PREMIUM.'
- 'Some valid choices include: "PREMIUM", "STANDARD"'
required: false
+ type: str
version_added: 2.8
subnetwork:
description:
@@ -102,12 +107,14 @@ options:
to a gcp_compute_subnetwork task and then set this subnetwork field to "{{ name-of-resource
}}"'
required: false
+ type: dict
version_added: 2.7
region:
description:
- URL of the region where the regional address resides.
- This field is not applicable to global addresses.
required: true
+ type: str
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/compute/docs/reference/beta/addresses)'
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_address_facts.py b/lib/ansible/modules/cloud/google/gcp_compute_address_facts.py
index 94567c3c06..b825b3265d 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_address_facts.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_address_facts.py
@@ -50,6 +50,7 @@ options:
- URL of the region where the regional address resides.
- This field is not applicable to global addresses.
required: true
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_backend_bucket.py b/lib/ansible/modules/cloud/google/gcp_compute_backend_bucket.py
index 2658387d8c..1745ff6ad2 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_backend_bucket.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_backend_bucket.py
@@ -55,10 +55,12 @@ options:
description:
- Cloud Storage bucket name.
required: true
+ type: str
cdn_policy:
description:
- Cloud CDN configuration for this Backend Bucket.
required: false
+ type: dict
version_added: 2.8
suboptions:
signed_url_cache_max_age_sec:
@@ -72,11 +74,13 @@ options:
The actual headers served in responses will not be altered.'
required: false
default: '3600'
+ type: int
description:
description:
- An optional textual description of the resource; provided by the client when
the resource is created.
required: false
+ type: str
enable_cdn:
description:
- If true, enable Cloud CDN for this BackendBucket.
@@ -91,6 +95,7 @@ options:
characters must be a dash, lowercase letter, or digit, except the last character,
which cannot be a dash.
required: true
+ type: str
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/backendBuckets)'
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_backend_service.py b/lib/ansible/modules/cloud/google/gcp_compute_backend_service.py
index 135fafd32d..4708253f95 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_backend_service.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_backend_service.py
@@ -58,10 +58,12 @@ options:
session (or equivalent). The maximum allowed value for TTL is one day.
- When the load balancing scheme is INTERNAL, this field is not used.
required: false
+ type: int
backends:
description:
- The set of backends that serve this BackendService.
required: false
+ type: list
suboptions:
balancing_mode:
description:
@@ -71,6 +73,7 @@ options:
- 'Some valid choices include: "UTILIZATION", "RATE", "CONNECTION"'
required: false
default: UTILIZATION
+ type: str
capacity_scaler:
description:
- A multiplier applied to the group's maximum servicing capacity (based on
@@ -81,11 +84,13 @@ options:
[0.0,1.0].
required: false
default: '1.0'
+ type: str
description:
description:
- An optional description of this resource.
- Provide this property when you create the resource.
required: false
+ type: str
group:
description:
- The fully-qualified URL of an Instance Group or Network Endpoint Group resource.
@@ -101,6 +106,7 @@ options:
- Note that you must specify an Instance Group or Network Endpoint Group resource
using the fully-qualified URL, rather than a partial URL.
required: false
+ type: str
max_connections:
description:
- The max number of simultaneous connections for the group. Can be used with
@@ -108,6 +114,7 @@ options:
- For CONNECTION mode, either maxConnections or one of maxConnectionsPerInstance
or maxConnectionsPerEndpoint, as appropriate for group type, must be set.
required: false
+ type: int
max_connections_per_instance:
description:
- The max number of simultaneous connections that a single backend instance
@@ -116,6 +123,7 @@ options:
- For CONNECTION mode, either maxConnections or maxConnectionsPerInstance
must be set.
required: false
+ type: int
max_connections_per_endpoint:
description:
- The max number of simultaneous connections that a single backend network
@@ -124,6 +132,7 @@ options:
- For CONNECTION mode, either maxConnections or maxConnectionsPerEndpoint
must be set.
required: false
+ type: int
version_added: 2.9
max_rate:
description:
@@ -132,6 +141,7 @@ options:
if RATE mode. For RATE mode, either maxRate or one of maxRatePerInstance
or maxRatePerEndpoint, as appropriate for group type, must be set.
required: false
+ type: int
max_rate_per_instance:
description:
- The max requests per second (RPS) that a single backend instance can handle.
@@ -139,6 +149,7 @@ options:
balancing mode. For RATE mode, either maxRate or maxRatePerInstance must
be set.
required: false
+ type: str
max_rate_per_endpoint:
description:
- The max requests per second (RPS) that a single backend network endpoint
@@ -146,6 +157,7 @@ options:
used in either balancing mode. For RATE mode, either maxRate or maxRatePerEndpoint
must be set.
required: false
+ type: str
version_added: 2.9
max_utilization:
description:
@@ -153,15 +165,18 @@ options:
target for the group. The default is 0.8. Valid range is [0.0, 1.0].
required: false
default: '0.8'
+ type: str
cdn_policy:
description:
- Cloud CDN configuration for this BackendService.
required: false
+ type: dict
suboptions:
cache_key_policy:
description:
- The CacheKeyPolicy for this CdnPolicy.
required: false
+ type: dict
suboptions:
include_host:
description:
@@ -188,6 +203,7 @@ options:
or query_string_blacklist, not both.
- "'&' and '=' will be percent encoded and not treated as delimiters."
required: false
+ type: list
query_string_whitelist:
description:
- Names of query string parameters to include in cache keys.
@@ -195,6 +211,7 @@ options:
or query_string_blacklist, not both.
- "'&' and '=' will be percent encoded and not treated as delimiters."
required: false
+ type: list
signed_url_cache_max_age_sec:
description:
- Maximum number of seconds the response to a signed URL request will be considered
@@ -206,11 +223,13 @@ options:
The actual headers served in responses will not be altered.'
required: false
default: '3600'
+ type: int
version_added: 2.8
connection_draining:
description:
- Settings for connection draining .
required: false
+ type: dict
suboptions:
draining_timeout_sec:
description:
@@ -218,10 +237,12 @@ options:
still work to finish started).
required: false
default: '300'
+ type: int
description:
description:
- An optional description of this resource.
required: false
+ type: str
enable_cdn:
description:
- If true, enable Cloud CDN for this BackendService.
@@ -235,10 +256,12 @@ options:
- For internal load balancing, a URL to a HealthCheck resource must be specified
instead.
required: true
+ type: list
iap:
description:
- Settings for enabling Cloud Identity Aware Proxy.
required: false
+ type: dict
version_added: 2.7
suboptions:
enabled:
@@ -250,10 +273,12 @@ options:
description:
- OAuth2 Client ID for IAP .
required: true
+ type: str
oauth2_client_secret:
description:
- OAuth2 Client Secret for IAP .
required: true
+ type: str
load_balancing_scheme:
description:
- Indicates whether the backend service will be used with internal or external
@@ -263,6 +288,7 @@ options:
- 'Some valid choices include: "EXTERNAL", "INTERNAL_SELF_MANAGED"'
required: false
default: EXTERNAL
+ type: str
version_added: 2.7
name:
description:
@@ -273,11 +299,13 @@ options:
characters must be a dash, lowercase letter, or digit, except the last character,
which cannot be a dash.
required: true
+ type: str
port_name:
description:
- Name of backend port. The same name should appear in the instance groups referenced
by this service. Required when the load balancing scheme is EXTERNAL.
required: false
+ type: str
protocol:
description:
- The protocol this BackendService uses to communicate with backends.
@@ -286,10 +314,12 @@ options:
in errors if used with the GA API.'
- 'Some valid choices include: "HTTP", "HTTPS", "HTTP2", "TCP", "SSL"'
required: false
+ type: str
security_policy:
description:
- The security policy associated with this backend service.
required: false
+ type: str
version_added: 2.8
session_affinity:
description:
@@ -298,11 +328,13 @@ options:
- When the protocol is UDP, this field is not used.
- 'Some valid choices include: "NONE", "CLIENT_IP", "GENERATED_COOKIE"'
required: false
+ type: str
timeout_sec:
description:
- How many seconds to wait for the backend before considering it a failed request.
Default is 30 seconds. Valid range is [1, 86400].
required: false
+ type: int
aliases:
- timeout_seconds
extends_documentation_fragment: gcp
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_disk.py b/lib/ansible/modules/cloud/google/gcp_compute_disk.py
index dce85cf886..8fded8bf8f 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_disk.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_disk.py
@@ -62,15 +62,18 @@ options:
- An optional description of this resource. Provide this property when you create
the resource.
required: false
+ type: str
labels:
description:
- Labels to apply to this disk. A list of key->value pairs.
required: false
+ type: dict
version_added: 2.7
licenses:
description:
- Any applicable publicly visible licenses.
required: false
+ type: list
name:
description:
- Name of the resource. Provided by the client when the resource is created. The
@@ -80,6 +83,7 @@ options:
characters must be a dash, lowercase letter, or digit, except the last character,
which cannot be a dash.
required: true
+ type: str
size_gb:
description:
- Size of the persistent disk, specified in GB. You can specify this field when
@@ -89,6 +93,7 @@ options:
of sizeGb must not be less than the size of the sourceImage or the size of the
snapshot.
required: false
+ type: int
physical_block_size_bytes:
description:
- Physical block size of the persistent disk, in bytes. If not present in a request,
@@ -97,12 +102,14 @@ options:
- If an unsupported value is requested, the error message will list the supported
values for the caller's project.
required: false
+ type: int
version_added: 2.8
type:
description:
- URL of the disk type resource describing which disk type to use to create the
disk. Provide this when creating the disk.
required: false
+ type: str
version_added: 2.7
source_image:
description:
@@ -118,25 +125,30 @@ options:
image in that family. Replace the image name with family/family-name: global/images/family/my-private-family
.'
required: false
+ type: str
zone:
description:
- A reference to the zone where the disk resides.
required: true
+ type: str
source_image_encryption_key:
description:
- The customer-supplied encryption key of the source image. Required if the source
image is protected by a customer-supplied encryption key.
required: false
+ type: dict
suboptions:
raw_key:
description:
- Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
base64 to either encrypt or decrypt this resource.
required: false
+ type: str
kms_key_name:
description:
- The name of the encryption key that is stored in Google Cloud KMS.
required: false
+ type: str
disk_encryption_key:
description:
- Encrypts the disk using a customer-supplied encryption key.
@@ -148,16 +160,19 @@ options:
will be encrypted using an automatically generated key and you do not need to
provide a key to use the disk later.
required: false
+ type: dict
suboptions:
raw_key:
description:
- Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
base64 to either encrypt or decrypt this resource.
required: false
+ type: str
kms_key_name:
description:
- The name of the encryption key that is stored in Google Cloud KMS.
required: false
+ type: str
source_snapshot:
description:
- The source snapshot used to create this disk. You can provide this as a partial
@@ -168,21 +183,25 @@ options:
to a gcp_compute_snapshot task and then set this source_snapshot field to "{{
name-of-resource }}"'
required: false
+ type: dict
source_snapshot_encryption_key:
description:
- The customer-supplied encryption key of the source snapshot. Required if the
source snapshot is protected by a customer-supplied encryption key.
required: false
+ type: dict
suboptions:
raw_key:
description:
- Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
base64 to either encrypt or decrypt this resource.
required: false
+ type: str
kms_key_name:
description:
- The name of the encryption key that is stored in Google Cloud KMS.
required: false
+ type: str
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/disks)'
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_disk_facts.py b/lib/ansible/modules/cloud/google/gcp_compute_disk_facts.py
index 41e7338a88..382ce991cc 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_disk_facts.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_disk_facts.py
@@ -49,6 +49,7 @@ options:
description:
- A reference to the zone where the disk resides.
required: true
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_firewall.py b/lib/ansible/modules/cloud/google/gcp_compute_firewall.py
index 24317d03d2..d4432e0be6 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_firewall.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_firewall.py
@@ -59,6 +59,7 @@ options:
- The list of ALLOW rules specified by this firewall. Each rule specifies a protocol
and port-range tuple that describes a permitted connection.
required: false
+ type: list
suboptions:
ip_protocol:
description:
@@ -67,6 +68,7 @@ options:
well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol
number.
required: true
+ type: str
ports:
description:
- An optional list of ports to which this rule applies. This field is only
@@ -75,11 +77,13 @@ options:
port.
- 'Example inputs include: ["22"], ["80","443"], and ["12345-12349"].'
required: false
+ type: list
denied:
description:
- The list of DENY rules specified by this firewall. Each rule specifies a protocol
and port-range tuple that describes a denied connection.
required: false
+ type: list
version_added: 2.8
suboptions:
ip_protocol:
@@ -89,6 +93,7 @@ options:
well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol
number.
required: true
+ type: str
ports:
description:
- An optional list of ports to which this rule applies. This field is only
@@ -97,17 +102,20 @@ options:
port.
- 'Example inputs include: ["22"], ["80","443"], and ["12345-12349"].'
required: false
+ type: list
description:
description:
- An optional description of this resource. Provide this property when you create
the resource.
required: false
+ type: str
destination_ranges:
description:
- If destination ranges are specified, the firewall will apply only to traffic
that has destination IP address in these ranges. These ranges must be expressed
in CIDR format. Only IPv4 is supported.
required: false
+ type: list
version_added: 2.8
direction:
description:
@@ -116,6 +124,7 @@ options:
traffic, it is NOT supported to specify sourceRanges OR sourceTags.'
- 'Some valid choices include: "INGRESS", "EGRESS"'
required: false
+ type: str
version_added: 2.8
disabled:
description:
@@ -135,6 +144,7 @@ options:
characters must be a dash, lowercase letter, or digit, except the last character,
which cannot be a dash.
required: true
+ type: str
network:
description:
- 'URL of the network resource for this firewall rule. If not specified when creating
@@ -151,6 +161,7 @@ options:
required: false
default:
selfLink: global/networks/default
+ type: dict
priority:
description:
- Priority for this rule. This is an integer between 0 and 65535, both inclusive.
@@ -160,6 +171,7 @@ options:
1). DENY rules take precedence over ALLOW rules having equal priority.
required: false
default: '1000'
+ type: int
version_added: 2.8
source_ranges:
description:
@@ -171,6 +183,7 @@ options:
property. The connection does not need to match both properties for the firewall
to apply. Only IPv4 is supported.
required: false
+ type: list
source_service_accounts:
description:
- If source service accounts are specified, the firewall will apply only to traffic
@@ -183,6 +196,7 @@ options:
The connection does not need to match both properties for the firewall to apply.
sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.
required: false
+ type: list
version_added: 2.8
source_tags:
description:
@@ -195,6 +209,7 @@ options:
tag listed in the sourceTags property. The connection does not need to match
both properties for the firewall to apply.
required: false
+ type: list
target_service_accounts:
description:
- A list of service accounts indicating sets of instances located in the network
@@ -203,6 +218,7 @@ options:
If neither targetServiceAccounts nor targetTags are specified, the firewall
rule applies to all instances on the specified network.
required: false
+ type: list
version_added: 2.8
target_tags:
description:
@@ -211,6 +227,7 @@ options:
- If no targetTags are specified, the firewall rule applies to all instances on
the specified network.
required: false
+ type: list
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/firewalls)'
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule.py b/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule.py
index d0eb51d642..d9dfd3e58c 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule.py
@@ -54,6 +54,7 @@ options:
- An optional description of this resource. Provide this property when you create
the resource.
required: false
+ type: str
ip_address:
description:
- The IP address that this forwarding rule is serving on behalf of.
@@ -76,6 +77,7 @@ options:
* projects/project/regions/region/addresses/address * regions/region/addresses/address
* global/addresses/address * address .'
required: false
+ type: str
ip_protocol:
description:
- The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP,
@@ -83,6 +85,7 @@ options:
- When the load balancing scheme is INTERNAL, only TCP and UDP are valid.
- 'Some valid choices include: "TCP", "UDP", "ESP", "AH", "SCTP", "ICMP"'
required: false
+ type: str
backend_service:
description:
- A BackendService to receive the matched traffic. This is used only for INTERNAL
@@ -93,11 +96,13 @@ options:
name-of-resource` to a gcp_compute_backend_service task and then set this backend_service
field to "{{ name-of-resource }}"'
required: false
+ type: dict
ip_version:
description:
- ipVersion is not a valid field for regional forwarding rules.
- 'Some valid choices include: "IPV4", "IPV6"'
required: false
+ type: str
load_balancing_scheme:
description:
- 'This signifies what the ForwardingRule will be used for and can only take the
@@ -107,6 +112,7 @@ options:
TCP/UDP LB, SSL Proxy) .'
- 'Some valid choices include: "INTERNAL", "EXTERNAL"'
required: false
+ type: str
name:
description:
- Name of the resource; provided by the client when the resource is created. The
@@ -116,6 +122,7 @@ options:
characters must be a dash, lowercase letter, or digit, except the last character,
which cannot be a dash.
required: true
+ type: str
network:
description:
- For internal load balancing, this field identifies the network that the load
@@ -128,6 +135,7 @@ options:
to a gcp_compute_network task and then set this network field to "{{ name-of-resource
}}"'
required: false
+ type: dict
port_range:
description:
- This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy,
@@ -142,6 +150,7 @@ options:
43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * TargetVpnGateway:
500, 4500 .'
required: false
+ type: str
ports:
description:
- This field is used along with the backend_service field for internal load balancing.
@@ -150,6 +159,7 @@ options:
be forwarded to the backends configured with this forwarding rule.
- You may specify a maximum of up to 5 ports.
required: false
+ type: list
subnetwork:
description:
- The subnetwork that the load balanced IP should belong to for this Forwarding
@@ -162,6 +172,7 @@ options:
to a gcp_compute_subnetwork task and then set this subnetwork field to "{{ name-of-resource
}}"'
required: false
+ type: dict
target:
description:
- This field is only used for EXTERNAL load balancing.
@@ -174,6 +185,7 @@ options:
to a gcp_compute_target_pool task and then set this target field to "{{ name-of-resource
}}"'
required: false
+ type: dict
version_added: 2.7
all_ports:
description:
@@ -191,6 +203,7 @@ options:
is assumed to be PREMIUM.'
- 'Some valid choices include: "PREMIUM", "STANDARD"'
required: false
+ type: str
version_added: 2.8
service_label:
description:
@@ -203,12 +216,14 @@ options:
except the last character, which cannot be a dash.
- This field is only used for INTERNAL load balancing.
required: false
+ type: str
version_added: 2.8
region:
description:
- A reference to the region where the regional forwarding rule resides.
- This field is not applicable to global forwarding rules.
required: true
+ type: str
extends_documentation_fragment: gcp
notes:
- 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/forwardingRule)'
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule_facts.py b/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule_facts.py
index bb5d4fc746..15600bd57c 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule_facts.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_forwarding_rule_facts.py
@@ -50,6 +50,7 @@ options:
- A reference to the region where the regional forwarding rule resides.
- This field is not applicable to global forwarding rules.
required: true
+ type: str
extends_documentation_fragment: gcp
'''
diff --git a/lib/ansible/modules/cloud/google/gcp_compute_global_address.py b/lib/ansible/modules/cloud/google/gcp_compute_global_address.py
index c95a264a66..2f4cd859f8 100644
--- a/lib/ansible/modules/cloud/google/gcp_compute_global_address.py
+++ b/lib/ansible/modules/cloud/google/gcp_compute_global_address.py
@@ -52,11 +52,13 @@ options:
description:
- The static external IP address represented by this resource.
required: false
+ type: str
version_added: 2.8
description:
description:
- An optional description of this resource.
required: false
+ type: str
name:
description:
- Name of the resource. Provided by the client when the resource is created. The
@@ -66,18 +68,21 @@ options:
characters must be a dash, lowercase letter, or digit, except the last character,
which cannot be a dash.
required: true
+ type: str
ip_version:
description:
- The IP Version that will be used by this address. Valid options are `IPV4` or
`IPV6`. The default value is `IPV4`.
- 'Some valid choices include: "IPV4", "IPV6"'
required: false
+ type: str
prefix_length:
description:
- The prefix length of the IP range. If not present, it means the address field
is a single IP address.
- This field is not applicable to addresses with addressType=EXTERNAL.
required: false
+ type: int
version_added: 2.9
address_type:
description:
@@ -87,6 +92,7 @@ options:
- 'Some valid choices include: "EXTERNAL", "INTERNAL"'
required: false
default: EXTERNAL
+ type: str
version_added: 2.8
purpose:
description:
@@ -94,6 +100,7 @@ options:
- for peer networks This should only be set when using an Internal address.
- 'Some valid choices include: "VPC_PEERING"'
required: false
+ type: str
version_added: 2.9
network:
description:
@@ -107,6 +114,7 @@ options:
to a gcp_compute_network task and then set this network field to "{{ name-of-resource
}}"'
required: false
+ type: dict
version_added: 2.9
extends_documentation_fragment: gcp
notes:
diff --git a/test/sanity/validate-modules/ignore.txt b/test/sanity/validate-modules/ignore.txt
index 46f4966f47..86232056bd 100644
--- a/test/sanity/validate-modules/ignore.txt
+++ b/test/sanity/validate-modules/ignore.txt
@@ -648,10 +648,8 @@ lib/ansible/modules/cloud/google/_gcp_backend_service.py E326
lib/ansible/modules/cloud/google/_gcp_backend_service.py E337
lib/ansible/modules/cloud/google/_gcp_backend_service.py E338
lib/ansible/modules/cloud/google/gcp_bigquery_dataset.py E337
-lib/ansible/modules/cloud/google/gcp_bigquery_table_facts.py E337
lib/ansible/modules/cloud/google/gcp_bigquery_table.py E337
lib/ansible/modules/cloud/google/gcp_cloudbuild_trigger.py E337
-lib/ansible/modules/cloud/google/gcp_cloudscheduler_job_facts.py E337
lib/ansible/modules/cloud/google/gcp_cloudscheduler_job.py E337
lib/ansible/modules/cloud/google/gcp_compute_address_facts.py E337
lib/ansible/modules/cloud/google/gcp_compute_address.py E337