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',
elements='dict',
options=dict(
bucket=dict(required=True, type='dict'), bucket=dict(required=True, type='dict'),
domain=dict(type='str'),
email=dict(type='str'),
entity=dict(required=True, type='str'), entity=dict(required=True, type='str'),
entity_id=dict(type='str'), entity_id=dict(type='str'),
project_team=dict( id=dict(type='str'),
type='dict', options=dict(project_number=dict(type='str'), team=dict(type='str', choices=['editors', 'owners', 'viewers'])) project_team=dict(type='dict', options=dict(
), project_number=dict(type='str'),
role=dict(type='str', choices=['OWNER', 'READER', 'WRITER']), team=dict(type='str', choices=['editors', 'owners', 'viewers'])
), )),
), role=dict(type='str', choices=['OWNER', 'READER', 'WRITER'])
cors=dict( )),
type='list', cors=dict(type='list', elements='dict', options=dict(
elements='dict',
options=dict(
max_age_seconds=dict(type='int'), max_age_seconds=dict(type='int'),
method=dict(type='list', elements='str'), method=dict(type='list', elements='str'),
origin=dict(type='list', elements='str'), origin=dict(type='list', elements='str'),
response_header=dict(type='list', elements='str'), response_header=dict(type='list', elements='str')
), )),
), default_object_acl=dict(type='list', elements='dict', options=dict(
default_object_acl=dict(
type='list',
elements='dict',
options=dict(
bucket=dict(required=True, type='dict'), bucket=dict(required=True, type='dict'),
domain=dict(type='str'),
email=dict(type='str'),
entity=dict(required=True, type='str'), entity=dict(required=True, type='str'),
entity_id=dict(type='str'),
generation=dict(type='int'),
id=dict(type='str'),
object=dict(type='str'), object=dict(type='str'),
role=dict(required=True, type='str', choices=['OWNER', 'READER']), project_team=dict(type='dict', options=dict(
), project_number=dict(type='str'),
), team=dict(type='str', choices=['editors', 'owners', 'viewers'])
lifecycle=dict( )),
type='dict', role=dict(required=True, type='str', choices=['OWNER', 'READER'])
options=dict( )),
rule=dict( lifecycle=dict(type='dict', options=dict(
type='list', rule=dict(type='list', elements='dict', options=dict(
elements='dict', action=dict(type='dict', options=dict(
options=dict( storage_class=dict(type='str'),
action=dict( type=dict(type='str', choices=['Delete', 'SetStorageClass'])
type='dict', options=dict(storage_class=dict(type='str'), type=dict(type='str', choices=['Delete', 'SetStorageClass'])) )),
), condition=dict(type='dict', options=dict(
condition=dict(
type='dict',
options=dict(
age_days=dict(type='int'), age_days=dict(type='int'),
created_before=dict(type='str'), created_before=dict(type='str'),
is_live=dict(type='bool'), is_live=dict(type='bool'),
matches_storage_class=dict(type='list', elements='str'), matches_storage_class=dict(type='list', elements='str'),
num_newer_versions=dict(type='int'), 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'),