Ejemplo n.º 1
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        allowed=dict(type='list',
                     elements='dict',
                     options=dict(ip_protocol=dict(required=True, type='str'),
                                  ports=dict(type='list', elements='str'))),
        description=dict(type='str'),
        name=dict(type='str'),
        network=dict(type='str'),
        source_ranges=dict(type='list', elements='str'),
        source_tags=dict(type='list', elements='str'),
        target_tags=dict(type='list', elements='str')))

    state = module.params['state']
    kind = 'compute#firewall'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            description=dict(type='str'),
            name=dict(required=True, type='str'),
            proxy_header=dict(type='str', choices=['NONE', 'PROXY_V1']),
            service=dict(required=True),
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#targetTcpProxy'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind, fetch)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 3
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            name=dict(required=True, type='str'),
            title=dict(type='str'),
            description=dict(type='str'),
            included_permissions=dict(type='list', elements='str'),
            stage=dict(type='str'),
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/iam']

    state = module.params['state']

    fetch = fetch_resource(module, self_link(module))
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), fetch)
                fetch = fetch_resource(module, self_link(module))
                changed = True
        else:
            delete(module, self_link(module))
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module))
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 4
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        name=dict(type='str'),
        labels=dict(type='dict'),
        parent=dict(type='dict',
                    options=dict(type=dict(type='str'), id=dict(type='str'))),
        id=dict(required=True, type='str')))

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/cloud-platform'
        ]

    state = module.params['state']

    fetch = fetch_resource(module, self_link(module))
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module))
                fetch = fetch_resource(module, self_link(module))
                changed = True
        else:
            delete(module, self_link(module))
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module))
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 5
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        description=dict(type='str'),
        name=dict(type='str'),
        node_template=dict(required=True, type='dict'),
        size=dict(required=True, type='int'),
        zone=dict(required=True, type='str'),
    ))

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#NodeGroup'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind, fetch)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, create_link(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 6
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        address=dict(type='str'),
        address_type=dict(
            default='EXTERNAL', type='str', choices=['INTERNAL', 'EXTERNAL']),
        description=dict(type='str'),
        name=dict(required=True, type='str'),
        subnetwork=dict(type='dict'),
        region=dict(required=True, type='str')))

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#address'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 7
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(state=dict(
            default='present', choices=['present', 'absent'], type='str'),
                           description=dict(type='str'),
                           dns_name=dict(type='str'),
                           name=dict(required=True, type='str'),
                           name_server_set=dict(type='list', elements='str')))

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/ndev.clouddns.readwrite'
        ]

    state = module.params['state']
    kind = 'dns#managedZone'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 8
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(state=dict(
        default='present', choices=['present', 'absent'], type='str'),
                                          host=dict(required=True, type='str'),
                                          name=dict(required=True, type='str'),
                                          instance=dict(required=True),
                                          password=dict(type='str')))

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/sqlservice.admin'
        ]

    state = module.params['state']
    kind = 'sql#user'

    fetch = fetch_wrapped_resource(module, 'sql#user', 'sql#usersList',
                                   'items')
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        bucket=dict(required=True, type='dict'),
        entity=dict(required=True, type='str'),
        role=dict(type='str'),
    ))

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/devstorage.full_control'
        ]

    state = module.params['state']
    kind = 'storage#bucketAccessControl'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 10
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        check_interval_sec=dict(type='int', aliases=['check_interval_seconds'
                                                     ]),
        description=dict(type='str'),
        healthy_threshold=dict(type='int'),
        host=dict(type='str'),
        name=dict(required=True, type='str'),
        port=dict(type='int'),
        request_path=dict(type='str'),
        timeout_sec=dict(type='int', aliases=['timeout_seconds']),
        unhealthy_threshold=dict(type='int')))

    state = module.params['state']
    kind = 'compute#httpHealthCheck'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind, fetch)
                changed = True
        else:
            delete(module, self_link(module), kind, fetch)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        description=dict(type='str'),
        name=dict(required=True, type='str'),
        profile=dict(type='str'),
        min_tls_version=dict(type='str'),
        custom_features=dict(type='list', elements='str'),
    ))

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#sslPolicy'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 12
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            bucket_name=dict(required=True, type='str'),
            description=dict(type='str'),
            enable_cdn=dict(type='bool'),
            name=dict(required=True, type='str')
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#backendBucket'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 13
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            name=dict(type='str'),
            topic=dict(type='dict'),
            push_config=dict(type='dict', options=dict(
                push_endpoint=dict(type='str')
            )),
            ack_deadline_seconds=dict(type='int')
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/pubsub']

    state = module.params['state']

    fetch = fetch_resource(module, self_link(module))
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module))
                changed = True
        else:
            delete(module, self_link(module))
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, self_link(module))
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            description=dict(type='str'),
            name=dict(required=True, type='str'),
            quic_override=dict(type='str', choices=['NONE', 'ENABLE', 'DISABLE']),
            ssl_certificates=dict(required=True, type='list', elements='dict'),
            url_map=dict(required=True, type='dict')
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#targetHttpsProxy'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 15
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            bucket=dict(required=True, type='dict'),
            entity=dict(required=True, type='str'),
            entity_id=dict(type='str'),
            project_team=dict(type='dict', options=dict(
                project_number=dict(type='str'),
                team=dict(type='str', choices=['editors', 'owners', 'viewers'])
            )),
            role=dict(type='str', choices=['OWNER', 'READER', 'WRITER'])
        )
    )

    state = module.params['state']
    kind = 'storage#bucketAccessControl'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
