Improve schema and docs for Google Cloud Storage ObjectAccessControl

This commit is contained in:
Riley Karson 2018-10-17 22:26:12 +00:00 committed by Alex Stephen
parent 748132a695
commit 6a98471a53

View file

@ -177,13 +177,10 @@ options:
required: false required: false
entity: entity:
description: description:
- 'The entity holding the permission, in one of the following forms: user-userId - 'The entity holding the permission, in one of the following forms: * user-{{userId}} *
user-email group-groupId group-email domain-domain project-team-projectId allUsers user-{{email}} (such as "user-liz@example.com") * group-{{groupId}} * group-{{email}}
allAuthenticatedUsers Examples: The user liz@example.com would be (such as "group-example@googlegroups.com") * domain-{{domain}} (such as "domain-example.com") *
user-liz@example.com.' project-team-{{projectId}} * allUsers * allAuthenticatedUsers .'
- The group example@googlegroups.com would be group-example@googlegroups.com.
- To refer to all members of the Google Apps for Business domain example.com, the
entity would be domain-example.com.
required: true required: true
entity_id: entity_id:
description: description:
@ -218,7 +215,7 @@ options:
role: role:
description: description:
- The access permission for the entity. - The access permission for the entity.
required: false required: true
choices: ['OWNER', 'READER'] choices: ['OWNER', 'READER']
lifecycle: lifecycle:
description: description:
@ -577,13 +574,10 @@ RETURN = '''
type: str type: str
entity: entity:
description: description:
- 'The entity holding the permission, in one of the following forms: user-userId - 'The entity holding the permission, in one of the following forms: * user-{{userId}} *
user-email group-groupId group-email domain-domain project-team-projectId allUsers user-{{email}} (such as "user-liz@example.com") * group-{{groupId}} * group-{{email}}
allAuthenticatedUsers Examples: The user liz@example.com would be (such as "group-example@googlegroups.com") * domain-{{domain}} (such as "domain-example.com") *
user-liz@example.com.' project-team-{{projectId}} * allUsers * allAuthenticatedUsers .'
- The group example@googlegroups.com would be group-example@googlegroups.com.
- To refer to all members of the Google Apps for Business domain example.com, the
entity would be domain-example.com.
returned: success returned: success
type: str type: str
entityId: entityId:
@ -847,63 +841,55 @@ def main():
module = GcpModule( module = GcpModule(
argument_spec=dict( argument_spec=dict(
state=dict(default='present', choices=['present', 'absent'], type='str'), state=dict(default='present', choices=['present', 'absent'], type='str'),
acl=dict( acl=dict(type='list', elements='dict', options=dict(
type='list', bucket=dict(required=True, type='dict'),
elements='dict', domain=dict(type='str'),
options=dict( email=dict(type='str'),
bucket=dict(required=True, type='dict'), entity=dict(required=True, type='str'),
entity=dict(required=True, type='str'), entity_id=dict(type='str'),
entity_id=dict(type='str'), id=dict(type='str'),
project_team=dict( project_team=dict(type='dict', options=dict(
type='dict', options=dict(project_number=dict(type='str'), team=dict(type='str', choices=['editors', 'owners', 'viewers'])) project_number=dict(type='str'),
), team=dict(type='str', choices=['editors', 'owners', 'viewers'])
role=dict(type='str', choices=['OWNER', 'READER', 'WRITER']), )),
), role=dict(type='str', choices=['OWNER', 'READER', 'WRITER'])
), )),
cors=dict( cors=dict(type='list', elements='dict', options=dict(
type='list', max_age_seconds=dict(type='int'),
elements='dict', method=dict(type='list', elements='str'),
options=dict( origin=dict(type='list', elements='str'),
max_age_seconds=dict(type='int'), response_header=dict(type='list', elements='str')
method=dict(type='list', elements='str'), )),
origin=dict(type='list', elements='str'), default_object_acl=dict(type='list', elements='dict', options=dict(
response_header=dict(type='list', elements='str'), bucket=dict(required=True, type='dict'),
), domain=dict(type='str'),
), email=dict(type='str'),
default_object_acl=dict( entity=dict(required=True, type='str'),
type='list', entity_id=dict(type='str'),
elements='dict', generation=dict(type='int'),
options=dict( id=dict(type='str'),
bucket=dict(required=True, type='dict'), object=dict(type='str'),
entity=dict(required=True, type='str'), project_team=dict(type='dict', options=dict(
object=dict(type='str'), project_number=dict(type='str'),
role=dict(required=True, type='str', choices=['OWNER', 'READER']), team=dict(type='str', choices=['editors', 'owners', 'viewers'])
), )),
), role=dict(required=True, type='str', choices=['OWNER', 'READER'])
lifecycle=dict( )),
type='dict', lifecycle=dict(type='dict', options=dict(
options=dict( rule=dict(type='list', elements='dict', options=dict(
rule=dict( action=dict(type='dict', options=dict(
type='list', storage_class=dict(type='str'),
elements='dict', type=dict(type='str', choices=['Delete', 'SetStorageClass'])
options=dict( )),
action=dict( condition=dict(type='dict', options=dict(
type='dict', options=dict(storage_class=dict(type='str'), type=dict(type='str', choices=['Delete', 'SetStorageClass'])) age_days=dict(type='int'),
), created_before=dict(type='str'),
condition=dict( is_live=dict(type='bool'),
type='dict', matches_storage_class=dict(type='list', elements='str'),
options=dict( num_newer_versions=dict(type='int')
age_days=dict(type='int'), ))
created_before=dict(type='str'), ))
is_live=dict(type='bool'), )),
matches_storage_class=dict(type='list', elements='str'),
num_newer_versions=dict(type='int'),
),
),
),
)
),
),
location=dict(type='str'), location=dict(type='str'),
logging=dict(type='dict', options=dict(log_bucket=dict(type='str'), log_object_prefix=dict(type='str'))), logging=dict(type='dict', options=dict(log_bucket=dict(type='str'), log_object_prefix=dict(type='str'))),
metageneration=dict(type='int'), metageneration=dict(type='int'),