mirror of
https://github.com/ansible-collections/google.cloud.git
synced 2025-04-09 12:20:27 -07:00
[DO NOT MERGE] 3.0.0 staging branch
Signed-off-by: Modular Magician <magic-modules@google.com>
This commit is contained in:
parent
f526d210f6
commit
bafefea662
24 changed files with 57 additions and 133 deletions
|
@ -77,7 +77,7 @@ options:
|
||||||
Predefined roles that have equivalent primitive roles are swapped by the
|
Predefined roles that have equivalent primitive roles are swapped by the
|
||||||
API to their Primitive counterparts, and will show a diff post-create. See
|
API to their Primitive counterparts, and will show a diff post-create. See
|
||||||
[official docs](U(https://cloud.google.com/bigquery/docs/access-control)).
|
[official docs](U(https://cloud.google.com/bigquery/docs/access-control)).
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
special_group:
|
special_group:
|
||||||
description:
|
description:
|
||||||
|
@ -489,7 +489,7 @@ def main():
|
||||||
options=dict(
|
options=dict(
|
||||||
domain=dict(type='str'),
|
domain=dict(type='str'),
|
||||||
group_by_email=dict(type='str'),
|
group_by_email=dict(type='str'),
|
||||||
role=dict(type='str'),
|
role=dict(required=True, type='str'),
|
||||||
special_group=dict(type='str'),
|
special_group=dict(type='str'),
|
||||||
user_by_email=dict(type='str'),
|
user_by_email=dict(type='str'),
|
||||||
view=dict(
|
view=dict(
|
||||||
|
|
|
@ -109,7 +109,7 @@ options:
|
||||||
- Branch and tag names in trigger templates are interpreted as regular expressions.
|
- Branch and tag names in trigger templates are interpreted as regular expressions.
|
||||||
Any branch or tag change that matches that regular expression will trigger a
|
Any branch or tag change that matches that regular expression will trigger a
|
||||||
build.
|
build.
|
||||||
required: false
|
required: true
|
||||||
type: dict
|
type: dict
|
||||||
suboptions:
|
suboptions:
|
||||||
project_id:
|
project_id:
|
||||||
|
@ -176,7 +176,7 @@ options:
|
||||||
steps:
|
steps:
|
||||||
description:
|
description:
|
||||||
- The operations to be performed on the workspace.
|
- The operations to be performed on the workspace.
|
||||||
required: false
|
required: true
|
||||||
type: list
|
type: list
|
||||||
suboptions:
|
suboptions:
|
||||||
name:
|
name:
|
||||||
|
@ -194,7 +194,7 @@ options:
|
||||||
- If you built an image in a previous build step, it will be stored in
|
- If you built an image in a previous build step, it will be stored in
|
||||||
the host's Docker daemon's cache and is available to use as the name
|
the host's Docker daemon's cache and is available to use as the name
|
||||||
for a later build step.
|
for a later build step.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
args:
|
args:
|
||||||
description:
|
description:
|
||||||
|
@ -274,14 +274,14 @@ options:
|
||||||
- Volume names must be unique per build step and must be valid names
|
- Volume names must be unique per build step and must be valid names
|
||||||
for Docker volumes. Each named volume must be used by at least two
|
for Docker volumes. Each named volume must be used by at least two
|
||||||
build steps.
|
build steps.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
path:
|
path:
|
||||||
description:
|
description:
|
||||||
- Path at which to mount the volume.
|
- Path at which to mount the volume.
|
||||||
- Paths must be absolute and cannot conflict with other volume paths
|
- Paths must be absolute and cannot conflict with other volume paths
|
||||||
on the same build step or with certain reserved volume paths.
|
on the same build step or with certain reserved volume paths.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
wait_for:
|
wait_for:
|
||||||
description:
|
description:
|
||||||
|
@ -648,6 +648,7 @@ def main():
|
||||||
ignored_files=dict(type='list', elements='str'),
|
ignored_files=dict(type='list', elements='str'),
|
||||||
included_files=dict(type='list', elements='str'),
|
included_files=dict(type='list', elements='str'),
|
||||||
trigger_template=dict(
|
trigger_template=dict(
|
||||||
|
required=True,
|
||||||
type='dict',
|
type='dict',
|
||||||
options=dict(
|
options=dict(
|
||||||
project_id=dict(type='str'),
|
project_id=dict(type='str'),
|
||||||
|
@ -664,10 +665,11 @@ def main():
|
||||||
tags=dict(type='list', elements='str'),
|
tags=dict(type='list', elements='str'),
|
||||||
images=dict(type='list', elements='str'),
|
images=dict(type='list', elements='str'),
|
||||||
steps=dict(
|
steps=dict(
|
||||||
|
required=True,
|
||||||
type='list',
|
type='list',
|
||||||
elements='dict',
|
elements='dict',
|
||||||
options=dict(
|
options=dict(
|
||||||
name=dict(type='str'),
|
name=dict(required=True, type='str'),
|
||||||
args=dict(type='list', elements='str'),
|
args=dict(type='list', elements='str'),
|
||||||
env=dict(type='list', elements='str'),
|
env=dict(type='list', elements='str'),
|
||||||
id=dict(type='str'),
|
id=dict(type='str'),
|
||||||
|
@ -676,14 +678,15 @@ def main():
|
||||||
secret_env=dict(type='list', elements='str'),
|
secret_env=dict(type='list', elements='str'),
|
||||||
timeout=dict(type='str'),
|
timeout=dict(type='str'),
|
||||||
timing=dict(type='str'),
|
timing=dict(type='str'),
|
||||||
volumes=dict(type='list', elements='dict', options=dict(name=dict(type='str'), path=dict(type='str'))),
|
volumes=dict(
|
||||||
|
type='list', elements='dict', options=dict(name=dict(required=True, type='str'), path=dict(required=True, type='str'))
|
||||||
|
),
|
||||||
wait_for=dict(type='list', elements='str'),
|
wait_for=dict(type='list', elements='str'),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
)
|
||||||
mutually_exclusive=[['build', 'filename']],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if not module.params['scopes']:
|
if not module.params['scopes']:
|
||||||
|
|
|
@ -117,7 +117,7 @@ options:
|
||||||
description:
|
description:
|
||||||
- The URL pointing to the hosted repository where the function is defined
|
- The URL pointing to the hosted repository where the function is defined
|
||||||
.
|
.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
https_trigger:
|
https_trigger:
|
||||||
description:
|
description:
|
||||||
|
@ -392,7 +392,7 @@ def main():
|
||||||
environment_variables=dict(type='dict'),
|
environment_variables=dict(type='dict'),
|
||||||
source_archive_url=dict(type='str'),
|
source_archive_url=dict(type='str'),
|
||||||
source_upload_url=dict(type='str'),
|
source_upload_url=dict(type='str'),
|
||||||
source_repository=dict(type='dict', options=dict(url=dict(type='str'))),
|
source_repository=dict(type='dict', options=dict(url=dict(required=True, type='str'))),
|
||||||
https_trigger=dict(type='dict', options=dict()),
|
https_trigger=dict(type='dict', options=dict()),
|
||||||
event_trigger=dict(
|
event_trigger=dict(
|
||||||
type='dict', options=dict(event_type=dict(required=True, type='str'), resource=dict(required=True, type='str'), service=dict(type='str'))
|
type='dict', options=dict(event_type=dict(required=True, type='str'), resource=dict(required=True, type='str'), service=dict(type='str'))
|
||||||
|
|
|
@ -246,7 +246,7 @@ options:
|
||||||
description:
|
description:
|
||||||
- Service account email to be used for generating OAuth token.
|
- Service account email to be used for generating OAuth token.
|
||||||
- The service account must be within the same project as the job.
|
- The service account must be within the same project as the job.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
scope:
|
scope:
|
||||||
description:
|
description:
|
||||||
|
@ -266,7 +266,7 @@ options:
|
||||||
description:
|
description:
|
||||||
- Service account email to be used for generating OAuth token.
|
- Service account email to be used for generating OAuth token.
|
||||||
- The service account must be within the same project as the job.
|
- The service account must be within the same project as the job.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
audience:
|
audience:
|
||||||
description:
|
description:
|
||||||
|
@ -636,13 +636,12 @@ def main():
|
||||||
http_method=dict(type='str'),
|
http_method=dict(type='str'),
|
||||||
body=dict(type='str'),
|
body=dict(type='str'),
|
||||||
headers=dict(type='dict'),
|
headers=dict(type='dict'),
|
||||||
oauth_token=dict(type='dict', options=dict(service_account_email=dict(type='str'), scope=dict(type='str'))),
|
oauth_token=dict(type='dict', options=dict(service_account_email=dict(required=True, type='str'), scope=dict(type='str'))),
|
||||||
oidc_token=dict(type='dict', options=dict(service_account_email=dict(type='str'), audience=dict(type='str'))),
|
oidc_token=dict(type='dict', options=dict(service_account_email=dict(required=True, type='str'), audience=dict(type='str'))),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
region=dict(required=True, type='str'),
|
region=dict(required=True, type='str'),
|
||||||
),
|
)
|
||||||
mutually_exclusive=[['app_engine_http_target', 'http_target', 'pubsub_target']],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if not module.params['scopes']:
|
if not module.params['scopes']:
|
||||||
|
|
|
@ -67,14 +67,13 @@ options:
|
||||||
signed_url_cache_max_age_sec:
|
signed_url_cache_max_age_sec:
|
||||||
description:
|
description:
|
||||||
- Maximum number of seconds the response to a signed URL request will be considered
|
- Maximum number of seconds the response to a signed URL request will be considered
|
||||||
fresh. Defaults to 1hr (3600s). After this time period, the response will
|
fresh. After this time period, the response will be revalidated before being
|
||||||
be revalidated before being served.
|
served.
|
||||||
- 'When serving responses to signed URL requests, Cloud CDN will internally
|
- 'When serving responses to signed URL requests, Cloud CDN will internally
|
||||||
behave as though all responses from this backend had a "Cache-Control: public,
|
behave as though all responses from this backend had a "Cache-Control: public,
|
||||||
max-age=[TTL]" header, regardless of any existing Cache-Control header.
|
max-age=[TTL]" header, regardless of any existing Cache-Control header.
|
||||||
The actual headers served in responses will not be altered.'
|
The actual headers served in responses will not be altered.'
|
||||||
required: false
|
required: true
|
||||||
default: '3600'
|
|
||||||
type: int
|
type: int
|
||||||
description:
|
description:
|
||||||
description:
|
description:
|
||||||
|
@ -186,8 +185,8 @@ cdnPolicy:
|
||||||
signedUrlCacheMaxAgeSec:
|
signedUrlCacheMaxAgeSec:
|
||||||
description:
|
description:
|
||||||
- Maximum number of seconds the response to a signed URL request will be considered
|
- Maximum number of seconds the response to a signed URL request will be considered
|
||||||
fresh. Defaults to 1hr (3600s). After this time period, the response will
|
fresh. After this time period, the response will be revalidated before being
|
||||||
be revalidated before being served.
|
served.
|
||||||
- 'When serving responses to signed URL requests, Cloud CDN will internally
|
- 'When serving responses to signed URL requests, Cloud CDN will internally
|
||||||
behave as though all responses from this backend had a "Cache-Control: public,
|
behave as though all responses from this backend had a "Cache-Control: public,
|
||||||
max-age=[TTL]" header, regardless of any existing Cache-Control header. The
|
max-age=[TTL]" header, regardless of any existing Cache-Control header. The
|
||||||
|
@ -254,7 +253,7 @@ def main():
|
||||||
argument_spec=dict(
|
argument_spec=dict(
|
||||||
state=dict(default='present', choices=['present', 'absent'], type='str'),
|
state=dict(default='present', choices=['present', 'absent'], type='str'),
|
||||||
bucket_name=dict(required=True, type='str'),
|
bucket_name=dict(required=True, type='str'),
|
||||||
cdn_policy=dict(type='dict', options=dict(signed_url_cache_max_age_sec=dict(default=3600, type='int'))),
|
cdn_policy=dict(type='dict', options=dict(signed_url_cache_max_age_sec=dict(required=True, type='int'))),
|
||||||
description=dict(type='str'),
|
description=dict(type='str'),
|
||||||
enable_cdn=dict(type='bool'),
|
enable_cdn=dict(type='bool'),
|
||||||
name=dict(required=True, type='str'),
|
name=dict(required=True, type='str'),
|
||||||
|
|
|
@ -126,8 +126,8 @@ resources:
|
||||||
signedUrlCacheMaxAgeSec:
|
signedUrlCacheMaxAgeSec:
|
||||||
description:
|
description:
|
||||||
- Maximum number of seconds the response to a signed URL request will be
|
- Maximum number of seconds the response to a signed URL request will be
|
||||||
considered fresh. Defaults to 1hr (3600s). After this time period, the
|
considered fresh. After this time period, the response will be revalidated
|
||||||
response will be revalidated before being served.
|
before being served.
|
||||||
- 'When serving responses to signed URL requests, Cloud CDN will internally
|
- 'When serving responses to signed URL requests, Cloud CDN will internally
|
||||||
behave as though all responses from this backend had a "Cache-Control:
|
behave as though all responses from this backend had a "Cache-Control:
|
||||||
public, max-age=[TTL]" header, regardless of any existing Cache-Control
|
public, max-age=[TTL]" header, regardless of any existing Cache-Control
|
||||||
|
|
|
@ -105,7 +105,7 @@ options:
|
||||||
- Backend services cannot mix Instance Group and Network Endpoint Group backends.
|
- Backend services cannot mix Instance Group and Network Endpoint Group backends.
|
||||||
- Note that you must specify an Instance Group or Network Endpoint Group resource
|
- Note that you must specify an Instance Group or Network Endpoint Group resource
|
||||||
using the fully-qualified URL, rather than a partial URL.
|
using the fully-qualified URL, rather than a partial URL.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
max_connections:
|
max_connections:
|
||||||
description:
|
description:
|
||||||
|
@ -750,7 +750,7 @@ def main():
|
||||||
balancing_mode=dict(default='UTILIZATION', type='str'),
|
balancing_mode=dict(default='UTILIZATION', type='str'),
|
||||||
capacity_scaler=dict(default=1.0, type='str'),
|
capacity_scaler=dict(default=1.0, type='str'),
|
||||||
description=dict(type='str'),
|
description=dict(type='str'),
|
||||||
group=dict(type='str'),
|
group=dict(required=True, type='str'),
|
||||||
max_connections=dict(type='int'),
|
max_connections=dict(type='int'),
|
||||||
max_connections_per_instance=dict(type='int'),
|
max_connections_per_instance=dict(type='int'),
|
||||||
max_connections_per_endpoint=dict(type='int'),
|
max_connections_per_endpoint=dict(type='int'),
|
||||||
|
|
|
@ -512,7 +512,6 @@ def main():
|
||||||
target_tags=dict(type='list', elements='str'),
|
target_tags=dict(type='list', elements='str'),
|
||||||
),
|
),
|
||||||
mutually_exclusive=[
|
mutually_exclusive=[
|
||||||
['allowed', 'denied'],
|
|
||||||
['destination_ranges', 'source_ranges', 'source_tags'],
|
['destination_ranges', 'source_ranges', 'source_tags'],
|
||||||
['destination_ranges', 'source_ranges'],
|
['destination_ranges', 'source_ranges'],
|
||||||
['source_service_accounts', 'source_tags', 'target_tags'],
|
['source_service_accounts', 'source_tags', 'target_tags'],
|
||||||
|
|
|
@ -98,12 +98,6 @@ options:
|
||||||
field to "{{ name-of-resource }}"'
|
field to "{{ name-of-resource }}"'
|
||||||
required: false
|
required: false
|
||||||
type: dict
|
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:
|
load_balancing_scheme:
|
||||||
description:
|
description:
|
||||||
- This signifies what the ForwardingRule will be used for and can be EXTERNAL,
|
- This signifies what the ForwardingRule will be used for and can be EXTERNAL,
|
||||||
|
@ -367,11 +361,6 @@ backendService:
|
||||||
load balancing.
|
load balancing.
|
||||||
returned: success
|
returned: success
|
||||||
type: dict
|
type: dict
|
||||||
ipVersion:
|
|
||||||
description:
|
|
||||||
- ipVersion is not a valid field for regional forwarding rules.
|
|
||||||
returned: success
|
|
||||||
type: str
|
|
||||||
loadBalancingScheme:
|
loadBalancingScheme:
|
||||||
description:
|
description:
|
||||||
- This signifies what the ForwardingRule will be used for and can be EXTERNAL, INTERNAL,
|
- This signifies what the ForwardingRule will be used for and can be EXTERNAL, INTERNAL,
|
||||||
|
@ -504,7 +493,6 @@ def main():
|
||||||
ip_address=dict(type='str'),
|
ip_address=dict(type='str'),
|
||||||
ip_protocol=dict(type='str'),
|
ip_protocol=dict(type='str'),
|
||||||
backend_service=dict(type='dict'),
|
backend_service=dict(type='dict'),
|
||||||
ip_version=dict(type='str'),
|
|
||||||
load_balancing_scheme=dict(type='str'),
|
load_balancing_scheme=dict(type='str'),
|
||||||
name=dict(required=True, type='str'),
|
name=dict(required=True, type='str'),
|
||||||
network=dict(type='dict'),
|
network=dict(type='dict'),
|
||||||
|
@ -585,7 +573,6 @@ def resource_to_request(module):
|
||||||
u'IPAddress': module.params.get('ip_address'),
|
u'IPAddress': module.params.get('ip_address'),
|
||||||
u'IPProtocol': module.params.get('ip_protocol'),
|
u'IPProtocol': module.params.get('ip_protocol'),
|
||||||
u'backendService': replace_resource_dict(module.params.get(u'backend_service', {}), 'selfLink'),
|
u'backendService': replace_resource_dict(module.params.get(u'backend_service', {}), 'selfLink'),
|
||||||
u'ipVersion': module.params.get('ip_version'),
|
|
||||||
u'loadBalancingScheme': module.params.get('load_balancing_scheme'),
|
u'loadBalancingScheme': module.params.get('load_balancing_scheme'),
|
||||||
u'name': module.params.get('name'),
|
u'name': module.params.get('name'),
|
||||||
u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
|
u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
|
||||||
|
@ -667,7 +654,6 @@ def response_to_hash(module, response):
|
||||||
u'IPAddress': response.get(u'IPAddress'),
|
u'IPAddress': response.get(u'IPAddress'),
|
||||||
u'IPProtocol': response.get(u'IPProtocol'),
|
u'IPProtocol': response.get(u'IPProtocol'),
|
||||||
u'backendService': response.get(u'backendService'),
|
u'backendService': response.get(u'backendService'),
|
||||||
u'ipVersion': response.get(u'ipVersion'),
|
|
||||||
u'loadBalancingScheme': response.get(u'loadBalancingScheme'),
|
u'loadBalancingScheme': response.get(u'loadBalancingScheme'),
|
||||||
u'name': response.get(u'name'),
|
u'name': response.get(u'name'),
|
||||||
u'network': response.get(u'network'),
|
u'network': response.get(u'network'),
|
||||||
|
|
|
@ -171,11 +171,6 @@ resources:
|
||||||
load balancing.
|
load balancing.
|
||||||
returned: success
|
returned: success
|
||||||
type: dict
|
type: dict
|
||||||
ipVersion:
|
|
||||||
description:
|
|
||||||
- ipVersion is not a valid field for regional forwarding rules.
|
|
||||||
returned: success
|
|
||||||
type: str
|
|
||||||
loadBalancingScheme:
|
loadBalancingScheme:
|
||||||
description:
|
description:
|
||||||
- This signifies what the ForwardingRule will be used for and can be EXTERNAL,
|
- This signifies what the ForwardingRule will be used for and can be EXTERNAL,
|
||||||
|
|
|
@ -895,8 +895,7 @@ def main():
|
||||||
port_specification=dict(type='str'),
|
port_specification=dict(type='str'),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
)
|
||||||
mutually_exclusive=[['http2_health_check', 'http_health_check', 'https_health_check', 'ssl_health_check', 'tcp_health_check']],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if not module.params['scopes']:
|
if not module.params['scopes']:
|
||||||
|
|
|
@ -89,7 +89,7 @@ options:
|
||||||
- The type of supported feature.
|
- The type of supported feature.
|
||||||
- 'Some valid choices include: "MULTI_IP_SUBNET", "SECURE_BOOT", "UEFI_COMPATIBLE",
|
- 'Some valid choices include: "MULTI_IP_SUBNET", "SECURE_BOOT", "UEFI_COMPATIBLE",
|
||||||
"VIRTIO_SCSI_MULTIQUEUE", "WINDOWS"'
|
"VIRTIO_SCSI_MULTIQUEUE", "WINDOWS"'
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
image_encryption_key:
|
image_encryption_key:
|
||||||
description:
|
description:
|
||||||
|
@ -496,7 +496,7 @@ def main():
|
||||||
description=dict(type='str'),
|
description=dict(type='str'),
|
||||||
disk_size_gb=dict(type='int'),
|
disk_size_gb=dict(type='int'),
|
||||||
family=dict(type='str'),
|
family=dict(type='str'),
|
||||||
guest_os_features=dict(type='list', elements='dict', options=dict(type=dict(type='str'))),
|
guest_os_features=dict(type='list', elements='dict', options=dict(type=dict(required=True, type='str'))),
|
||||||
image_encryption_key=dict(type='dict', options=dict(raw_key=dict(type='str'))),
|
image_encryption_key=dict(type='dict', options=dict(raw_key=dict(type='str'))),
|
||||||
labels=dict(type='dict'),
|
labels=dict(type='dict'),
|
||||||
licenses=dict(type='list', elements='str'),
|
licenses=dict(type='list', elements='str'),
|
||||||
|
|
|
@ -54,17 +54,6 @@ options:
|
||||||
modify this field.
|
modify this field.
|
||||||
required: false
|
required: false
|
||||||
type: str
|
type: str
|
||||||
ipv4_range:
|
|
||||||
description:
|
|
||||||
- If this field is specified, a deprecated legacy network is created.
|
|
||||||
- You will no longer be able to create a legacy network on Feb 1, 2020.
|
|
||||||
- See the [legacy network docs](U(https://cloud.google.com/vpc/docs/legacy)) for
|
|
||||||
more details.
|
|
||||||
- The range of internal addresses that are legal on this legacy network.
|
|
||||||
- '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:
|
name:
|
||||||
description:
|
description:
|
||||||
- Name of the resource. Provided by the client when the resource is created. The
|
- Name of the resource. Provided by the client when the resource is created. The
|
||||||
|
@ -183,17 +172,6 @@ id:
|
||||||
- The unique identifier for the resource.
|
- The unique identifier for the resource.
|
||||||
returned: success
|
returned: success
|
||||||
type: int
|
type: int
|
||||||
ipv4_range:
|
|
||||||
description:
|
|
||||||
- If this field is specified, a deprecated legacy network is created.
|
|
||||||
- You will no longer be able to create a legacy network on Feb 1, 2020.
|
|
||||||
- See the [legacy network docs](U(https://cloud.google.com/vpc/docs/legacy)) for
|
|
||||||
more details.
|
|
||||||
- The range of internal addresses that are legal on this legacy network.
|
|
||||||
- 'This range is a CIDR specification, for example: `192.168.0.0/16`.'
|
|
||||||
- The resource must be recreated to modify this field.
|
|
||||||
returned: success
|
|
||||||
type: str
|
|
||||||
name:
|
name:
|
||||||
description:
|
description:
|
||||||
- Name of the resource. Provided by the client when the resource is created. The
|
- Name of the resource. Provided by the client when the resource is created. The
|
||||||
|
@ -267,12 +245,10 @@ def main():
|
||||||
argument_spec=dict(
|
argument_spec=dict(
|
||||||
state=dict(default='present', choices=['present', 'absent'], type='str'),
|
state=dict(default='present', choices=['present', 'absent'], type='str'),
|
||||||
description=dict(type='str'),
|
description=dict(type='str'),
|
||||||
ipv4_range=dict(type='str'),
|
|
||||||
name=dict(required=True, type='str'),
|
name=dict(required=True, type='str'),
|
||||||
auto_create_subnetworks=dict(type='bool'),
|
auto_create_subnetworks=dict(type='bool'),
|
||||||
routing_config=dict(type='dict', options=dict(routing_mode=dict(required=True, type='str'))),
|
routing_config=dict(type='dict', options=dict(routing_mode=dict(required=True, type='str'))),
|
||||||
),
|
)
|
||||||
mutually_exclusive=[['auto_create_subnetworks', 'ipv4_range']],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if not module.params['scopes']:
|
if not module.params['scopes']:
|
||||||
|
@ -338,7 +314,6 @@ def resource_to_request(module):
|
||||||
request = {
|
request = {
|
||||||
u'kind': 'compute#network',
|
u'kind': 'compute#network',
|
||||||
u'description': module.params.get('description'),
|
u'description': module.params.get('description'),
|
||||||
u'IPv4Range': module.params.get('ipv4_range'),
|
|
||||||
u'name': module.params.get('name'),
|
u'name': module.params.get('name'),
|
||||||
u'autoCreateSubnetworks': module.params.get('auto_create_subnetworks'),
|
u'autoCreateSubnetworks': module.params.get('auto_create_subnetworks'),
|
||||||
u'routingConfig': NetworkRoutingconfig(module.params.get('routing_config', {}), module).to_request(),
|
u'routingConfig': NetworkRoutingconfig(module.params.get('routing_config', {}), module).to_request(),
|
||||||
|
@ -410,7 +385,6 @@ def response_to_hash(module, response):
|
||||||
u'description': module.params.get('description'),
|
u'description': module.params.get('description'),
|
||||||
u'gatewayIPv4': response.get(u'gatewayIPv4'),
|
u'gatewayIPv4': response.get(u'gatewayIPv4'),
|
||||||
u'id': response.get(u'id'),
|
u'id': response.get(u'id'),
|
||||||
u'IPv4Range': module.params.get('ipv4_range'),
|
|
||||||
u'name': module.params.get('name'),
|
u'name': module.params.get('name'),
|
||||||
u'subnetworks': response.get(u'subnetworks'),
|
u'subnetworks': response.get(u'subnetworks'),
|
||||||
u'autoCreateSubnetworks': module.params.get('auto_create_subnetworks'),
|
u'autoCreateSubnetworks': module.params.get('auto_create_subnetworks'),
|
||||||
|
|
|
@ -129,17 +129,6 @@ resources:
|
||||||
- The unique identifier for the resource.
|
- The unique identifier for the resource.
|
||||||
returned: success
|
returned: success
|
||||||
type: int
|
type: int
|
||||||
ipv4_range:
|
|
||||||
description:
|
|
||||||
- If this field is specified, a deprecated legacy network is created.
|
|
||||||
- You will no longer be able to create a legacy network on Feb 1, 2020.
|
|
||||||
- See the [legacy network docs](U(https://cloud.google.com/vpc/docs/legacy))
|
|
||||||
for more details.
|
|
||||||
- The range of internal addresses that are legal on this legacy network.
|
|
||||||
- 'This range is a CIDR specification, for example: `192.168.0.0/16`.'
|
|
||||||
- The resource must be recreated to modify this field.
|
|
||||||
returned: success
|
|
||||||
type: str
|
|
||||||
name:
|
name:
|
||||||
description:
|
description:
|
||||||
- Name of the resource. Provided by the client when the resource is created.
|
- Name of the resource. Provided by the client when the resource is created.
|
||||||
|
|
|
@ -46,7 +46,7 @@ description:
|
||||||
gateway. Packets that do not match any route in the sending virtual machine's routing
|
gateway. Packets that do not match any route in the sending virtual machine's routing
|
||||||
table will be dropped.
|
table will be dropped.
|
||||||
- A Route resource must have exactly one specification of either nextHopGateway, nextHopInstance,
|
- A Route resource must have exactly one specification of either nextHopGateway, nextHopInstance,
|
||||||
nextHopIp, or nextHopVpnTunnel.
|
nextHopIp, nextHopVpnTunnel, or nextHopIlb.
|
||||||
short_description: Creates a GCP Route
|
short_description: Creates a GCP Route
|
||||||
version_added: '2.6'
|
version_added: '2.6'
|
||||||
author: Google Inc. (@googlecloudplatform)
|
author: Google Inc. (@googlecloudplatform)
|
||||||
|
|
|
@ -116,7 +116,7 @@ options:
|
||||||
range:
|
range:
|
||||||
description:
|
description:
|
||||||
- The IP range to advertise. The value must be a CIDR-formatted string.
|
- The IP range to advertise. The value must be a CIDR-formatted string.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
description:
|
description:
|
||||||
description:
|
description:
|
||||||
|
@ -329,7 +329,7 @@ def main():
|
||||||
asn=dict(required=True, type='int'),
|
asn=dict(required=True, type='int'),
|
||||||
advertise_mode=dict(default='DEFAULT', type='str'),
|
advertise_mode=dict(default='DEFAULT', type='str'),
|
||||||
advertised_groups=dict(type='list', elements='str'),
|
advertised_groups=dict(type='list', elements='str'),
|
||||||
advertised_ip_ranges=dict(type='list', elements='dict', options=dict(range=dict(type='str'), description=dict(type='str'))),
|
advertised_ip_ranges=dict(type='list', elements='dict', options=dict(range=dict(required=True, type='str'), description=dict(type='str'))),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
region=dict(required=True, type='str'),
|
region=dict(required=True, type='str'),
|
||||||
|
|
|
@ -99,12 +99,6 @@ options:
|
||||||
}}"'
|
}}"'
|
||||||
required: true
|
required: true
|
||||||
type: dict
|
type: dict
|
||||||
enable_flow_logs:
|
|
||||||
description:
|
|
||||||
- Whether to enable flow logging for this subnetwork.
|
|
||||||
required: false
|
|
||||||
type: bool
|
|
||||||
version_added: '2.8'
|
|
||||||
secondary_ip_ranges:
|
secondary_ip_ranges:
|
||||||
description:
|
description:
|
||||||
- An array of configurations for secondary IP ranges for VM instances contained
|
- An array of configurations for secondary IP ranges for VM instances contained
|
||||||
|
@ -263,11 +257,6 @@ network:
|
||||||
- Only networks that are in the distributed mode can have subnetworks.
|
- Only networks that are in the distributed mode can have subnetworks.
|
||||||
returned: success
|
returned: success
|
||||||
type: dict
|
type: dict
|
||||||
enableFlowLogs:
|
|
||||||
description:
|
|
||||||
- Whether to enable flow logging for this subnetwork.
|
|
||||||
returned: success
|
|
||||||
type: bool
|
|
||||||
fingerprint:
|
fingerprint:
|
||||||
description:
|
description:
|
||||||
- Fingerprint of this resource. This field is used internally during updates of
|
- Fingerprint of this resource. This field is used internally during updates of
|
||||||
|
@ -340,7 +329,6 @@ def main():
|
||||||
ip_cidr_range=dict(required=True, type='str'),
|
ip_cidr_range=dict(required=True, type='str'),
|
||||||
name=dict(required=True, type='str'),
|
name=dict(required=True, type='str'),
|
||||||
network=dict(required=True, type='dict'),
|
network=dict(required=True, type='dict'),
|
||||||
enable_flow_logs=dict(type='bool'),
|
|
||||||
secondary_ip_ranges=dict(
|
secondary_ip_ranges=dict(
|
||||||
type='list', elements='dict', options=dict(range_name=dict(required=True, type='str'), ip_cidr_range=dict(required=True, type='str'))
|
type='list', elements='dict', options=dict(range_name=dict(required=True, type='str'), ip_cidr_range=dict(required=True, type='str'))
|
||||||
),
|
),
|
||||||
|
@ -393,8 +381,8 @@ def update(module, link, kind, fetch):
|
||||||
def update_fields(module, request, response):
|
def update_fields(module, request, response):
|
||||||
if response.get('ipCidrRange') != request.get('ipCidrRange'):
|
if response.get('ipCidrRange') != request.get('ipCidrRange'):
|
||||||
ip_cidr_range_update(module, request, response)
|
ip_cidr_range_update(module, request, response)
|
||||||
if response.get('enableFlowLogs') != request.get('enableFlowLogs') or response.get('secondaryIpRanges') != request.get('secondaryIpRanges'):
|
if response.get('secondaryIpRanges') != request.get('secondaryIpRanges'):
|
||||||
enable_flow_logs_update(module, request, response)
|
fingerprint_update(module, request, response)
|
||||||
if response.get('privateIpGoogleAccess') != request.get('privateIpGoogleAccess'):
|
if response.get('privateIpGoogleAccess') != request.get('privateIpGoogleAccess'):
|
||||||
private_ip_google_access_update(module, request, response)
|
private_ip_google_access_update(module, request, response)
|
||||||
|
|
||||||
|
@ -407,12 +395,11 @@ def ip_cidr_range_update(module, request, response):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def enable_flow_logs_update(module, request, response):
|
def fingerprint_update(module, request, response):
|
||||||
auth = GcpSession(module, 'compute')
|
auth = GcpSession(module, 'compute')
|
||||||
auth.patch(
|
auth.patch(
|
||||||
''.join(["https://www.googleapis.com/compute/v1/", "projects/{project}/regions/{region}/subnetworks/{name}"]).format(**module.params),
|
''.join(["https://www.googleapis.com/compute/v1/", "projects/{project}/regions/{region}/subnetworks/{name}"]).format(**module.params),
|
||||||
{
|
{
|
||||||
u'enableFlowLogs': module.params.get('enable_flow_logs'),
|
|
||||||
u'fingerprint': response.get('fingerprint'),
|
u'fingerprint': response.get('fingerprint'),
|
||||||
u'secondaryIpRanges': SubnetworkSecondaryiprangesArray(module.params.get('secondary_ip_ranges', []), module).to_request(),
|
u'secondaryIpRanges': SubnetworkSecondaryiprangesArray(module.params.get('secondary_ip_ranges', []), module).to_request(),
|
||||||
},
|
},
|
||||||
|
@ -441,7 +428,6 @@ def resource_to_request(module):
|
||||||
u'ipCidrRange': module.params.get('ip_cidr_range'),
|
u'ipCidrRange': module.params.get('ip_cidr_range'),
|
||||||
u'name': module.params.get('name'),
|
u'name': module.params.get('name'),
|
||||||
u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
|
u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
|
||||||
u'enableFlowLogs': module.params.get('enable_flow_logs'),
|
|
||||||
u'secondaryIpRanges': SubnetworkSecondaryiprangesArray(module.params.get('secondary_ip_ranges', []), module).to_request(),
|
u'secondaryIpRanges': SubnetworkSecondaryiprangesArray(module.params.get('secondary_ip_ranges', []), module).to_request(),
|
||||||
u'privateIpGoogleAccess': module.params.get('private_ip_google_access'),
|
u'privateIpGoogleAccess': module.params.get('private_ip_google_access'),
|
||||||
u'region': module.params.get('region'),
|
u'region': module.params.get('region'),
|
||||||
|
@ -517,7 +503,6 @@ def response_to_hash(module, response):
|
||||||
u'ipCidrRange': response.get(u'ipCidrRange'),
|
u'ipCidrRange': response.get(u'ipCidrRange'),
|
||||||
u'name': response.get(u'name'),
|
u'name': response.get(u'name'),
|
||||||
u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
|
u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
|
||||||
u'enableFlowLogs': response.get(u'enableFlowLogs'),
|
|
||||||
u'fingerprint': response.get(u'fingerprint'),
|
u'fingerprint': response.get(u'fingerprint'),
|
||||||
u'secondaryIpRanges': SubnetworkSecondaryiprangesArray(response.get(u'secondaryIpRanges', []), module).from_response(),
|
u'secondaryIpRanges': SubnetworkSecondaryiprangesArray(response.get(u'secondaryIpRanges', []), module).from_response(),
|
||||||
u'privateIpGoogleAccess': response.get(u'privateIpGoogleAccess'),
|
u'privateIpGoogleAccess': response.get(u'privateIpGoogleAccess'),
|
||||||
|
|
|
@ -164,11 +164,6 @@ resources:
|
||||||
- Only networks that are in the distributed mode can have subnetworks.
|
- Only networks that are in the distributed mode can have subnetworks.
|
||||||
returned: success
|
returned: success
|
||||||
type: dict
|
type: dict
|
||||||
enableFlowLogs:
|
|
||||||
description:
|
|
||||||
- Whether to enable flow logging for this subnetwork.
|
|
||||||
returned: success
|
|
||||||
type: bool
|
|
||||||
fingerprint:
|
fingerprint:
|
||||||
description:
|
description:
|
||||||
- Fingerprint of this resource. This field is used internally during updates
|
- Fingerprint of this resource. This field is used internally during updates
|
||||||
|
|
|
@ -162,7 +162,7 @@ options:
|
||||||
networks:
|
networks:
|
||||||
description:
|
description:
|
||||||
- The list of VPC networks that can see this zone.
|
- The list of VPC networks that can see this zone.
|
||||||
required: false
|
required: true
|
||||||
type: list
|
type: list
|
||||||
suboptions:
|
suboptions:
|
||||||
network_url:
|
network_url:
|
||||||
|
@ -170,7 +170,7 @@ options:
|
||||||
- The fully qualified URL of the VPC network to bind to.
|
- The fully qualified URL of the VPC network to bind to.
|
||||||
- This should be formatted like `U(https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`)
|
- This should be formatted like `U(https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`)
|
||||||
.
|
.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
project:
|
project:
|
||||||
description:
|
description:
|
||||||
|
@ -412,7 +412,9 @@ def main():
|
||||||
name_server_set=dict(type='str'),
|
name_server_set=dict(type='str'),
|
||||||
labels=dict(type='dict'),
|
labels=dict(type='dict'),
|
||||||
visibility=dict(default='public', type='str'),
|
visibility=dict(default='public', type='str'),
|
||||||
private_visibility_config=dict(type='dict', options=dict(networks=dict(type='list', elements='dict', options=dict(network_url=dict(type='str'))))),
|
private_visibility_config=dict(
|
||||||
|
type='dict', options=dict(networks=dict(required=True, type='list', elements='dict', options=dict(network_url=dict(required=True, type='str'))))
|
||||||
|
),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -223,7 +223,7 @@ options:
|
||||||
bounds:
|
bounds:
|
||||||
description:
|
description:
|
||||||
- The values must be monotonically increasing.
|
- The values must be monotonically increasing.
|
||||||
required: false
|
required: true
|
||||||
type: list
|
type: list
|
||||||
project:
|
project:
|
||||||
description:
|
description:
|
||||||
|
@ -527,7 +527,7 @@ def main():
|
||||||
exponential_buckets=dict(
|
exponential_buckets=dict(
|
||||||
type='dict', options=dict(num_finite_buckets=dict(type='int'), growth_factor=dict(type='int'), scale=dict(type='str'))
|
type='dict', options=dict(num_finite_buckets=dict(type='int'), growth_factor=dict(type='int'), scale=dict(type='str'))
|
||||||
),
|
),
|
||||||
explicit_buckets=dict(type='dict', options=dict(bounds=dict(type='list', elements='str'))),
|
explicit_buckets=dict(type='dict', options=dict(bounds=dict(required=True, type='list', elements='str'))),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
|
@ -70,7 +70,7 @@ options:
|
||||||
name:
|
name:
|
||||||
description:
|
description:
|
||||||
- The name specified for the version when it was created.
|
- The name specified for the version when it was created.
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
regions:
|
regions:
|
||||||
description:
|
description:
|
||||||
|
@ -221,7 +221,7 @@ def main():
|
||||||
state=dict(default='present', choices=['present', 'absent'], type='str'),
|
state=dict(default='present', choices=['present', 'absent'], type='str'),
|
||||||
name=dict(required=True, type='str'),
|
name=dict(required=True, type='str'),
|
||||||
description=dict(type='str'),
|
description=dict(type='str'),
|
||||||
default_version=dict(type='dict', options=dict(name=dict(type='str'))),
|
default_version=dict(type='dict', options=dict(name=dict(required=True, type='str'))),
|
||||||
regions=dict(type='list', elements='str'),
|
regions=dict(type='list', elements='str'),
|
||||||
online_prediction_logging=dict(type='bool'),
|
online_prediction_logging=dict(type='bool'),
|
||||||
online_prediction_console_logging=dict(type='bool'),
|
online_prediction_console_logging=dict(type='bool'),
|
||||||
|
|
|
@ -175,7 +175,7 @@ options:
|
||||||
- A subscription is considered active as long as any connected subscriber is successfully
|
- A subscription is considered active as long as any connected subscriber is successfully
|
||||||
consuming messages from the subscription or is issuing operations on the subscription.
|
consuming messages from the subscription or is issuing operations on the subscription.
|
||||||
If expirationPolicy is not set, a default policy with ttl of 31 days will be
|
If expirationPolicy is not set, a default policy with ttl of 31 days will be
|
||||||
used. If it is set but left empty, the resource never expires. The minimum allowed
|
used. If it is set but ttl is "", the resource never expires. The minimum allowed
|
||||||
value for expirationPolicy.ttl is 1 day.
|
value for expirationPolicy.ttl is 1 day.
|
||||||
required: false
|
required: false
|
||||||
type: dict
|
type: dict
|
||||||
|
@ -188,7 +188,7 @@ options:
|
||||||
- If ttl is not set, the associated resource never expires.
|
- If ttl is not set, the associated resource never expires.
|
||||||
- A duration in seconds with up to nine fractional digits, terminated by 's'.
|
- A duration in seconds with up to nine fractional digits, terminated by 's'.
|
||||||
- Example - "3.5s".
|
- Example - "3.5s".
|
||||||
required: false
|
required: true
|
||||||
type: str
|
type: str
|
||||||
project:
|
project:
|
||||||
description:
|
description:
|
||||||
|
@ -379,7 +379,7 @@ expirationPolicy:
|
||||||
- A subscription is considered active as long as any connected subscriber is successfully
|
- A subscription is considered active as long as any connected subscriber is successfully
|
||||||
consuming messages from the subscription or is issuing operations on the subscription.
|
consuming messages from the subscription or is issuing operations on the subscription.
|
||||||
If expirationPolicy is not set, a default policy with ttl of 31 days will be used.
|
If expirationPolicy is not set, a default policy with ttl of 31 days will be used.
|
||||||
If it is set but left empty, the resource never expires. The minimum allowed value
|
If it is set but ttl is "", the resource never expires. The minimum allowed value
|
||||||
for expirationPolicy.ttl is 1 day.
|
for expirationPolicy.ttl is 1 day.
|
||||||
returned: success
|
returned: success
|
||||||
type: complex
|
type: complex
|
||||||
|
@ -435,7 +435,7 @@ def main():
|
||||||
ack_deadline_seconds=dict(type='int'),
|
ack_deadline_seconds=dict(type='int'),
|
||||||
message_retention_duration=dict(default='604800s', type='str'),
|
message_retention_duration=dict(default='604800s', type='str'),
|
||||||
retain_acked_messages=dict(type='bool'),
|
retain_acked_messages=dict(type='bool'),
|
||||||
expiration_policy=dict(type='dict', options=dict(ttl=dict(type='str'))),
|
expiration_policy=dict(type='dict', options=dict(ttl=dict(required=True, type='str'))),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -221,7 +221,7 @@ resources:
|
||||||
- A subscription is considered active as long as any connected subscriber is
|
- A subscription is considered active as long as any connected subscriber is
|
||||||
successfully consuming messages from the subscription or is issuing operations
|
successfully consuming messages from the subscription or is issuing operations
|
||||||
on the subscription. If expirationPolicy is not set, a default policy with
|
on the subscription. If expirationPolicy is not set, a default policy with
|
||||||
ttl of 31 days will be used. If it is set but left empty, the resource never
|
ttl of 31 days will be used. If it is set but ttl is "", the resource never
|
||||||
expires. The minimum allowed value for expirationPolicy.ttl is 1 day.
|
expires. The minimum allowed value for expirationPolicy.ttl is 1 day.
|
||||||
returned: success
|
returned: success
|
||||||
type: complex
|
type: complex
|
||||||
|
|
|
@ -96,8 +96,7 @@ options:
|
||||||
preemptible:
|
preemptible:
|
||||||
description:
|
description:
|
||||||
- Defines whether the TPU instance is preemptible.
|
- Defines whether the TPU instance is preemptible.
|
||||||
required: false
|
required: true
|
||||||
default: 'false'
|
|
||||||
type: bool
|
type: bool
|
||||||
labels:
|
labels:
|
||||||
description:
|
description:
|
||||||
|
@ -294,7 +293,7 @@ def main():
|
||||||
tensorflow_version=dict(required=True, type='str'),
|
tensorflow_version=dict(required=True, type='str'),
|
||||||
network=dict(type='str'),
|
network=dict(type='str'),
|
||||||
cidr_block=dict(required=True, type='str'),
|
cidr_block=dict(required=True, type='str'),
|
||||||
scheduling_config=dict(type='dict', options=dict(preemptible=dict(type='bool'))),
|
scheduling_config=dict(type='dict', options=dict(preemptible=dict(required=True, type='bool'))),
|
||||||
labels=dict(type='dict'),
|
labels=dict(type='dict'),
|
||||||
zone=dict(required=True, type='str'),
|
zone=dict(required=True, type='str'),
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Reference in a new issue