def main():
    module = GcpModule(
        argument_spec=dict(
            filters=dict(type='list', elements='str'),
            zone=dict(required=True, type='str')
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    items = fetch_list(module, collection(module), query_options(module.params['filters']))
    if items.get('items'):
        items = items.get('items')
    else:
        items = []
    return_value = {
        'items': items
    }
    module.exit_json(**return_value)
Ejemplo n.º 17
0
def main():
    module = GcpModule(argument_spec=dict(
        filters=dict(type='list', elements='str')))

    if module._name == 'gcp_compute_url_map_facts':
        module.deprecate(
            "The 'gcp_compute_url_map_facts' module has been renamed to 'gcp_compute_url_map_info'",
            version='2.13')

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    items = fetch_list(module, collection(module),
                       query_options(module.params['filters']))
    if items.get('items'):
        items = items.get('items')
    else:
        items = []
    return_value = {'resources': items}
    module.exit_json(**return_value)
def main():
    module = GcpModule(
        argument_spec=dict(
            zone=dict(required=True, type='str'),
            cluster=dict(required=True, type='dict')
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/cloud-platform']

    items = fetch_list(module, collection(module))
    if items.get('nodePools'):
        items = items.get('nodePools')
    else:
        items = []
    return_value = {
        'items': items
    }
    module.exit_json(**return_value)
Ejemplo n.º 19
0
def main():
    module = GcpModule(argument_spec=dict())

    if module._name == 'gcp_resourcemanager_project_facts':
        module.deprecate(
            "The 'gcp_resourcemanager_project_facts' module has been renamed to 'gcp_resourcemanager_project_info'",
            version='2.13')

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/cloud-platform'
        ]

    items = fetch_list(module, collection(module))
    if items.get('projects'):
        items = items.get('projects')
    else:
        items = []
    return_value = {'resources': items}
    module.exit_json(**return_value)
Ejemplo n.º 20
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            name=dict(required=True, type='str'),
            kms_key_name=dict(type='str'),
            labels=dict(type='dict'),
            message_storage_policy=dict(type='dict', options=dict(allowed_persistence_regions=dict(required=True, type='list', elements='str'))),
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/pubsub']

    state = module.params['state']

    fetch = fetch_resource(module, self_link(module))
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), fetch)
                fetch = fetch_resource(module, self_link(module))
                changed = True
        else:
            delete(module, self_link(module))
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, self_link(module))
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 21
0
def main():
    """Main function"""

    module = GcpModule(argument_spec=dict(
        state=dict(
            default='present', choices=['present', 'absent'], type='str'),
        backup_pool=dict(type='dict'),
        description=dict(type='str'),
        failover_ratio=dict(type='str'),
        health_check=dict(type='dict'),
        instances=dict(type='list', elements='dict'),
        name=dict(required=True, type='str'),
        session_affinity=dict(
            type='str', choices=['NONE', 'CLIENT_IP', 'CLIENT_IP_PROTO']),
        region=dict(required=True, type='str')))

    state = module.params['state']
    kind = 'compute#targetPool'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind, fetch)
                changed = True
        else:
            delete(module, self_link(module), kind, fetch)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 22
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(state=dict(
            default='present', choices=['present', 'absent'], type='str'),
                           dest_range=dict(type='str'),
                           name=dict(type='str'),
                           network=dict(type='dict'),
                           priority=dict(type='int'),
                           tags=dict(type='list', elements='str'),
                           next_hop_gateway=dict(type='str'),
                           next_hop_instance=dict(type='str'),
                           next_hop_ip=dict(type='str'),
                           next_hop_vpn_tunnel=dict(type='str')))

    state = module.params['state']
    kind = 'compute#route'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 23
