diff --git a/plugins/modules/gcp_appengine_firewall_rule.py b/plugins/modules/gcp_appengine_firewall_rule.py index 286ab55..d0f8645 100644 --- a/plugins/modules/gcp_appengine_firewall_rule.py +++ b/plugins/modules/gcp_appengine_firewall_rule.py @@ -52,16 +52,19 @@ options: description: - An optional string description of this rule. required: false + type: str source_range: description: - IP address or range, defined using CIDR notation, of requests that this rule applies to. required: true + type: str action: description: - The action to take if this rule matches. - 'Some valid choices include: "UNSPECIFIED_ACTION", "ALLOW", "DENY"' required: true + type: str priority: description: - A positive integer that defines the order of rule evaluation. @@ -70,6 +73,7 @@ options: when no previous rule matches. Only the action of this rule can be modified by the user. required: false + type: int extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.firewall.ingressRules)' diff --git a/plugins/modules/gcp_bigquery_dataset.py b/plugins/modules/gcp_bigquery_dataset.py index 82105bd..5afa3fd 100644 --- a/plugins/modules/gcp_bigquery_dataset.py +++ b/plugins/modules/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/plugins/modules/gcp_bigquery_table.py b/plugins/modules/gcp_bigquery_table.py index fcd6d2f..98f401c 100644 --- a/plugins/modules/gcp_bigquery_table.py +++ b/plugins/modules/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/plugins/modules/gcp_bigquery_table_facts.py b/plugins/modules/gcp_bigquery_table_facts.py index 08a8d20..eeaaa59 100644 --- a/plugins/modules/gcp_bigquery_table_facts.py +++ b/plugins/modules/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/plugins/modules/gcp_cloudbuild_trigger.py b/plugins/modules/gcp_cloudbuild_trigger.py index 2b3d821..1b98d21 100644 --- a/plugins/modules/gcp_cloudbuild_trigger.py +++ b/plugins/modules/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/plugins/modules/gcp_cloudscheduler_job.py b/plugins/modules/gcp_cloudscheduler_job.py index 5720b7d..cf353cf 100644 --- a/plugins/modules/gcp_cloudscheduler_job.py +++ b/plugins/modules/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/plugins/modules/gcp_cloudscheduler_job_facts.py b/plugins/modules/gcp_cloudscheduler_job_facts.py index b536dab..51052c8 100644 --- a/plugins/modules/gcp_cloudscheduler_job_facts.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_address.py b/plugins/modules/gcp_compute_address.py index 5c0af5e..ecce02e 100644 --- a/plugins/modules/gcp_compute_address.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_address_facts.py b/plugins/modules/gcp_compute_address_facts.py index 94567c3..b825b32 100644 --- a/plugins/modules/gcp_compute_address_facts.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_backend_bucket.py b/plugins/modules/gcp_compute_backend_bucket.py index 2658387..1745ff6 100644 --- a/plugins/modules/gcp_compute_backend_bucket.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_backend_service.py b/plugins/modules/gcp_compute_backend_service.py index 135fafd..4708253 100644 --- a/plugins/modules/gcp_compute_backend_service.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_disk.py b/plugins/modules/gcp_compute_disk.py index dce85cf..8fded8b 100644 --- a/plugins/modules/gcp_compute_disk.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_disk_facts.py b/plugins/modules/gcp_compute_disk_facts.py index 41e7338..382ce99 100644 --- a/plugins/modules/gcp_compute_disk_facts.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_firewall.py b/plugins/modules/gcp_compute_firewall.py index 24317d0..d4432e0 100644 --- a/plugins/modules/gcp_compute_firewall.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_forwarding_rule.py b/plugins/modules/gcp_compute_forwarding_rule.py index d0eb51d..d9dfd3e 100644 --- a/plugins/modules/gcp_compute_forwarding_rule.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_forwarding_rule_facts.py b/plugins/modules/gcp_compute_forwarding_rule_facts.py index bb5d4fc..15600bd 100644 --- a/plugins/modules/gcp_compute_forwarding_rule_facts.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_global_address.py b/plugins/modules/gcp_compute_global_address.py index c95a264..2f4cd85 100644 --- a/plugins/modules/gcp_compute_global_address.py +++ b/plugins/modules/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/plugins/modules/gcp_compute_global_forwarding_rule.py b/plugins/modules/gcp_compute_global_forwarding_rule.py index cb93e15..0fef910 100644 --- a/plugins/modules/gcp_compute_global_forwarding_rule.py +++ b/plugins/modules/gcp_compute_global_forwarding_rule.py @@ -56,6 +56,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. @@ -78,6 +79,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, @@ -85,12 +87,14 @@ options: TCP is valid. - 'Some valid choices include: "TCP", "UDP", "ESP", "AH", "SCTP", "ICMP"' required: false + type: str ip_version: description: - The IP Version that will be used by this global forwarding rule. - Valid options are IPV4 or IPV6. - 'Some valid choices include: "IPV4", "IPV6"' required: false + type: str load_balancing_scheme: description: - This signifies what the GlobalForwardingRule will be used for. @@ -101,6 +105,7 @@ options: - 'Some valid choices include: "INTERNAL_SELF_MANAGED", "EXTERNAL"' required: false default: EXTERNAL + type: str name: description: - Name of the resource; provided by the client when the resource is created. The @@ -110,6 +115,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: - This field is not used for external load balancing. @@ -122,6 +128,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, @@ -136,11 +143,13 @@ options: 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * TargetVpnGateway: 500, 4500 .' required: false + type: str target: description: - The URL of the target resource to receive the matched traffic. - The forwarded traffic must be of a type appropriate to the target object. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_health_check.py b/plugins/modules/gcp_compute_health_check.py index 7c12986..aa5d349 100644 --- a/plugins/modules/gcp_compute_health_check.py +++ b/plugins/modules/gcp_compute_health_check.py @@ -60,17 +60,20 @@ options: - How often (in seconds) to send a health check. The default value is 5 seconds. required: false default: '5' + type: int description: description: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str healthy_threshold: description: - A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2. required: false default: '2' + type: int 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 timeout_sec: description: - How long (in seconds) to wait before claiming failure. @@ -87,6 +91,7 @@ options: value than checkIntervalSec. required: false default: '5' + type: int aliases: - timeout_seconds unhealthy_threshold: @@ -95,6 +100,7 @@ options: failures. The default value is 2. required: false default: '2' + type: int type: description: - Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not @@ -102,10 +108,12 @@ options: field must be specified, which must match type field. - 'Some valid choices include: "TCP", "SSL", "HTTP", "HTTPS"' required: false + type: str http_health_check: description: - A nested object resource. required: false + type: dict suboptions: host: description: @@ -113,28 +121,33 @@ options: - If left empty (default value), the public IP on behalf of which this health check is performed will be used. required: false + type: str request_path: description: - The request path of the HTTP health check request. - The default value is /. required: false default: "/" + type: str response: description: - The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII. required: false + type: str port: description: - The TCP port number for the HTTP health check request. - The default value is 80. required: false + type: int port_name: description: - Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. required: false + type: str proxy_header: description: - Specifies the type of proxy header to append before sending data to the @@ -142,10 +155,12 @@ options: - 'Some valid choices include: "NONE", "PROXY_V1"' required: false default: NONE + type: str https_health_check: description: - A nested object resource. required: false + type: dict suboptions: host: description: @@ -153,28 +168,33 @@ options: - If left empty (default value), the public IP on behalf of which this health check is performed will be used. required: false + type: str request_path: description: - The request path of the HTTPS health check request. - The default value is /. required: false default: "/" + type: str response: description: - The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII. required: false + type: str port: description: - The TCP port number for the HTTPS health check request. - The default value is 443. required: false + type: int port_name: description: - Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. required: false + type: str proxy_header: description: - Specifies the type of proxy header to append before sending data to the @@ -182,10 +202,12 @@ options: - 'Some valid choices include: "NONE", "PROXY_V1"' required: false default: NONE + type: str tcp_health_check: description: - A nested object resource. required: false + type: dict suboptions: request: description: @@ -193,22 +215,26 @@ options: (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII. required: false + type: str response: description: - The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII. required: false + type: str port: description: - The TCP port number for the TCP health check request. - The default value is 443. required: false + type: int port_name: description: - Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. required: false + type: str proxy_header: description: - Specifies the type of proxy header to append before sending data to the @@ -216,10 +242,12 @@ options: - 'Some valid choices include: "NONE", "PROXY_V1"' required: false default: NONE + type: str ssl_health_check: description: - A nested object resource. required: false + type: dict suboptions: request: description: @@ -227,22 +255,26 @@ options: (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII. required: false + type: str response: description: - The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII. required: false + type: str port: description: - The TCP port number for the SSL health check request. - The default value is 443. required: false + type: int port_name: description: - Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. required: false + type: str proxy_header: description: - Specifies the type of proxy header to append before sending data to the @@ -250,6 +282,7 @@ options: - 'Some valid choices include: "NONE", "PROXY_V1"' required: false default: NONE + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks)' diff --git a/plugins/modules/gcp_compute_http_health_check.py b/plugins/modules/gcp_compute_http_health_check.py index 5379eeb..daf3a5a 100644 --- a/plugins/modules/gcp_compute_http_health_check.py +++ b/plugins/modules/gcp_compute_http_health_check.py @@ -53,6 +53,7 @@ options: - How often (in seconds) to send a health check. The default value is 5 seconds. required: false default: '5' + type: int aliases: - check_interval_seconds description: @@ -60,17 +61,20 @@ options: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str healthy_threshold: description: - A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2. required: false + type: int host: description: - The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used. required: false + type: str name: description: - Name of the resource. Provided by the client when the resource is created. The @@ -80,22 +84,26 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str port: description: - The TCP port number for the HTTP health check request. - The default value is 80. required: false + type: int request_path: description: - The request path of the HTTP health check request. - The default value is /. required: false + type: str timeout_sec: description: - How long (in seconds) to wait before claiming failure. - The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec. required: false + type: int aliases: - timeout_seconds unhealthy_threshold: @@ -103,6 +111,7 @@ options: - A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2. required: false + type: int extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/httpHealthChecks)' diff --git a/plugins/modules/gcp_compute_https_health_check.py b/plugins/modules/gcp_compute_https_health_check.py index 41b496a..317c7c2 100644 --- a/plugins/modules/gcp_compute_https_health_check.py +++ b/plugins/modules/gcp_compute_https_health_check.py @@ -52,22 +52,26 @@ options: description: - How often (in seconds) to send a health check. The default value is 5 seconds. required: false + type: int description: description: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str healthy_threshold: description: - A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2. required: false + type: int host: description: - The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used. required: false + type: str name: description: - Name of the resource. Provided by the client when the resource is created. The @@ -77,22 +81,26 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str port: description: - The TCP port number for the HTTPS health check request. - The default value is 80. required: false + type: int request_path: description: - The request path of the HTTPS health check request. - The default value is /. required: false + type: str timeout_sec: description: - How long (in seconds) to wait before claiming failure. - The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec. required: false + type: int aliases: - timeout_seconds unhealthy_threshold: @@ -100,6 +108,7 @@ options: - A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2. required: false + type: int extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/httpsHealthChecks)' diff --git a/plugins/modules/gcp_compute_image.py b/plugins/modules/gcp_compute_image.py index 6c012c5..60c3c2c 100644 --- a/plugins/modules/gcp_compute_image.py +++ b/plugins/modules/gcp_compute_image.py @@ -62,10 +62,12 @@ options: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str disk_size_gb: description: - Size of the image when restored onto a persistent disk (in GB). required: false + type: int family: description: - The name of the image family to which this image belongs. You can create disks @@ -73,6 +75,7 @@ options: always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035. required: false + type: str guest_os_features: description: - A list of features to enable on the guest OS. Applicable for bootable images @@ -84,6 +87,7 @@ options: WINDOWS, to indicate that this is a Windows image. - This value is purely informational and does not enable or disable any features. required: false + type: list suboptions: type: description: @@ -93,27 +97,32 @@ options: purely informational and does not enable or disable any features. - 'Some valid choices include: "VIRTIO_SCSI_MULTIQUEUE"' required: false + type: str image_encryption_key: description: - Encrypts the image using a customer-supplied encryption key. - After you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image) . 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 labels: description: - Labels to apply to this Image. required: false + type: dict version_added: 2.8 licenses: description: - Any applicable license URI. required: false + type: list name: description: - Name of the resource; provided by the client when the resource is created. The @@ -123,10 +132,12 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str raw_disk: description: - The parameters of the raw disk image. required: false + type: dict suboptions: container_type: description: @@ -135,16 +146,19 @@ options: format. Provided by the client when the disk image is created. - 'Some valid choices include: "TAR"' required: false + type: str sha1_checksum: description: - An optional SHA1 checksum of the disk image before unpackaging. - This is provided by the client when the disk image is created. required: false + type: str source: description: - The full Google Cloud Storage URL where disk storage is stored You must provide either this property or the sourceDisk property but not both. required: true + type: str source_disk: description: - The source disk to create this image based on. @@ -156,29 +170,34 @@ options: to a gcp_compute_disk task and then set this source_disk field to "{{ name-of-resource }}"' required: false + type: dict source_disk_encryption_key: description: - The customer-supplied encryption key of the source disk. Required if the source disk 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 source_disk_id: description: - 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. required: false + type: str source_type: description: - The type of the image used to create this disk. The default and only value is RAW . - 'Some valid choices include: "RAW"' required: false + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/images)' diff --git a/plugins/modules/gcp_compute_instance.py b/plugins/modules/gcp_compute_instance.py index 875ac20..6766287 100644 --- a/plugins/modules/gcp_compute_instance.py +++ b/plugins/modules/gcp_compute_instance.py @@ -61,6 +61,7 @@ options: - An array of disks that are associated with the instances that are created from this template. required: false + type: list suboptions: auto_delete: description: @@ -83,21 +84,25 @@ options: the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. required: false + type: str disk_encryption_key: description: - Encrypts or decrypts a disk using 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 rsa_encrypted_key: description: - Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource. required: false + type: str index: description: - Assigns a zero-based index to this disk, where 0 is reserved for the boot @@ -105,28 +110,33 @@ options: disk would have a unique index number. If not specified, the server will choose an appropriate value. required: false + type: int initialize_params: description: - Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. required: false + type: dict suboptions: disk_name: description: - Specifies the disk name. If not specified, the default is to use the name of the instance. required: false + type: str disk_size_gb: description: - Specifies the size of the disk in base-2 GB. required: false + type: int disk_type: description: - Reference to a disk type. - Specifies the disk type to use to create the instance. - If not specified, the default is pd-standard. required: false + type: str source_image: description: - The source image to create this disk. When creating a new instance, @@ -134,6 +144,7 @@ options: create a disk with one of the public operating system images, specify the image by its family name. required: false + type: str aliases: - image - image_family @@ -145,12 +156,14 @@ options: you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys. 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 interface: description: - Specifies the disk interface to use for attaching this disk, which is either @@ -159,12 +172,14 @@ options: to attach a persistent disk in any other format than SCSI. - 'Some valid choices include: "SCSI", "NVME"' required: false + type: str mode: description: - The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode. - 'Some valid choices include: "READ_WRITE", "READ_ONLY"' required: false + type: str source: description: - Reference to a disk. When creating a new instance, one of initializeParams.sourceImage @@ -177,44 +192,53 @@ options: name-of-resource` to a gcp_compute_disk task and then set this source field to "{{ name-of-resource }}"' required: false + type: dict type: description: - Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT. - 'Some valid choices include: "SCRATCH", "PERSISTENT"' required: false + type: str guest_accelerators: description: - List of the type and count of accelerator cards attached to the instance . required: false + type: list suboptions: accelerator_count: description: - The number of the guest accelerator cards exposed to this instance. required: false + type: int accelerator_type: description: - Full or partial URL of the accelerator type resource to expose to this instance. required: false + type: str labels: description: - Labels to apply to this instance. A list of key->value pairs. required: false + type: dict version_added: 2.9 metadata: description: - The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. required: false + type: dict machine_type: description: - A reference to a machine type which defines VM kind. required: false + type: str min_cpu_platform: description: - Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms . required: false + type: str name: description: - The name of the resource, provided by the client when initially creating the @@ -224,12 +248,14 @@ options: letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: false + type: str network_interfaces: description: - An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Only one network interface is supported per instance. required: false + type: list suboptions: access_configs: description: @@ -237,6 +263,7 @@ options: config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access. required: false + type: list suboptions: name: description: @@ -244,6 +271,7 @@ options: is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access. required: true + type: str nat_ip: description: - Reference to an address. @@ -258,16 +286,19 @@ options: name-of-resource` to a gcp_compute_address task and then set this nat_ip field to "{{ name-of-resource }}"' required: false + type: dict type: description: - The type of configuration. The default and only option is ONE_TO_ONE_NAT. - 'Some valid choices include: "ONE_TO_ONE_NAT"' required: true + type: str alias_ip_ranges: description: - An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. required: false + type: list suboptions: ip_cidr_range: description: @@ -277,12 +308,14 @@ options: This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24). required: false + type: str subnetwork_range_name: description: - Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used. required: false + type: str network: description: - Specifies the title of an existing network. When creating an instance, if @@ -295,12 +328,14 @@ options: name-of-resource` to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: false + type: dict network_ip: description: - An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system. required: false + type: str subnetwork: description: - Reference to a VPC network. @@ -313,10 +348,12 @@ options: name-of-resource` to a gcp_compute_subnetwork task and then set this subnetwork field to "{{ name-of-resource }}"' required: false + type: dict scheduling: description: - Sets the scheduling options for this instance. required: false + type: dict suboptions: automatic_restart: description: @@ -333,6 +370,7 @@ options: and only possible behavior is TERMINATE. - For more information, see Setting Instance Scheduling Options. required: false + type: str preemptible: description: - Defines whether the instance is preemptible. This can only be set during @@ -345,15 +383,18 @@ options: - A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. required: false + type: list suboptions: email: description: - Email address of the service account. required: false + type: str scopes: description: - The list of scopes to be made available for this service account. required: false + type: list status: description: - 'The status of the instance. One of the following values: PROVISIONING, STAGING, @@ -363,6 +404,7 @@ options: - 'Some valid choices include: "PROVISIONING", "STAGING", "RUNNING", "STOPPING", "SUSPENDING", "SUSPENDED", "TERMINATED"' required: false + type: str version_added: 2.8 tags: description: @@ -371,6 +413,7 @@ options: creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. required: false + type: dict suboptions: fingerprint: description: @@ -380,15 +423,18 @@ options: every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata. required: false + type: str items: description: - An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035. required: false + type: list zone: description: - A reference to the zone where the machine resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_instance_facts.py b/plugins/modules/gcp_compute_instance_facts.py index eef0b70..0aad2e8 100644 --- a/plugins/modules/gcp_compute_instance_facts.py +++ b/plugins/modules/gcp_compute_instance_facts.py @@ -49,6 +49,7 @@ options: description: - A reference to the zone where the machine resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_instance_group.py b/plugins/modules/gcp_compute_instance_group.py index aa482ab..43c6367 100644 --- a/plugins/modules/gcp_compute_instance_group.py +++ b/plugins/modules/gcp_compute_instance_group.py @@ -55,11 +55,13 @@ options: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str name: description: - The name of the instance group. - The name must be 1-63 characters long, and comply with RFC1035. required: false + type: str named_ports: description: - Assigns a name to a port number. @@ -69,16 +71,19 @@ options: - 'For example: [{name: "http", port: 80},{name: "http", port: 8080}] Named ports apply to all instances in this instance group.' required: false + type: list suboptions: name: description: - The name for this named port. - The name must be 1-63 characters long, and comply with RFC1035. required: false + type: str port: description: - The port number, which can be a value between 1 and 65535. required: false + type: int network: description: - The network to which all instances in the instance group belong. @@ -88,10 +93,12 @@ options: to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: false + type: dict region: description: - The region where the instance group is located (for regional resources). required: false + type: str subnetwork: description: - The subnetwork to which all instances in the instance group belong. @@ -101,10 +108,12 @@ options: to a gcp_compute_subnetwork task and then set this subnetwork field to "{{ name-of-resource }}"' required: false + type: dict zone: description: - A reference to the zone where the instance group resides. required: true + type: str instances: description: - The list of instances associated with this InstanceGroup. @@ -113,6 +122,7 @@ options: not be deleted. - Only the full identifier of the instance will be returned. required: false + type: list version_added: 2.8 extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_instance_group_facts.py b/plugins/modules/gcp_compute_instance_group_facts.py index 5074e62..9b6ba09 100644 --- a/plugins/modules/gcp_compute_instance_group_facts.py +++ b/plugins/modules/gcp_compute_instance_group_facts.py @@ -49,6 +49,7 @@ options: description: - A reference to the zone where the instance group resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_instance_group_manager.py b/plugins/modules/gcp_compute_instance_group_manager.py index e5c1caf..b8e4196 100644 --- a/plugins/modules/gcp_compute_instance_group_manager.py +++ b/plugins/modules/gcp_compute_instance_group_manager.py @@ -59,11 +59,13 @@ options: four-character string to the base instance name. - The base instance name must comply with RFC1035. required: true + type: str description: description: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str instance_template: description: - The instance template that is specified for this managed instance group. The @@ -75,42 +77,50 @@ options: name-of-resource` to a gcp_compute_instance_template task and then set this instance_template field to "{{ name-of-resource }}"' required: true + type: dict name: description: - The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035. required: true + type: str named_ports: description: - Named ports configured for the Instance Groups complementary to this Instance Group Manager. required: false + type: list suboptions: name: description: - The name for this named port. The name must be 1-63 characters long, and comply with RFC1035. required: false + type: str port: description: - The port number, which can be a value between 1 and 65535. required: false + type: int target_pools: description: - TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group. required: false + type: list target_size: description: - The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number. required: false + type: int zone: description: - The zone the managed instance group resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_instance_group_manager_facts.py b/plugins/modules/gcp_compute_instance_group_manager_facts.py index 4503696..389e29c 100644 --- a/plugins/modules/gcp_compute_instance_group_manager_facts.py +++ b/plugins/modules/gcp_compute_instance_group_manager_facts.py @@ -49,6 +49,7 @@ options: description: - The zone the managed instance group resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_instance_template.py b/plugins/modules/gcp_compute_instance_template.py index 68efdc7..6ec7679 100644 --- a/plugins/modules/gcp_compute_instance_template.py +++ b/plugins/modules/gcp_compute_instance_template.py @@ -58,14 +58,17 @@ options: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str name: description: - Name of the resource. The name is 1-63 characters long and complies with RFC1035. required: true + type: str properties: description: - The instance properties for this instance template. required: false + type: dict suboptions: can_ip_forward: description: @@ -81,11 +84,13 @@ options: - An optional text description for the instances that are created from this instance template. required: false + type: str disks: description: - An array of disks that are associated with the instances that are created from this template. required: false + type: list suboptions: auto_delete: description: @@ -108,21 +113,25 @@ options: within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. required: false + type: str disk_encryption_key: description: - Encrypts or decrypts a disk using 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 rsa_encrypted_key: description: - Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource. required: false + type: str index: description: - Assigns a zero-based index to this disk, where 0 is reserved for the @@ -130,28 +139,33 @@ options: each disk would have a unique index number. If not specified, the server will choose an appropriate value. required: false + type: int initialize_params: description: - Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. required: false + type: dict suboptions: disk_name: description: - Specifies the disk name. If not specified, the default is to use the name of the instance. required: false + type: str disk_size_gb: description: - Specifies the size of the disk in base-2 GB. required: false + type: int disk_type: description: - Reference to a disk type. - Specifies the disk type to use to create the instance. - If not specified, the default is pd-standard. required: false + type: str source_image: description: - The source image to create this disk. When creating a new instance, @@ -159,6 +173,7 @@ options: To create a disk with one of the public operating system images, specify the image by its family name. required: false + type: str source_image_encryption_key: description: - The customer-supplied encryption key of the source image. Required @@ -168,12 +183,14 @@ options: so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys. 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 interface: description: - Specifies the disk interface to use for attaching this disk, which is @@ -182,12 +199,14 @@ options: attempt to attach a persistent disk in any other format than SCSI. - 'Some valid choices include: "SCSI", "NVME"' required: false + type: str mode: description: - The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode. - 'Some valid choices include: "READ_WRITE", "READ_ONLY"' required: false + type: str source: description: - Reference to a disk. When creating a new instance, one of initializeParams.sourceImage @@ -202,48 +221,57 @@ options: name-of-resource` to a gcp_compute_disk task and then set this source field to "{{ name-of-resource }}"' required: false + type: dict type: description: - Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT. - 'Some valid choices include: "SCRATCH", "PERSISTENT"' required: false + type: str machine_type: description: - The machine type to use in the VM instance template. required: true + type: str min_cpu_platform: description: - Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms . required: false + type: str metadata: description: - The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. required: false + type: dict guest_accelerators: description: - List of the type and count of accelerator cards attached to the instance . required: false + type: list suboptions: accelerator_count: description: - The number of the guest accelerator cards exposed to this instance. required: false + type: int accelerator_type: description: - Full or partial URL of the accelerator type resource to expose to this instance. required: false + type: str network_interfaces: description: - An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Only one network interface is supported per instance. required: false + type: list suboptions: access_configs: description: @@ -251,6 +279,7 @@ options: config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access. required: false + type: list suboptions: name: description: @@ -258,6 +287,7 @@ options: name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access. required: true + type: str nat_ip: description: - Reference to an address. @@ -272,16 +302,19 @@ options: you can add `register: name-of-resource` to a gcp_compute_address task and then set this nat_ip field to "{{ name-of-resource }}"' required: false + type: dict type: description: - The type of configuration. The default and only option is ONE_TO_ONE_NAT. - 'Some valid choices include: "ONE_TO_ONE_NAT"' required: true + type: str alias_ip_ranges: description: - An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. required: false + type: list suboptions: ip_cidr_range: description: @@ -291,6 +324,7 @@ options: interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24). required: false + type: str subnetwork_range_name: description: - Optional subnetwork secondary range name specifying the secondary @@ -298,6 +332,7 @@ options: range. If left unspecified, the primary range of the subnetwork will be used. required: false + type: str network: description: - Specifies the title of an existing network. When creating an instance, @@ -310,12 +345,14 @@ options: name-of-resource` to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: false + type: dict network_ip: description: - An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system. required: false + type: str subnetwork: description: - Reference to a VPC network. @@ -328,10 +365,12 @@ options: can add `register: name-of-resource` to a gcp_compute_subnetwork task and then set this subnetwork field to "{{ name-of-resource }}"' required: false + type: dict scheduling: description: - Sets the scheduling options for this instance. required: false + type: dict suboptions: automatic_restart: description: @@ -348,6 +387,7 @@ options: and only possible behavior is TERMINATE. - For more information, see Setting Instance Scheduling Options. required: false + type: str preemptible: description: - Defines whether the instance is preemptible. This can only be set during @@ -360,15 +400,18 @@ options: - A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. required: false + type: list suboptions: email: description: - Email address of the service account. required: false + type: str scopes: description: - The list of scopes to be made available for this service account. required: false + type: list tags: description: - A list of tags to apply to this instance. Tags are used to identify valid @@ -376,6 +419,7 @@ options: during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. required: false + type: dict suboptions: fingerprint: description: @@ -385,11 +429,13 @@ options: after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata. required: false + type: str items: description: - An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035. required: false + type: list extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_interconnect_attachment.py b/plugins/modules/gcp_compute_interconnect_attachment.py index d917d70..c13459a 100644 --- a/plugins/modules/gcp_compute_interconnect_attachment.py +++ b/plugins/modules/gcp_compute_interconnect_attachment.py @@ -54,10 +54,12 @@ options: traverse through. Required if type is DEDICATED, must not be set if type is PARTNER. required: false + type: str description: description: - An optional description of this resource. required: false + type: str edge_availability_domain: description: - Desired availability domain for the attachment. Only available for type PARTNER, @@ -67,11 +69,13 @@ options: circuit will lie in the specified domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY. required: false + type: str type: description: - The type of InterconnectAttachment you wish to create. Defaults to DEDICATED. - 'Some valid choices include: "DEDICATED", "PARTNER", "PARTNER_PROVIDER"' required: false + type: str router: description: - URL of the cloud router to be used for dynamic routing. This router must be @@ -84,6 +88,7 @@ options: to a gcp_compute_router task and then set this router field to "{{ name-of-resource }}"' required: true + type: dict name: description: - Name of the resource. Provided by the client when the resource is created. The @@ -93,6 +98,7 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str candidate_subnets: description: - Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress @@ -103,15 +109,18 @@ options: /29s are in use on Google's edge. If not supplied, Google will randomly select an unused /29 from all of link-local space. required: false + type: list vlan_tag8021q: description: - The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4094. When using PARTNER type this will be managed upstream. required: false + type: int region: description: - Region where the regional interconnect attachment resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_interconnect_attachment_facts.py b/plugins/modules/gcp_compute_interconnect_attachment_facts.py index a67aff5..59fabe1 100644 --- a/plugins/modules/gcp_compute_interconnect_attachment_facts.py +++ b/plugins/modules/gcp_compute_interconnect_attachment_facts.py @@ -49,6 +49,7 @@ options: description: - Region where the regional interconnect attachment resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_network.py b/plugins/modules/gcp_compute_network.py index 3393f1d..71e88d8 100644 --- a/plugins/modules/gcp_compute_network.py +++ b/plugins/modules/gcp_compute_network.py @@ -52,6 +52,7 @@ options: - An optional description of this resource. The resource must be recreated to modify this field. required: false + type: str ipv4_range: description: - If this field is specified, a deprecated legacy network is created. @@ -62,6 +63,7 @@ options: - 'This range is a CIDR specification, for example: `192.168.0.0/16`.' - The resource must be recreated to modify this field. required: false + type: str name: description: - Name of the resource. Provided by the client when the resource is created. The @@ -71,6 +73,7 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str auto_create_subnetworks: description: - When set to `true`, the network is created in "auto subnet mode" and it will @@ -85,6 +88,7 @@ options: - The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce. required: false + type: dict version_added: 2.8 suboptions: routing_mode: @@ -96,6 +100,7 @@ options: regions. - 'Some valid choices include: "REGIONAL", "GLOBAL"' required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/networks)' diff --git a/plugins/modules/gcp_compute_region_disk.py b/plugins/modules/gcp_compute_region_disk.py index be8b796..e185258 100644 --- a/plugins/modules/gcp_compute_region_disk.py +++ b/plugins/modules/gcp_compute_region_disk.py @@ -62,14 +62,17 @@ 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 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 @@ -79,6 +82,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 @@ -88,6 +92,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, @@ -96,19 +101,23 @@ options: - If an unsupported value is requested, the error message will list the supported values for the caller's project. required: false + type: int replica_zones: description: - URLs of the zones where the disk should be replicated to. required: true + type: list 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 region: description: - A reference to the region where the disk resides. required: true + type: str disk_encryption_key: description: - Encrypts the disk using a customer-supplied encryption key. @@ -120,12 +129,14 @@ 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 source_snapshot: description: - The source snapshot used to create this disk. You can provide this as a partial @@ -136,17 +147,20 @@ 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 extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/beta/regionDisks)' diff --git a/plugins/modules/gcp_compute_region_disk_facts.py b/plugins/modules/gcp_compute_region_disk_facts.py index 600904d..0c38e41 100644 --- a/plugins/modules/gcp_compute_region_disk_facts.py +++ b/plugins/modules/gcp_compute_region_disk_facts.py @@ -49,6 +49,7 @@ options: description: - A reference to the region where the disk resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_route.py b/plugins/modules/gcp_compute_route.py index cd80b35..578c843 100644 --- a/plugins/modules/gcp_compute_route.py +++ b/plugins/modules/gcp_compute_route.py @@ -67,11 +67,13 @@ options: - The destination range of outgoing packets that this route applies to. - Only IPv4 is supported. required: true + type: str description: description: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str version_added: 2.7 name: description: @@ -82,6 +84,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: - The network that this route applies to. @@ -91,6 +94,7 @@ options: to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: true + type: dict priority: description: - The priority of this route. Priority is used to break ties in cases where there @@ -99,10 +103,12 @@ options: priority value wins. - Default value is 1000. Valid range is 0 through 65535. required: false + type: int tags: description: - A list of instance tags to which this route applies. required: false + type: list next_hop_gateway: description: - URL to a gateway that should handle matching packets. @@ -111,6 +117,7 @@ options: * projects/project/global/gateways/default-internet-gateway * global/gateways/default-internet-gateway .' required: false + type: str next_hop_instance: description: - URL to an instance that should handle matching packets. @@ -123,10 +130,12 @@ options: to a gcp_compute_instance task and then set this next_hop_instance field to "{{ name-of-resource }}"' required: false + type: dict next_hop_ip: description: - Network IP address of an instance that should handle matching packets. required: false + type: str next_hop_vpn_tunnel: description: - URL to a VpnTunnel that should handle matching packets. @@ -136,6 +145,7 @@ options: to a gcp_compute_vpn_tunnel task and then set this next_hop_vpn_tunnel field to "{{ name-of-resource }}"' required: false + type: dict extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/routes)' diff --git a/plugins/modules/gcp_compute_router.py b/plugins/modules/gcp_compute_router.py index 2c5315f..48a26b7 100644 --- a/plugins/modules/gcp_compute_router.py +++ b/plugins/modules/gcp_compute_router.py @@ -55,10 +55,12 @@ 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 description: description: - An optional description of this resource. required: false + type: str network: description: - A reference to the network to which this router belongs. @@ -68,10 +70,12 @@ options: to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: true + type: dict bgp: description: - BGP information specific to this router. required: false + type: dict suboptions: asn: description: @@ -79,6 +83,7 @@ options: either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN. required: true + type: int advertise_mode: description: - User-specified flag to indicate which mode to use for advertisement. @@ -86,6 +91,7 @@ options: - 'Some valid choices include: "DEFAULT", "CUSTOM"' required: false default: DEFAULT + type: str advertised_groups: description: - User-specified list of prefix groups to advertise in custom mode. @@ -95,6 +101,7 @@ options: groups. - 'This enum field has the one valid value: ALL_SUBNETS .' required: false + type: list advertised_ip_ranges: description: - User-specified list of individual IP ranges to advertise in custom mode. @@ -103,19 +110,23 @@ options: to any specified groups. - Leave this field blank to advertise no custom IP ranges. required: false + type: list suboptions: range: description: - The IP range to advertise. The value must be a CIDR-formatted string. required: false + type: str description: description: - User-specified description for the IP range. required: false + type: str region: description: - Region where the router resides. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/routers)' diff --git a/plugins/modules/gcp_compute_router_facts.py b/plugins/modules/gcp_compute_router_facts.py index 581ba19..b0a62d6 100644 --- a/plugins/modules/gcp_compute_router_facts.py +++ b/plugins/modules/gcp_compute_router_facts.py @@ -49,6 +49,7 @@ options: description: - Region where the router resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_ssl_certificate.py b/plugins/modules/gcp_compute_ssl_certificate.py index 07af3be..7c2113f 100644 --- a/plugins/modules/gcp_compute_ssl_certificate.py +++ b/plugins/modules/gcp_compute_ssl_certificate.py @@ -55,10 +55,12 @@ options: - The certificate chain must be no greater than 5 certs long. - The chain must include at least one intermediate cert. required: true + type: str 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 @@ -68,10 +70,12 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: false + type: str private_key: description: - The write-only private key in PEM format. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/sslCertificates)' diff --git a/plugins/modules/gcp_compute_ssl_policy.py b/plugins/modules/gcp_compute_ssl_policy.py index 0a4573a..6dbd614 100644 --- a/plugins/modules/gcp_compute_ssl_policy.py +++ b/plugins/modules/gcp_compute_ssl_policy.py @@ -52,6 +52,7 @@ options: 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 @@ -61,6 +62,7 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str profile: description: - Profile specifies the set of SSL features that can be used by the load balancer @@ -69,6 +71,7 @@ options: must be specified in the `customFeatures` field. - 'Some valid choices include: "COMPATIBLE", "MODERN", "RESTRICTED", "CUSTOM"' required: false + type: str min_tls_version: description: - The minimum version of SSL protocol that can be used by the clients to establish @@ -76,12 +79,14 @@ options: `TLS_1_2`. - 'Some valid choices include: "TLS_1_0", "TLS_1_1", "TLS_1_2"' required: false + type: str custom_features: description: - A list of features enabled when the selected profile is CUSTOM. The method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM. required: false + type: list extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/sslPolicies)' diff --git a/plugins/modules/gcp_compute_subnetwork.py b/plugins/modules/gcp_compute_subnetwork.py index 22a045b..0d7ea5f 100644 --- a/plugins/modules/gcp_compute_subnetwork.py +++ b/plugins/modules/gcp_compute_subnetwork.py @@ -68,6 +68,7 @@ options: - An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time. required: false + type: str ip_cidr_range: description: - The range of internal addresses that are owned by this subnetwork. @@ -75,6 +76,7 @@ options: or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. required: true + type: str name: description: - The name of the resource, provided by the client when initially creating the @@ -84,6 +86,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: - The network this subnet belongs to. @@ -94,6 +97,7 @@ options: to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: true + type: dict enable_flow_logs: description: - Whether to enable flow logging for this subnetwork. @@ -106,6 +110,7 @@ options: in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges. required: false + type: list version_added: 2.8 suboptions: range_name: @@ -114,6 +119,7 @@ options: an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork. required: true + type: str ip_cidr_range: description: - The range of IP addresses belonging to this subnetwork secondary range. @@ -121,6 +127,7 @@ options: - Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported. required: true + type: str private_ip_google_access: description: - When enabled, VMs in this subnetwork without external IP addresses can access @@ -131,6 +138,7 @@ options: description: - URL of the GCP region for this subnetwork. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/beta/subnetworks)' diff --git a/plugins/modules/gcp_compute_subnetwork_facts.py b/plugins/modules/gcp_compute_subnetwork_facts.py index c977ac6..84e5667 100644 --- a/plugins/modules/gcp_compute_subnetwork_facts.py +++ b/plugins/modules/gcp_compute_subnetwork_facts.py @@ -49,6 +49,7 @@ options: description: - URL of the GCP region for this subnetwork. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_target_http_proxy.py b/plugins/modules/gcp_compute_target_http_proxy.py index c7e73c1..dbc0601 100644 --- a/plugins/modules/gcp_compute_target_http_proxy.py +++ b/plugins/modules/gcp_compute_target_http_proxy.py @@ -52,6 +52,7 @@ options: 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 @@ -61,6 +62,7 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str url_map: description: - A reference to the UrlMap resource that defines the mapping from URL to the @@ -71,6 +73,7 @@ options: to a gcp_compute_url_map task and then set this url_map field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/targetHttpProxies)' diff --git a/plugins/modules/gcp_compute_target_https_proxy.py b/plugins/modules/gcp_compute_target_https_proxy.py index c8bb045..d0f8c25 100644 --- a/plugins/modules/gcp_compute_target_https_proxy.py +++ b/plugins/modules/gcp_compute_target_https_proxy.py @@ -52,6 +52,7 @@ options: 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 @@ -61,6 +62,7 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str quic_override: description: - Specifies the QUIC override policy for this resource. This determines whether @@ -70,6 +72,7 @@ options: field is equivalent to specifying NONE. - 'Some valid choices include: "NONE", "ENABLE", "DISABLE"' required: false + type: str version_added: 2.7 ssl_certificates: description: @@ -77,6 +80,7 @@ options: between users and the load balancer. Currently, exactly one SSL certificate must be specified. required: true + type: list ssl_policy: description: - A reference to the SslPolicy resource that will be associated with the TargetHttpsProxy @@ -88,6 +92,7 @@ options: to a gcp_compute_ssl_policy task and then set this ssl_policy field to "{{ name-of-resource }}"' required: false + type: dict version_added: 2.8 url_map: description: @@ -99,6 +104,7 @@ options: to a gcp_compute_url_map task and then set this url_map field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/targetHttpsProxies)' diff --git a/plugins/modules/gcp_compute_target_pool.py b/plugins/modules/gcp_compute_target_pool.py index 46ad75e..99c2aa6 100644 --- a/plugins/modules/gcp_compute_target_pool.py +++ b/plugins/modules/gcp_compute_target_pool.py @@ -66,10 +66,12 @@ options: to a gcp_compute_target_pool task and then set this backup_pool field to "{{ name-of-resource }}"' required: false + type: dict description: description: - An optional description of this resource. required: false + type: str failover_ratio: description: - This field is applicable only when the containing target pool is serving a forwarding @@ -84,6 +86,7 @@ options: "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. required: false + type: str health_check: description: - A reference to a HttpHealthCheck resource. @@ -96,11 +99,13 @@ options: name-of-resource` to a gcp_compute_http_health_check task and then set this health_check field to "{{ name-of-resource }}"' required: false + type: dict instances: description: - A list of virtual machine instances serving this pool. - They must live in zones contained in the same region as this pool. required: false + type: list name: description: - Name of the resource. Provided by the client when the resource is created. The @@ -110,6 +115,7 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str session_affinity: description: - 'Session affinity option. Must be one of these values: - NONE: Connections from @@ -120,10 +126,12 @@ options: will go to the same instance in the pool while that instance remains healthy." - 'Some valid choices include: "NONE", "CLIENT_IP", "CLIENT_IP_PROTO"' required: false + type: str region: description: - The region where the target pool resides. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/targetPools)' diff --git a/plugins/modules/gcp_compute_target_pool_facts.py b/plugins/modules/gcp_compute_target_pool_facts.py index d031661..2d84a64 100644 --- a/plugins/modules/gcp_compute_target_pool_facts.py +++ b/plugins/modules/gcp_compute_target_pool_facts.py @@ -49,6 +49,7 @@ options: description: - The region where the target pool resides. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_target_ssl_proxy.py b/plugins/modules/gcp_compute_target_ssl_proxy.py index c08f8ea..068aec4 100644 --- a/plugins/modules/gcp_compute_target_ssl_proxy.py +++ b/plugins/modules/gcp_compute_target_ssl_proxy.py @@ -52,6 +52,7 @@ options: 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 @@ -61,12 +62,14 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str proxy_header: description: - Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. - 'Some valid choices include: "NONE", "PROXY_V1"' required: false + type: str service: description: - A reference to the BackendService resource. @@ -76,12 +79,14 @@ options: name-of-resource` to a gcp_compute_backend_service task and then set this service field to "{{ name-of-resource }}"' required: true + type: dict ssl_certificates: description: - A list of SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified. required: true + type: list ssl_policy: description: - A reference to the SslPolicy resource that will be associated with the TargetSslProxy @@ -93,6 +98,7 @@ options: to a gcp_compute_ssl_policy task and then set this ssl_policy field to "{{ name-of-resource }}"' required: false + type: dict version_added: 2.8 extends_documentation_fragment: gcp notes: diff --git a/plugins/modules/gcp_compute_target_tcp_proxy.py b/plugins/modules/gcp_compute_target_tcp_proxy.py index 0632dff..cce3596 100644 --- a/plugins/modules/gcp_compute_target_tcp_proxy.py +++ b/plugins/modules/gcp_compute_target_tcp_proxy.py @@ -52,6 +52,7 @@ options: 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 @@ -61,12 +62,14 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str proxy_header: description: - Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. - 'Some valid choices include: "NONE", "PROXY_V1"' required: false + type: str service: description: - A reference to the BackendService resource. @@ -76,6 +79,7 @@ options: name-of-resource` to a gcp_compute_backend_service task and then set this service field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/v1/targetTcpProxies)' diff --git a/plugins/modules/gcp_compute_target_vpn_gateway.py b/plugins/modules/gcp_compute_target_vpn_gateway.py index 9b7a980..de4830e 100644 --- a/plugins/modules/gcp_compute_target_vpn_gateway.py +++ b/plugins/modules/gcp_compute_target_vpn_gateway.py @@ -52,6 +52,7 @@ options: 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 @@ -61,6 +62,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: - The network this VPN gateway is accepting traffic for. @@ -70,10 +72,12 @@ options: to a gcp_compute_network task and then set this network field to "{{ name-of-resource }}"' required: true + type: dict region: description: - The region this gateway should sit in. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/targetVpnGateways)' diff --git a/plugins/modules/gcp_compute_target_vpn_gateway_facts.py b/plugins/modules/gcp_compute_target_vpn_gateway_facts.py index f504147..918b793 100644 --- a/plugins/modules/gcp_compute_target_vpn_gateway_facts.py +++ b/plugins/modules/gcp_compute_target_vpn_gateway_facts.py @@ -49,6 +49,7 @@ options: description: - The region this gateway should sit in. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_url_map.py b/plugins/modules/gcp_compute_url_map.py index 74a68f2..d43176a 100644 --- a/plugins/modules/gcp_compute_url_map.py +++ b/plugins/modules/gcp_compute_url_map.py @@ -57,32 +57,38 @@ options: name-of-resource` to a gcp_compute_backend_service task and then set this default_service field to "{{ name-of-resource }}"' required: true + type: dict description: description: - An optional description of this resource. Provide this property when you create the resource. required: false + type: str host_rules: description: - The list of HostRules to use against the URL. required: false + type: list suboptions: description: description: - An optional description of this HostRule. Provide this property when you create the resource. required: false + type: str hosts: description: - The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or . required: true + type: list path_matcher: description: - The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion. required: true + type: str name: description: - Name of the resource. Provided by the client when the resource is created. The @@ -92,10 +98,12 @@ options: characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. required: true + type: str path_matchers: description: - The list of named PathMatchers to use against the URL. required: false + type: list suboptions: default_service: description: @@ -107,18 +115,22 @@ options: name-of-resource` to a gcp_compute_backend_service task and then set this default_service field to "{{ name-of-resource }}"' required: true + type: dict description: description: - An optional description of this resource. required: false + type: str name: description: - The name to which this PathMatcher is referred by the HostRule. required: true + type: str path_rules: description: - The list of path rules. required: false + type: list suboptions: paths: description: @@ -127,6 +139,7 @@ options: to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.' required: true + type: list service: description: - A reference to the BackendService resource if this rule is matched. @@ -136,24 +149,29 @@ options: you can add `register: name-of-resource` to a gcp_compute_backend_service task and then set this service field to "{{ name-of-resource }}"' required: true + type: dict tests: description: - The list of expected URL mappings. Requests to update this UrlMap will succeed only if all of the test cases pass. required: false + type: list suboptions: description: description: - Description of this test case. required: false + type: str host: description: - Host portion of the URL. required: true + type: str path: description: - Path portion of the URL. required: true + type: str service: description: - A reference to expected BackendService resource the given URL should be @@ -164,6 +182,7 @@ options: name-of-resource` to a gcp_compute_backend_service task and then set this service field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_compute_vpn_tunnel.py b/plugins/modules/gcp_compute_vpn_tunnel.py index 0e5f745..84e7ff2 100644 --- a/plugins/modules/gcp_compute_vpn_tunnel.py +++ b/plugins/modules/gcp_compute_vpn_tunnel.py @@ -55,10 +55,12 @@ 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 description: description: - An optional description of this resource. required: false + type: str target_vpn_gateway: description: - URL of the Target VPN gateway with which this VPN tunnel is associated. @@ -68,6 +70,7 @@ options: name-of-resource` to a gcp_compute_target_vpn_gateway task and then set this target_vpn_gateway field to "{{ name-of-resource }}"' required: false + type: dict router: description: - URL of router resource to be used for dynamic routing. @@ -77,21 +80,25 @@ options: to a gcp_compute_router task and then set this router field to "{{ name-of-resource }}"' required: false + type: dict peer_ip: description: - IP address of the peer VPN gateway. Only IPv4 is supported. required: false + type: str shared_secret: description: - Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway. required: true + type: str ike_version: description: - IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. - Acceptable IKE versions are 1 or 2. Default version is 2. required: false default: '2' + type: int local_traffic_selector: description: - Local traffic selector to use when establishing the VPN tunnel with peer VPN @@ -99,6 +106,7 @@ options: The ranges should be disjoint. - Only IPv4 is supported. required: false + type: list remote_traffic_selector: description: - Remote traffic selector to use when establishing the VPN tunnel with peer VPN @@ -106,10 +114,12 @@ options: The ranges should be disjoint. - Only IPv4 is supported. required: false + type: list region: description: - The region where the tunnel is located. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/compute/docs/reference/rest/v1/vpnTunnels)' diff --git a/plugins/modules/gcp_compute_vpn_tunnel_facts.py b/plugins/modules/gcp_compute_vpn_tunnel_facts.py index 62cfe4a..2d07d88 100644 --- a/plugins/modules/gcp_compute_vpn_tunnel_facts.py +++ b/plugins/modules/gcp_compute_vpn_tunnel_facts.py @@ -49,6 +49,7 @@ options: description: - The region where the tunnel is located. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_container_cluster.py b/plugins/modules/gcp_container_cluster.py index 70a140d..030094f 100644 --- a/plugins/modules/gcp_container_cluster.py +++ b/plugins/modules/gcp_container_cluster.py @@ -53,10 +53,12 @@ options: and can be up to 40 characters. Must be Lowercase letters, numbers, and hyphens only. Must start with a letter. Must end with a number or a letter. required: false + type: str description: description: - An optional description of this cluster. required: false + type: str initial_node_count: description: - The number of nodes to create in this cluster. You must ensure that your Compute @@ -67,6 +69,7 @@ options: name. Do not use this and a nodePool at the same time. - This field has been deprecated. Please use nodePool.initial_node_count instead. required: false + type: int node_config: description: - Parameters used in creating the cluster's nodes. @@ -77,17 +80,20 @@ options: the node configuration of the first node pool. If unspecified, the defaults are used. required: false + type: dict suboptions: machine_type: description: - The name of a Google Compute Engine machine type (e.g. - n1-standard-1). If unspecified, the default machine type is n1-standard-1. required: false + type: str disk_size_gb: description: - Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. If unspecified, the default disk size is 100GB. required: false + type: int oauth_scopes: description: - The set of Google API scopes to be made available on all of the node VMs @@ -100,11 +106,13 @@ options: - If unspecified, no scopes are added, unless Cloud Logging or Cloud Monitoring are enabled, in which case their required scopes will be added. required: false + type: list service_account: description: - The Google Cloud Platform Service Account to be used by the node VMs. If no Service Account is specified, the "default" service account is used. required: false + type: str metadata: description: - The metadata key/value pairs assigned to instances in the cluster. @@ -120,11 +128,13 @@ options: - 'An object containing a list of "key": value pairs.' - 'Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.' required: false + type: dict image_type: description: - The image type to use for this node. Note that for a given image type, the latest version of it will be used. required: false + type: str labels: description: - 'The map of Kubernetes labels (key/value pairs) to be applied to each node. @@ -136,6 +146,7 @@ options: An object containing a list of "key": value pairs.' - 'Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.' required: false + type: dict local_ssd_count: description: - The number of local SSD disks to be attached to the node. @@ -143,6 +154,7 @@ options: available on a machine per zone. See: U(https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits) for more information.' required: false + type: int tags: description: - The list of instance tags applied to all nodes. Tags are used to identify @@ -150,6 +162,7 @@ options: client during cluster or node pool creation. Each tag within the list must comply with RFC1035. required: false + type: list preemptible: description: - 'Whether the nodes are created as preemptible VM instances. See: U(https://cloud.google.com/compute/docs/instances/preemptible) @@ -161,27 +174,32 @@ options: - A list of hardware accelerators to be attached to each node. See U(https://cloud.google.com/compute/docs/gpus) for more information about support for GPUs. required: false + type: list version_added: 2.9 suboptions: accelerator_count: description: - The number of accelerator cards exposed to an instance. required: false + type: str accelerator_type: description: - The accelerator type resource name. required: false + type: str disk_type: description: - Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd') If unspecified, the default disk type is 'pd-standard' . required: false + type: str version_added: 2.9 min_cpu_platform: description: - Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform. required: false + type: str version_added: 2.9 taints: description: @@ -189,43 +207,51 @@ options: - 'For more information, including usage and the valid values, see: U(https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) .' required: false + type: list version_added: 2.9 suboptions: key: description: - Key for taint. required: false + type: str value: description: - Value for taint. required: false + type: str effect: description: - Effect for taint. - 'Some valid choices include: "EFFECT_UNSPECIFIED", "NO_SCHEDULE", "PREFER_NO_SCHEDULE", "NO_EXECUTE"' required: false + type: str master_auth: description: - The authentication information for accessing the master endpoint. required: false + type: dict suboptions: username: description: - The username to use for HTTP basic authentication to the master endpoint. required: false + type: str password: description: - The password to use for HTTP basic authentication to the master endpoint. Because the master endpoint is open to the Internet, you should create a strong password with a minimum of 16 characters. required: false + type: str client_certificate_config: description: - Configuration for client certificate authentication on the cluster. For clusters before v1.12, if no configuration is specified, a client certificate is issued. required: false + type: dict version_added: 2.9 suboptions: issue_client_certificate: @@ -241,6 +267,7 @@ options: - if left as an empty string,logging.googleapis.com will be used. - 'Some valid choices include: "logging.googleapis.com", "none"' required: false + type: str monitoring_service: description: - The monitoring service the cluster should use to write metrics. @@ -250,15 +277,18 @@ options: - if left as an empty string, monitoring.googleapis.com will be used. - 'Some valid choices include: "monitoring.googleapis.com", "none"' required: false + type: str network: description: - The name of the Google Compute Engine network to which the cluster is connected. If left unspecified, the default network will be used. required: false + type: str private_cluster_config: description: - Configuration for a private cluster. required: false + type: dict version_added: 2.8 suboptions: enable_private_nodes: @@ -280,22 +310,26 @@ options: set of masters, as well as the ILB VIP. This range must not overlap with any other ranges in use within the cluster's network. required: false + type: str cluster_ipv4_cidr: description: - The IP address range of the container pods in this cluster, in CIDR notation (e.g. 10.96.0.0/14). Leave blank to have one automatically chosen or specify a /14 block in 10.0.0.0/8. required: false + type: str addons_config: description: - Configurations for the various addons available to run in the cluster. required: false + type: dict suboptions: http_load_balancing: description: - Configuration for the HTTP (L7) load balancing controller addon, which makes it easy to set up HTTP load balancers for services in a cluster. required: false + type: dict suboptions: disabled: description: @@ -310,6 +344,7 @@ options: or decreases the number of replica pods a replication controller has based on the resource usage of the existing pods. required: false + type: dict suboptions: disabled: description: @@ -324,6 +359,7 @@ options: or not on the Master, it does not track whether network policy is enabled for the nodes. required: false + type: dict version_added: 2.9 suboptions: disabled: @@ -335,11 +371,13 @@ options: description: - The name of the Google Compute Engine subnetwork to which the cluster is connected. required: false + type: str locations: description: - The list of Google Compute Engine zones in which the cluster's nodes should be located. required: false + type: list aliases: - nodeLocations version_added: 2.9 @@ -348,11 +386,13 @@ options: - The resource labels for the cluster to use to annotate any related Google Compute Engine resources. required: false + type: dict version_added: 2.9 legacy_abac: description: - Configuration for the legacy ABAC authorization mode. required: false + type: dict version_added: 2.9 suboptions: enabled: @@ -367,6 +407,7 @@ options: description: - Configuration options for the NetworkPolicy feature. required: false + type: dict version_added: 2.9 suboptions: provider: @@ -374,6 +415,7 @@ options: - The selected network policy provider. - 'Some valid choices include: "PROVIDER_UNSPECIFIED", "CALICO"' required: false + type: str enabled: description: - Whether network policy is enabled on the cluster. @@ -385,12 +427,14 @@ options: on a node in the node pool of this cluster. - Only honored if cluster created with IP Alias support. required: false + type: dict version_added: 2.9 suboptions: max_pods_per_node: description: - Constraint enforced on the max num of pods per node. required: false + type: str enable_tpu: description: - Enable the ability to use Cloud TPUs in this cluster. @@ -401,11 +445,13 @@ options: description: - The IP address range of the Cloud TPUs in this cluster, in CIDR notation. required: false + type: str version_added: 2.9 location: description: - The location where the cluster is deployed. required: true + type: str aliases: - zone version_added: 2.8 @@ -416,12 +462,14 @@ options: - Any existing file at this path will be completely overwritten. - This requires the PyYaml library. required: false + type: str version_added: 2.9 kubectl_context: description: - The name of the context for the kubectl config file. Will default to the cluster name. required: false + type: str version_added: 2.9 extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_container_cluster_facts.py b/plugins/modules/gcp_container_cluster_facts.py index 0e9aab5..c203570 100644 --- a/plugins/modules/gcp_container_cluster_facts.py +++ b/plugins/modules/gcp_container_cluster_facts.py @@ -44,6 +44,7 @@ options: description: - The location where the cluster is deployed. required: true + type: str aliases: - region - zone diff --git a/plugins/modules/gcp_container_node_pool.py b/plugins/modules/gcp_container_node_pool.py index 4dee965..fa0d250 100644 --- a/plugins/modules/gcp_container_node_pool.py +++ b/plugins/modules/gcp_container_node_pool.py @@ -55,21 +55,25 @@ options: description: - The name of the node pool. required: false + type: str config: description: - The node configuration of the pool. required: false + type: dict suboptions: machine_type: description: - The name of a Google Compute Engine machine type (e.g. - n1-standard-1). If unspecified, the default machine type is n1-standard-1. required: false + type: str disk_size_gb: description: - Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. If unspecified, the default disk size is 100GB. required: false + type: int oauth_scopes: description: - The set of Google API scopes to be made available on all of the node VMs @@ -82,11 +86,13 @@ options: - If unspecified, no scopes are added, unless Cloud Logging or Cloud Monitoring are enabled, in which case their required scopes will be added. required: false + type: list service_account: description: - The Google Cloud Platform Service Account to be used by the node VMs. If no Service Account is specified, the "default" service account is used. required: false + type: str metadata: description: - The metadata key/value pairs assigned to instances in the cluster. @@ -102,11 +108,13 @@ options: - 'An object containing a list of "key": value pairs.' - 'Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.' required: false + type: dict image_type: description: - The image type to use for this node. Note that for a given image type, the latest version of it will be used. required: false + type: str labels: description: - 'The map of Kubernetes labels (key/value pairs) to be applied to each node. @@ -118,6 +126,7 @@ options: An object containing a list of "key": value pairs.' - 'Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.' required: false + type: dict local_ssd_count: description: - The number of local SSD disks to be attached to the node. @@ -125,6 +134,7 @@ options: available on a machine per zone. See: U(https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits) for more information.' required: false + type: int tags: description: - The list of instance tags applied to all nodes. Tags are used to identify @@ -132,6 +142,7 @@ options: client during cluster or node pool creation. Each tag within the list must comply with RFC1035. required: false + type: list preemptible: description: - 'Whether the nodes are created as preemptible VM instances. See: U(https://cloud.google.com/compute/docs/instances/preemptible) @@ -142,62 +153,74 @@ options: description: - A list of hardware accelerators to be attached to each node. required: false + type: list version_added: 2.9 suboptions: accelerator_count: description: - The number of the accelerator cards exposed to an instance. required: false + type: int accelerator_type: description: - The accelerator type resource name. required: false + type: str disk_type: description: - Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd') If unspecified, the default disk type is 'pd-standard' . required: false + type: str version_added: 2.9 min_cpu_platform: description: - Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform . required: false + type: str version_added: 2.9 taints: description: - List of kubernetes taints to be applied to each node. required: false + type: list version_added: 2.9 suboptions: key: description: - Key for taint. required: false + type: str value: description: - Value for taint. required: false + type: str effect: description: - Effect for taint. required: false + type: str initial_node_count: description: - 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. required: true + type: int version: description: - The version of the Kubernetes of this node. required: false + type: str version_added: 2.8 autoscaling: description: - Autoscaler configuration for this NodePool. Autoscaler is enabled only if a valid configuration is present. required: false + type: dict suboptions: enabled: description: @@ -208,15 +231,18 @@ options: description: - Minimum number of nodes in the NodePool. Must be >= 1 and <= maxNodeCount. required: false + type: int max_node_count: description: - Maximum number of nodes in the NodePool. Must be >= minNodeCount. - There has to enough quota to scale up the cluster. required: false + type: int management: description: - Management configuration for this NodePool. required: false + type: dict suboptions: auto_upgrade: description: @@ -237,22 +263,26 @@ options: description: - Specifies the Auto Upgrade knobs for the node pool. required: false + type: dict suboptions: {} max_pods_constraint: description: - The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool. required: false + type: dict version_added: 2.9 suboptions: max_pods_per_node: description: - Constraint enforced on the max num of pods per node. required: false + type: int conditions: description: - Which conditions caused the current node pool state. required: false + type: list version_added: 2.9 suboptions: code: @@ -261,6 +291,7 @@ options: - 'Some valid choices include: "UNKNOWN", "GCE_STOCKOUT", "GKE_SERVICE_ACCOUNT_DELETED", "GCE_QUOTA_EXCEEDED", "SET_BY_OPERATOR"' required: false + type: str cluster: description: - The cluster this node pool belongs to. @@ -270,10 +301,12 @@ options: to a gcp_container_cluster task and then set this cluster field to "{{ name-of-resource }}"' required: true + type: dict location: description: - The location where the node pool is deployed. required: true + type: str aliases: - region - zone diff --git a/plugins/modules/gcp_container_node_pool_facts.py b/plugins/modules/gcp_container_node_pool_facts.py index c04aa3f..a6d3c7c 100644 --- a/plugins/modules/gcp_container_node_pool_facts.py +++ b/plugins/modules/gcp_container_node_pool_facts.py @@ -44,6 +44,7 @@ options: description: - The location where the node pool is deployed. required: true + type: str aliases: - region - zone @@ -57,6 +58,7 @@ options: to a gcp_container_cluster task and then set this cluster field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_dns_managed_zone.py b/plugins/modules/gcp_dns_managed_zone.py index 91b0d15..c620ad7 100644 --- a/plugins/modules/gcp_dns_managed_zone.py +++ b/plugins/modules/gcp_dns_managed_zone.py @@ -53,14 +53,17 @@ options: - A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function. required: true + type: str dns_name: description: - The DNS name of this managed zone, for instance "example.com.". required: true + type: str dnssec_config: description: - DNSSEC configuration. required: false + type: dict version_added: 2.9 suboptions: kind: @@ -68,23 +71,27 @@ options: - Identifies what kind of resource this is. required: false default: dns#managedZoneDnsSecConfig + type: str non_existence: description: - Specifies the mechanism used to provide authenticated denial-of-existence responses. - 'Some valid choices include: "nsec", "nsec3"' required: false + type: str state: description: - Specifies whether DNSSEC is enabled, and what mode it is in. - 'Some valid choices include: "off", "on", "transfer"' required: false + type: str default_key_specs: description: - Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. If you provide a spec for keySigning or zoneSigning, you must also provide one for the other. required: false + type: list suboptions: algorithm: description: @@ -92,10 +99,12 @@ options: - 'Some valid choices include: "ecdsap256sha256", "ecdsap384sha384", "rsasha1", "rsasha256", "rsasha512"' required: false + type: str key_length: description: - Length of the keys in bits. required: false + type: int key_type: description: - Specifies whether this is a key signing key (KSK) or a zone signing @@ -105,26 +114,31 @@ options: and will be used to sign all other types of resource record sets. . - 'Some valid choices include: "keySigning", "zoneSigning"' required: false + type: str kind: description: - Identifies what kind of resource this is. required: false default: dns#dnsKeySpec + type: str name: description: - User assigned name for this resource. - Must be unique within the project. required: true + type: str name_server_set: description: - Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset. required: false + type: str labels: description: - A set of key/value label pairs to assign to this ManagedZone. required: false + type: dict version_added: 2.8 visibility: description: @@ -134,18 +148,21 @@ options: - 'Some valid choices include: "private", "public"' required: false default: public + type: str version_added: 2.8 private_visibility_config: description: - For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. required: false + type: dict version_added: 2.8 suboptions: networks: description: - The list of VPC networks that can see this zone. required: false + type: list suboptions: network_url: description: @@ -153,6 +170,7 @@ options: - This should be formatted like `U(https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`) . required: false + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/dns/api/v1/managedZones)' diff --git a/plugins/modules/gcp_dns_resource_record_set.py b/plugins/modules/gcp_dns_resource_record_set.py index e23f427..111514f 100644 --- a/plugins/modules/gcp_dns_resource_record_set.py +++ b/plugins/modules/gcp_dns_resource_record_set.py @@ -55,20 +55,24 @@ options: description: - For example, U(www.example.com). required: true + type: str type: description: - One of valid DNS resource types. - 'Some valid choices include: "A", "AAAA", "CAA", "CNAME", "MX", "NAPTR", "NS", "PTR", "SOA", "SPF", "SRV", "TLSA", "TXT"' required: true + type: str ttl: description: - Number of seconds that this ResourceRecordSet can be cached by resolvers. required: false + type: int target: description: - As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) . required: false + type: list managed_zone: description: - Identifies the managed zone addressed by this request. @@ -78,6 +82,7 @@ options: to a gcp_dns_managed_zone task and then set this managed_zone field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_dns_resource_record_set_facts.py b/plugins/modules/gcp_dns_resource_record_set_facts.py index 9c9ccb3..15b8c95 100644 --- a/plugins/modules/gcp_dns_resource_record_set_facts.py +++ b/plugins/modules/gcp_dns_resource_record_set_facts.py @@ -49,6 +49,7 @@ options: to a gcp_dns_managed_zone task and then set this managed_zone field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_iam_role.py b/plugins/modules/gcp_iam_role.py index 6a03965..ffd422c 100644 --- a/plugins/modules/gcp_iam_role.py +++ b/plugins/modules/gcp_iam_role.py @@ -51,25 +51,30 @@ options: description: - The name of the role. required: true + type: str title: description: - A human-readable title for the role. Typically this is limited to 100 UTF-8 bytes. required: false + type: str description: description: - Human-readable description for the role. required: false + type: str included_permissions: description: - Names of permissions this role grants when bound in an IAM policy. required: false + type: list stage: description: - The current launch stage of the role. - 'Some valid choices include: "ALPHA", "BETA", "GA", "DEPRECATED", "DISABLED", "EAP"' required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_iam_service_account.py b/plugins/modules/gcp_iam_service_account.py index 46674cb..78bec7f 100644 --- a/plugins/modules/gcp_iam_service_account.py +++ b/plugins/modules/gcp_iam_service_account.py @@ -51,10 +51,12 @@ options: description: - The name of the service account. required: false + type: str display_name: description: - User specified description of service account. required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_iam_service_account_key.py b/plugins/modules/gcp_iam_service_account_key.py index 4ad8cd4..8891966 100644 --- a/plugins/modules/gcp_iam_service_account_key.py +++ b/plugins/modules/gcp_iam_service_account_key.py @@ -52,11 +52,13 @@ options: - Output format for the service account key. - 'Some valid choices include: "TYPE_UNSPECIFIED", "TYPE_PKCS12_FILE", "TYPE_GOOGLE_CREDENTIALS_FILE"' required: false + type: str key_algorithm: description: - Specifies the algorithm for the key. - 'Some valid choices include: "KEY_ALG_UNSPECIFIED", "KEY_ALG_RSA_1024", "KEY_ALG_RSA_2048"' required: false + type: str service_account: description: - The name of the serviceAccount. @@ -66,12 +68,14 @@ options: to a gcp_iam_service_account task and then set this service_account field to "{{ name-of-resource }}"' required: false + type: dict path: description: - The full name of the file that will hold the service account private key. The management of this file will depend on the value of sync_file parameter. - File path must be absolute. required: false + type: path extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_pubsub_subscription.py b/plugins/modules/gcp_pubsub_subscription.py index 7425a4a..ef1a8a5 100644 --- a/plugins/modules/gcp_pubsub_subscription.py +++ b/plugins/modules/gcp_pubsub_subscription.py @@ -52,6 +52,7 @@ options: description: - Name of the subscription. required: true + type: str topic: description: - A reference to a Topic resource. @@ -61,10 +62,12 @@ options: to a gcp_pubsub_topic task and then set this topic field to "{{ name-of-resource }}"' required: true + type: dict labels: description: - A set of key/value label pairs to assign to this Subscription. required: false + type: dict version_added: 2.8 push_config: description: @@ -72,12 +75,14 @@ options: it. An empty pushConfig signifies that the subscriber will pull and ack messages using API methods. required: false + type: dict suboptions: push_endpoint: description: - A URL locating the endpoint to which messages should be pushed. - For example, a Webhook endpoint might use "U(https://example.com/push"). required: true + type: str attributes: description: - Endpoint configuration attributes. @@ -97,6 +102,7 @@ options: defined in the v1beta1 Pub/Sub API.' - "- v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API." required: false + type: dict ack_deadline_seconds: description: - This value is the maximum time after a subscriber receives a message before @@ -114,6 +120,7 @@ options: - If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message. required: false + type: int message_retention_duration: description: - How long to retain unacknowledged messages in the subscription's backlog, from @@ -125,6 +132,7 @@ options: Example: `"600.5s"`.' required: false default: 604800s + type: str version_added: 2.8 retain_acked_messages: description: @@ -142,6 +150,7 @@ options: If expirationPolicy is not set, a default policy with ttl of 31 days will be used. The minimum allowed value for expirationPolicy.ttl is 1 day. required: false + type: dict version_added: 2.9 suboptions: ttl: @@ -154,6 +163,7 @@ options: - A duration in seconds with up to nine fractional digits, terminated by 's'. - Example - "3.5s". required: false + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.subscriptions)' diff --git a/plugins/modules/gcp_pubsub_topic.py b/plugins/modules/gcp_pubsub_topic.py index 017cc50..925fdbb 100644 --- a/plugins/modules/gcp_pubsub_topic.py +++ b/plugins/modules/gcp_pubsub_topic.py @@ -51,6 +51,7 @@ options: description: - Name of the topic. required: true + type: str kms_key_name: description: - The resource name of the Cloud KMS CryptoKey to be used to protect access to @@ -58,11 +59,13 @@ options: must have `roles/cloudkms.cryptoKeyEncrypterDecrypter` to use this feature. - The expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*` . required: false + type: str version_added: 2.9 labels: description: - A set of key/value label pairs to assign to this Topic. required: false + type: dict version_added: 2.8 extends_documentation_fragment: gcp notes: diff --git a/plugins/modules/gcp_redis_instance.py b/plugins/modules/gcp_redis_instance.py index 7fa5e41..3f39cc3 100644 --- a/plugins/modules/gcp_redis_instance.py +++ b/plugins/modules/gcp_redis_instance.py @@ -53,19 +53,23 @@ options: failures by provisioning it across two zones. - If provided, it must be a different zone from the one provided in [locationId]. required: false + type: str authorized_network: description: - The full name of the Google Compute Engine network to which the instance is connected. If left unspecified, the default network will be used. required: false + type: str display_name: description: - An arbitrary and optional user-provided name for the instance. required: false + type: str labels: description: - Resource labels to represent user provided metadata. required: false + type: dict redis_configs: description: - Redis configuration parameters, according to U(http://redis.io/topics/config). @@ -73,6 +77,7 @@ options: U(https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs) .' required: false + type: dict location_id: description: - The zone where the instance will be provisioned. If not provided, the service @@ -80,20 +85,24 @@ options: created across two zones for protection against zonal failures. If [alternativeLocationId] is also provided, it must be different from [locationId]. required: false + type: str name: description: - The ID of the instance or a fully qualified identifier for the instance. . required: true + type: str memory_size_gb: description: - Redis memory size in GiB. required: true + type: int redis_version: description: - The version of Redis software. If not provided, latest supported version will be used. Updating the version will perform an upgrade/downgrade to the new version. Currently, the supported values are REDIS_3_2 for Redis 3.2. required: false + type: str reserved_ip_range: description: - The CIDR range of internal addresses that are reserved for this instance. If @@ -101,6 +110,7 @@ options: or 192.168.0.0/29. Ranges must be unique and non-overlapping with existing subnets in an authorized network. required: false + type: str tier: description: - 'The service tier of the instance. Must be one of these values: - BASIC: standalone @@ -108,10 +118,12 @@ options: - 'Some valid choices include: "BASIC", "STANDARD_HA"' required: false default: BASIC + type: str region: description: - The name of the Redis region of the instance. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/memorystore/docs/redis/reference/rest/)' diff --git a/plugins/modules/gcp_redis_instance_facts.py b/plugins/modules/gcp_redis_instance_facts.py index 5d43042..4c8ea10 100644 --- a/plugins/modules/gcp_redis_instance_facts.py +++ b/plugins/modules/gcp_redis_instance_facts.py @@ -44,6 +44,7 @@ options: description: - The name of the Redis region of the instance. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_resourcemanager_project.py b/plugins/modules/gcp_resourcemanager_project.py index 5418514..b5b9bfb 100644 --- a/plugins/modules/gcp_resourcemanager_project.py +++ b/plugins/modules/gcp_resourcemanager_project.py @@ -54,6 +54,7 @@ options: Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point.' required: false + type: str labels: description: - The labels associated with this Project. @@ -65,25 +66,30 @@ options: - Clients should store labels in a representation such as JSON that does not depend on specific characters being disallowed . required: false + type: dict parent: description: - A parent organization. required: false + type: dict suboptions: type: description: - Must be organization. required: false + type: str id: description: - Id of the organization. required: false + type: str id: description: - The unique, user-assigned ID of the Project. It must be 6 to 30 lowercase letters, digits, or hyphens. It must start with a letter. - Trailing hyphens are prohibited. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_sourcerepo_repository.py b/plugins/modules/gcp_sourcerepo_repository.py index 3e0d482..cb690e9 100644 --- a/plugins/modules/gcp_sourcerepo_repository.py +++ b/plugins/modules/gcp_sourcerepo_repository.py @@ -53,6 +53,7 @@ options: - The repo name may contain slashes. eg, projects/myproject/repos/name/with/slash . required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/source-repositories/docs/reference/rest/v1/projects.repos)' diff --git a/plugins/modules/gcp_spanner_database.py b/plugins/modules/gcp_spanner_database.py index c9e1bb5..38a6701 100644 --- a/plugins/modules/gcp_spanner_database.py +++ b/plugins/modules/gcp_spanner_database.py @@ -52,6 +52,7 @@ options: - A unique identifier for the database, which cannot be changed after the instance is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9]. required: true + type: str extra_statements: description: - 'An optional list of DDL statements to run inside the newly created database. @@ -59,6 +60,7 @@ options: with the creation of the database: if there is an error in any statement, the database is not created.' required: false + type: list instance: description: - The instance to create the database on. @@ -68,6 +70,7 @@ options: to a gcp_spanner_instance task and then set this instance field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.databases)' diff --git a/plugins/modules/gcp_spanner_database_facts.py b/plugins/modules/gcp_spanner_database_facts.py index d3e0c57..90130dd 100644 --- a/plugins/modules/gcp_spanner_database_facts.py +++ b/plugins/modules/gcp_spanner_database_facts.py @@ -49,6 +49,7 @@ options: to a gcp_spanner_instance task and then set this instance field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_spanner_instance.py b/plugins/modules/gcp_spanner_instance.py index d0a41c5..f5927f2 100644 --- a/plugins/modules/gcp_spanner_instance.py +++ b/plugins/modules/gcp_spanner_instance.py @@ -52,6 +52,7 @@ options: - A unique identifier for the instance, which cannot be changed after the instance is created. The name must be between 6 and 30 characters in length. required: true + type: str config: description: - The name of the instance's configuration (similar but not quite the same as @@ -61,21 +62,25 @@ options: - In order to obtain a valid list please consult the [Configuration section of the docs](U(https://cloud.google.com/spanner/docs/instances)). required: true + type: str display_name: description: - The descriptive name for this instance as it appears in UIs. Must be unique per project and between 4 and 30 characters in length. required: true + type: str node_count: description: - The number of nodes allocated to this instance. required: false default: '1' + type: int labels: description: - 'An object containing a list of "key": value pairs.' - 'Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.' required: false + type: dict extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances)' diff --git a/plugins/modules/gcp_sql_database.py b/plugins/modules/gcp_sql_database.py index 608cb2a..523ea83 100644 --- a/plugins/modules/gcp_sql_database.py +++ b/plugins/modules/gcp_sql_database.py @@ -51,19 +51,23 @@ options: description: - The MySQL charset value. required: false + type: str collation: description: - The MySQL collation value. required: false + type: str name: description: - The name of the database in the Cloud SQL instance. - This does not include the project ID or instance name. required: true + type: str instance: description: - The name of the Cloud SQL instance. This does not include the project ID. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_sql_database_facts.py b/plugins/modules/gcp_sql_database_facts.py index 41d96b1..017f5d3 100644 --- a/plugins/modules/gcp_sql_database_facts.py +++ b/plugins/modules/gcp_sql_database_facts.py @@ -44,6 +44,7 @@ options: description: - The name of the Cloud SQL instance. This does not include the project ID. required: true + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_sql_instance.py b/plugins/modules/gcp_sql_instance.py index 536a7b6..a3c5284 100644 --- a/plugins/modules/gcp_sql_instance.py +++ b/plugins/modules/gcp_sql_instance.py @@ -56,10 +56,12 @@ options: - "* EXTERNAL: A database server that is not managed by Google." - 'Some valid choices include: "FIRST_GEN", "SECOND_GEN", "EXTERNAL"' required: false + type: str connection_name: description: - Connection name of the Cloud SQL instance used in connection strings. required: false + type: str database_version: description: - The database engine type and version. For First Generation instances, can be @@ -69,11 +71,13 @@ options: changed after instance creation.' - 'Some valid choices include: "MYSQL_5_5", "MYSQL_5_6", "MYSQL_5_7", "POSTGRES_9_6"' required: false + type: str failover_replica: description: - The name and status of the failover replica. This property is applicable only to Second Generation instances. required: false + type: dict suboptions: name: description: @@ -81,6 +85,7 @@ options: replica is created for the instance. The name doesn't include the project ID. This property is applicable only to Second Generation instances. required: false + type: str instance_type: description: - The instance type. This can be one of the following. @@ -89,32 +94,39 @@ options: - "* READ_REPLICA_INSTANCE: A Cloud SQL instance configured as a read-replica." - 'Some valid choices include: "CLOUD_SQL_INSTANCE", "ON_PREMISES_INSTANCE", "READ_REPLICA_INSTANCE"' required: false + type: str ipv6_address: description: - The IPv6 address assigned to the instance. This property is applicable only to First Generation instances. required: false + type: str master_instance_name: description: - The name of the instance which will act as master in the replication setup. required: false + type: str max_disk_size: description: - The maximum disk size of the instance in bytes. required: false + type: int name: description: - Name of the Cloud SQL instance. This does not include the project ID. required: true + type: str region: description: - The geographical region. Defaults to us-central or us-central1 depending on the instance type (First Generation or Second Generation/PostgreSQL). required: false + type: str replica_configuration: description: - Configuration specific to failover replicas and read replicas. required: false + type: dict suboptions: failover_target: description: @@ -134,24 +146,29 @@ options: is used only to set up the replication connection and is stored by MySQL in a file named master.info in the data directory. required: false + type: dict suboptions: ca_certificate: description: - PEM representation of the trusted CA's x509 certificate. required: false + type: str client_certificate: description: - PEM representation of the slave's x509 certificate . required: false + type: str client_key: description: - PEM representation of the slave's private key. The corresponding public key is encoded in the client's certificate. required: false + type: str connect_retry_interval: description: - Seconds to wait between connect retries. MySQL's default is 60 seconds. required: false + type: int dump_file_path: description: - Path to a SQL dump file in Google Cloud Storage from which the slave @@ -160,22 +177,27 @@ options: binlog co-ordinates from which replication should begin. This can be accomplished by setting --master-data to 1 when using mysqldump. required: false + type: str master_heartbeat_period: description: - Interval in milliseconds between replication heartbeats. required: false + type: int password: description: - The password for the replication connection. required: false + type: str ssl_cipher: description: - A list of permissible ciphers to use for SSL encryption. required: false + type: str username: description: - The username for the replication connection. required: false + type: str verify_server_certificate: description: - Whether or not to check the master's Common Name value in the certificate @@ -186,20 +208,24 @@ options: description: - The replicas of the instance. required: false + type: list service_account_email_address: description: - The service account email address assigned to the instance. This property is applicable only to Second Generation instances. required: false + type: str settings: description: - The user settings. required: false + type: dict suboptions: database_flags: description: - The database flags passed to the instance at startup. required: false + type: list version_added: 2.9 suboptions: name: @@ -208,17 +234,20 @@ options: include both server options and system variables for MySQL. Flags should be specified with underscores, not hyphens. required: false + type: str value: description: - The value of the flag. Booleans should be set to on for true and off for false. This field must be omitted if the flag doesn't take a value. required: false + type: str ip_configuration: description: - The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled for Second Generation instances. required: false + type: dict suboptions: ipv4_enabled: description: @@ -231,22 +260,26 @@ options: using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168.100.0/24). required: false + type: list suboptions: expiration_time: description: - The time when this access control entry expires in RFC 3339 format, for example 2012-11-15T16:19:00.094Z. required: false + type: str name: description: - An optional label to identify this entry. required: false + type: str value: description: - The whitelisted value for the access control list. For example, to grant access to a client from an external IP (IPv4 or IPv6) address or subnet, use that address or subnet here. required: false + type: str require_ssl: description: - Whether the mysqld should default to 'REQUIRE X509' for users connecting @@ -259,15 +292,18 @@ options: For MySQL instances, this field determines whether the instance is Second Generation (recommended) or First Generation. required: false + type: str availability_type: description: - The availabilityType define if your postgres instance is run zonal or regional. - 'Some valid choices include: "ZONAL", "REGIONAL"' required: false + type: str backup_configuration: description: - The daily backup configuration for the instance. required: false + type: dict suboptions: enabled: description: @@ -284,6 +320,7 @@ options: description: - Define the backup start time in UTC (HH:MM) . required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_sql_user.py b/plugins/modules/gcp_sql_user.py index 6428e7f..0c52ef2 100644 --- a/plugins/modules/gcp_sql_user.py +++ b/plugins/modules/gcp_sql_user.py @@ -53,10 +53,12 @@ options: to an empty string. For update operations, host is specified as part of the request URL. The host name cannot be updated after insertion. required: true + type: str name: description: - The name of the user in the Cloud SQL instance. required: true + type: str instance: description: - The name of the Cloud SQL instance. This does not include the project ID. @@ -66,10 +68,12 @@ options: to a gcp_sql_instance task and then set this instance field to "{{ name-of-resource }}"' required: true + type: dict password: description: - The password for the user. required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_sql_user_facts.py b/plugins/modules/gcp_sql_user_facts.py index 5b151ef..989652c 100644 --- a/plugins/modules/gcp_sql_user_facts.py +++ b/plugins/modules/gcp_sql_user_facts.py @@ -49,6 +49,7 @@ options: to a gcp_sql_instance task and then set this instance field to "{{ name-of-resource }}"' required: true + type: dict extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_storage_bucket.py b/plugins/modules/gcp_storage_bucket.py index 3c483ef..58ac095 100644 --- a/plugins/modules/gcp_storage_bucket.py +++ b/plugins/modules/gcp_storage_bucket.py @@ -56,6 +56,7 @@ options: description: - Access controls on the bucket. required: false + type: list suboptions: bucket: description: @@ -66,6 +67,7 @@ options: to a gcp_storage_bucket task and then set this bucket field to "{{ name-of-resource }}"' required: true + type: dict entity: description: - 'The entity holding the permission, in one of the following forms: user-userId @@ -76,59 +78,71 @@ options: - To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com. required: true + type: str entity_id: description: - The ID for the entity. required: false + type: str project_team: description: - The project team associated with the entity. required: false + type: dict suboptions: project_number: description: - The project team associated with the entity. required: false + type: str team: description: - The team. - 'Some valid choices include: "editors", "owners", "viewers"' required: false + type: str role: description: - The access permission for the entity. - 'Some valid choices include: "OWNER", "READER", "WRITER"' required: false + type: str cors: description: - The bucket's Cross-Origin Resource Sharing (CORS) configuration. required: false + type: list suboptions: max_age_seconds: description: - The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses. required: false + type: int method: description: - 'The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".' required: false + type: list origin: description: - The list of Origins eligible to receive CORS response headers. - 'Note: "*" is permitted in the list of origins, and means "any Origin".' required: false + type: list response_header: description: - The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains. required: false + type: list default_object_acl: description: - Default access controls to apply to new objects when no ACL is provided. required: false + type: list version_added: 2.7 suboptions: bucket: @@ -140,6 +154,7 @@ options: to a gcp_storage_bucket task and then set this bucket field to "{{ name-of-resource }}"' required: true + type: dict entity: description: - 'The entity holding the permission, in one of the following forms: * user-{{userId}} @@ -148,58 +163,69 @@ options: (such as "domain-example.com") * project-team-{{projectId}} * allUsers * allAuthenticatedUsers .' required: true + type: str object: description: - The name of the object, if applied to an object. required: false + type: str role: description: - The access permission for the entity. - 'Some valid choices include: "OWNER", "READER"' required: true + type: str lifecycle: description: - The bucket's lifecycle configuration. - See U(https://developers.google.com/storage/docs/lifecycle) for more information. required: false + type: dict suboptions: rule: description: - A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken. required: false + type: list suboptions: action: description: - The action to take. required: false + type: dict suboptions: storage_class: description: - Target storage class. Required iff the type of the action is SetStorageClass. required: false + type: str type: description: - Type of the action. Currently, only Delete and SetStorageClass are supported. - 'Some valid choices include: "Delete", "SetStorageClass"' required: false + type: str condition: description: - The condition(s) under which the action will be taken. required: false + type: dict suboptions: age_days: description: - Age of an object (in days). This condition is satisfied when an object reaches the specified age. required: false + type: int created_before: description: - A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC. required: false + type: str is_live: description: - Relevant only for versioned objects. If the value is true, this @@ -213,49 +239,59 @@ options: will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, STANDARD, and DURABLE_REDUCED_AVAILABILITY. required: false + type: list num_newer_versions: description: - 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. required: false + type: int location: description: - The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list. required: false + type: str logging: description: - The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs. required: false + type: dict suboptions: log_bucket: description: - The destination bucket where the current bucket's logs should be placed. required: false + type: str log_object_prefix: description: - A prefix for log object names. required: false + type: str metageneration: description: - The metadata generation of this bucket. required: false + type: int name: description: - The name of the bucket. required: false + type: str owner: description: - The owner of the bucket. This is always the project team's owner group. required: false + type: dict suboptions: entity: description: - The entity, in the form project-owner-projectId. required: false + type: str storage_class: description: - The bucket's default storage class, used whenever no storageClass is specified @@ -267,10 +303,12 @@ options: - 'Some valid choices include: "MULTI_REGIONAL", "REGIONAL", "STANDARD", "NEARLINE", "COLDLINE", "DURABLE_REDUCED_AVAILABILITY"' required: false + type: str versioning: description: - The bucket's versioning configuration. required: false + type: dict suboptions: enabled: description: @@ -283,6 +321,7 @@ options: accessing bucket contents as a web site. See the Static Website Examples for more information. required: false + type: dict suboptions: main_page_suffix: description: @@ -291,16 +330,19 @@ options: object. This allows the creation of index.html objects to represent directory pages. required: false + type: str not_found_page: description: - If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result. required: false + type: str project: description: - A valid API project identifier. required: false + type: str predefined_default_object_acl: description: - Apply a predefined set of default object access controls to this bucket. @@ -317,6 +359,7 @@ options: - 'Some valid choices include: "authenticatedRead", "bucketOwnerFullControl", "bucketOwnerRead", "private", "projectPrivate", "publicRead"' required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_storage_bucket_access_control.py b/plugins/modules/gcp_storage_bucket_access_control.py index a91068c..4dac53b 100644 --- a/plugins/modules/gcp_storage_bucket_access_control.py +++ b/plugins/modules/gcp_storage_bucket_access_control.py @@ -65,6 +65,7 @@ options: to a gcp_storage_bucket task and then set this bucket field to "{{ name-of-resource }}"' required: true + type: dict entity: description: - 'The entity holding the permission, in one of the following forms: user-userId @@ -74,29 +75,35 @@ options: - To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com. required: true + type: str entity_id: description: - The ID for the entity. required: false + type: str project_team: description: - The project team associated with the entity. required: false + type: dict suboptions: project_number: description: - The project team associated with the entity. required: false + type: str team: description: - The team. - 'Some valid choices include: "editors", "owners", "viewers"' required: false + type: str role: description: - The access permission for the entity. - 'Some valid choices include: "OWNER", "READER", "WRITER"' required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_storage_object.py b/plugins/modules/gcp_storage_object.py index f373c6b..99b5c46 100644 --- a/plugins/modules/gcp_storage_object.py +++ b/plugins/modules/gcp_storage_object.py @@ -52,6 +52,7 @@ options: - Upload or download from the bucket. - 'Some valid choices include: "download", "upload"' required: false + type: str overwrite: description: - "'Overwrite the file on the bucket/local machine. If overwrite is false and @@ -62,14 +63,17 @@ options: description: - Source location of file (may be local machine or cloud depending on action). required: false + type: path dest: description: - Destination location of file (may be local machine or cloud depending on action). required: false + type: path bucket: description: - The name of the bucket. required: false + type: str extends_documentation_fragment: gcp ''' diff --git a/plugins/modules/gcp_tpu_node.py b/plugins/modules/gcp_tpu_node.py index d0b815c..e7325f2 100644 --- a/plugins/modules/gcp_tpu_node.py +++ b/plugins/modules/gcp_tpu_node.py @@ -51,24 +51,29 @@ options: description: - The immutable name of the TPU. required: true + type: str description: description: - The user-supplied description of the TPU. Maximum of 512 characters. required: false + type: str accelerator_type: description: - The type of hardware accelerators associated with this node. required: true + type: str tensorflow_version: description: - The version of Tensorflow running in the Node. required: true + type: str network: description: - The name of a network to peer the TPU node to. It must be a preexisting Compute Engine network inside of the project on which this API has been activated. If none is provided, "default" will be used. required: false + type: str cidr_block: description: - The CIDR block that the TPU node will use when selecting an IP address. This @@ -80,10 +85,12 @@ options: network, or the provided network is peered with another network that is using that CIDR block. required: true + type: str scheduling_config: description: - Sets the scheduling options for this TPU instance. required: false + type: dict suboptions: preemptible: description: @@ -95,10 +102,12 @@ options: description: - Resource labels to represent user provided metadata. required: false + type: dict zone: description: - The GCP location for the TPU. required: true + type: str extends_documentation_fragment: gcp notes: - 'API Reference: U(https://cloud.google.com/tpu/docs/reference/rest/)' diff --git a/plugins/modules/gcp_tpu_node_facts.py b/plugins/modules/gcp_tpu_node_facts.py index f11e6ae..ab4bd8c 100644 --- a/plugins/modules/gcp_tpu_node_facts.py +++ b/plugins/modules/gcp_tpu_node_facts.py @@ -44,6 +44,7 @@ options: description: - The GCP location for the TPU. required: true + type: str extends_documentation_fragment: gcp '''