0
def main():
    module = GcpModule(argument_spec=dict(
        dns_name=dict(type='list', elements='str')))

    if module._name == 'gcp_dns_managed_zone_facts':
        module.deprecate(
            "The 'gcp_dns_managed_zone_facts' module has been renamed to 'gcp_dns_managed_zone_info'",
            version='2.13')

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/ndev.clouddns.readwrite'
        ]

    items = fetch_list(module, collection(module), module.params['dns_name'])
    if items.get('managedZones'):
        items = items.get('managedZones')
    else:
        items = []
    return_value = {'resources': items}
    module.exit_json(**return_value)
Ejemplo n.º 24
0
def main():
    module = GcpModule(argument_spec=dict(
        path=dict(type='path'),
        bucket=dict(type='str'),
    ))

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/devstorage.full_control'
        ]

    session = GcpSession(module, 'storage')

    remote_object = session.get(
        "https://www.googleapis.com/storage/v1/b/{bucket}/o/{path}".format(
            **module.params))
    if remote_object.status_code == 404 or remote_object.status_code == 204:
        module.fail_json(msg="File not found")

    data = session.get(remote_object.json()['mediaLink'])
    module.exit_json(changed=False, value=data.content)
def main():
    module = GcpModule(argument_spec=dict(
        managed_zone=dict(required=True, type='dict')))

    if module._name == 'gcp_dns_resource_record_set_facts':
        module.deprecate(
            "The 'gcp_dns_resource_record_set_facts' module has been renamed to 'gcp_dns_resource_record_set_info'",
            version='2.13')

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/ndev.clouddns.readwrite'
        ]

    items = fetch_list(module, collection(module))
    if items.get('rrsets'):
        items = items.get('rrsets')
    else:
        items = []
    return_value = {'resources': items}
    module.exit_json(**return_value)
Ejemplo n.º 26
0
def main():
    module = GcpModule(argument_spec=dict(
        location=dict(required=True, type='str', aliases=['region', 'zone'])))

    if module._name == 'gcp_container_cluster_facts':
        module.deprecate(
            "The 'gcp_container_cluster_facts' module has been renamed to 'gcp_container_cluster_info'",
            version='2.13')

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/cloud-platform'
        ]

    items = fetch_list(module, collection(module))
    if items.get('clusters'):
        items = items.get('clusters')
    else:
        items = []
    return_value = {'resources': items}
    module.exit_json(**return_value)
Ejemplo n.º 27
0
def main():
    module = GcpModule(argument_spec=dict(
        instance=dict(required=True, type='dict')))

    if module._name == 'gcp_spanner_database_facts':
        module.deprecate(
            "The 'gcp_spanner_database_facts' module has been renamed to 'gcp_spanner_database_info'",
            version='2.13')

    if not module.params['scopes']:
        module.params['scopes'] = [
            'https://www.googleapis.com/auth/spanner.admin'
        ]

    items = fetch_list(module, collection(module))
    if items.get('databases'):
        items = items.get('databases')
    else:
        items = []
    return_value = {'resources': items}
    module.exit_json(**return_value)
Ejemplo n.º 28
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(state=dict(
            default='present', choices=['present', 'absent'], type='str'),
                           description=dict(type='str'),
                           gateway_address=dict(type='str'),
                           ip_cidr_range=dict(type='str'),
                           name=dict(type='str'),
                           network=dict(type='dict'),
                           private_ip_google_access=dict(type='bool'),
                           region=dict(required=True, type='str')))

    state = module.params['state']
    kind = 'compute#subnetwork'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind, fetch)
                changed = True
        else:
            delete(module, self_link(module), kind, fetch)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)
Ejemplo n.º 29
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            description=dict(type='str'),
            dns_name=dict(type='str'),
            name=dict(required=True, type='str'),
            name_server_set=dict(type='list'),
        )
    )

    state = module.params['state']
    kind = 'dns#managedZone'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind)
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True

    if fetch:
        fetch.update({'changed': changed})
    else:
        fetch = {'changed': changed}

    module.exit_json(**fetch)
Ejemplo n.º 30
0
def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            certificate=dict(type='str'),
            description=dict(type='str'),
            name=dict(type='str'),
            private_key=dict(type='str')
        )
    )

    state = module.params['state']
    kind = 'compute#sslCertificate'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                fetch = update(module, self_link(module), kind, fetch)
                changed = True
        else:
            delete(module, self_link(module), kind, fetch)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)