def resource_to_request(module):
    request = {
        u'kind':
        'compute#targetPool',
        u'backupPool':
        replace_resource_dict(module.params.get(u'backup_pool', {}),
                              'selfLink'),
        u'description':
        module.params.get('description'),
        u'failoverRatio':
        module.params.get('failover_ratio'),
        u'healthCheck':
        replace_resource_dict(module.params.get(u'health_check', {}),
                              'selfLink'),
        u'instances':
        replace_resource_dict(module.params.get('instances', []), 'selfLink'),
        u'name':
        module.params.get('name'),
        u'sessionAffinity':
        module.params.get('session_affinity'),
    }
    request = encode_request(request, module)
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def response_to_hash(module, response):
    return {
        u'adminEnabled': response.get(u'adminEnabled'),
        u'cloudRouterIpAddress': response.get(u'cloudRouterIpAddress'),
        u'customerRouterIpAddress': response.get(u'customerRouterIpAddress'),
        u'interconnect': module.params.get('interconnect'),
        u'description': response.get(u'description'),
        u'mtu': response.get(u'mtu'),
        u'bandwidth': response.get(u'bandwidth'),
        u'edgeAvailabilityDomain': module.params.get('edge_availability_domain'),
        u'pairingKey': response.get(u'pairingKey'),
        u'partnerAsn': response.get(u'partnerAsn'),
        u'privateInterconnectInfo': InterconnectAttachmentPrivateinterconnectinfo(response.get(u'privateInterconnectInfo', {}), module).from_response(),
        u'type': module.params.get('type'),
        u'state': response.get(u'state'),
        u'googleReferenceId': response.get(u'googleReferenceId'),
        u'router': replace_resource_dict(module.params.get(u'router', {}), 'selfLink'),
        u'creationTimestamp': response.get(u'creationTimestamp'),
        u'id': response.get(u'id'),
        u'name': module.params.get('name'),
        u'candidateSubnets': module.params.get('candidate_subnets'),
        u'vlanTag8021q': module.params.get('vlan_tag8021q'),
        u'ipsecInternalAddresses': replace_resource_dict(module.params.get('ipsec_internal_addresses', []), 'selfLink'),
        u'encryption': module.params.get('encryption'),
    }
def resource_to_request(module):
    request = {
        u'kind':
        'compute#vpnTunnel',
        u'name':
        module.params.get('name'),
        u'description':
        module.params.get('description'),
        u'targetVpnGateway':
        replace_resource_dict(module.params.get(u'target_vpn_gateway', {}),
                              'selfLink'),
        u'router':
        replace_resource_dict(module.params.get(u'router', {}), 'selfLink'),
        u'peerIp':
        module.params.get('peer_ip'),
        u'sharedSecret':
        module.params.get('shared_secret'),
        u'ikeVersion':
        module.params.get('ike_version'),
        u'localTrafficSelector':
        module.params.get('local_traffic_selector'),
        u'remoteTrafficSelector':
        module.params.get('remote_traffic_selector'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u"kind": "compute#route",
        u"destRange": module.params.get("dest_range"),
        u"description": module.params.get("description"),
        u"name": module.params.get("name"),
        u"network": replace_resource_dict(
            module.params.get(u"network", {}), "selfLink"
        ),
        u"priority": module.params.get("priority"),
        u"tags": module.params.get("tags"),
        u"nextHopGateway": module.params.get("next_hop_gateway"),
        u"nextHopInstance": replace_resource_dict(
            module.params.get(u"next_hop_instance", {}), "selfLink"
        ),
        u"nextHopIp": module.params.get("next_hop_ip"),
        u"nextHopVpnTunnel": replace_resource_dict(
            module.params.get(u"next_hop_vpn_tunnel", {}), "selfLink"
        ),
        u"nextHopIlb": replace_resource_dict(
            module.params.get(u"next_hop_ilb", {}), "selfLink"
        ),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u'kind':
        'compute#route',
        u'destRange':
        module.params.get('dest_range'),
        u'description':
        module.params.get('description'),
        u'name':
        module.params.get('name'),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'priority':
        module.params.get('priority'),
        u'tags':
        module.params.get('tags'),
        u'nextHopGateway':
        module.params.get('next_hop_gateway'),
        u'nextHopInstance':
        replace_resource_dict(module.params.get(u'next_hop_instance', {}),
                              'selfLink'),
        u'nextHopIp':
        module.params.get('next_hop_ip'),
        u'nextHopVpnTunnel':
        replace_resource_dict(module.params.get(u'next_hop_vpn_tunnel', {}),
                              'selfLink'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def response_to_hash(module, response):
    return {
        u'id':
        response.get(u'id'),
        u'creationTimestamp':
        response.get(u'creationTimestamp'),
        u'name':
        response.get(u'name'),
        u'description':
        module.params.get('description'),
        u'targetVpnGateway':
        replace_resource_dict(module.params.get(u'target_vpn_gateway', {}),
                              'selfLink'),
        u'router':
        replace_resource_dict(module.params.get(u'router', {}), 'selfLink'),
        u'peerIp':
        response.get(u'peerIp'),
        u'sharedSecret':
        response.get(u'sharedSecret'),
        u'sharedSecretHash':
        response.get(u'sharedSecretHash'),
        u'ikeVersion':
        response.get(u'ikeVersion'),
        u'localTrafficSelector':
        response.get(u'localTrafficSelector'),
        u'remoteTrafficSelector':
        response.get(u'remoteTrafficSelector'),
    }
Exemple #7
0
def resource_to_request(module):
    request = {
        u'kind':
        'compute#instanceGroup',
        u'description':
        module.params.get('description'),
        u'name':
        module.params.get('name'),
        u'namedPorts':
        InstanceGroupNamedportsArray(module.params.get('named_ports', []),
                                     module).to_request(),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'region':
        region_selflink(module.params.get('region'), module.params),
        u'subnetwork':
        replace_resource_dict(module.params.get(u'subnetwork', {}),
                              'selfLink'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u'kind': 'compute#image',
        u'description': module.params.get('description'),
        u'diskSizeGb': module.params.get('disk_size_gb'),
        u'family': module.params.get('family'),
        u'guestOsFeatures': ImageGuestosfeaturesArray(module.params.get('guest_os_features', []), module).to_request(),
        u'imageEncryptionKey': ImageImageencryptionkey(module.params.get('image_encryption_key', {}), module).to_request(),
        u'labels': module.params.get('labels'),
        u'licenses': module.params.get('licenses'),
        u'name': module.params.get('name'),
        u'rawDisk': ImageRawdisk(module.params.get('raw_disk', {}), module).to_request(),
        u'sourceDisk': replace_resource_dict(module.params.get(u'source_disk', {}), 'selfLink'),
        u'sourceDiskEncryptionKey': ImageSourcediskencryptionkey(module.params.get('source_disk_encryption_key', {}), module).to_request(),
        u'sourceDiskId': module.params.get('source_disk_id'),
        u'sourceImage': replace_resource_dict(module.params.get(u'source_image', {}), 'selfLink'),
        u'sourceSnapshot': replace_resource_dict(module.params.get(u'source_snapshot', {}), 'selfLink'),
        u'sourceType': module.params.get('source_type'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u'kind':
        'compute#instanceGroupManager',
        u'baseInstanceName':
        module.params.get('base_instance_name'),
        u'description':
        module.params.get('description'),
        u'instanceTemplate':
        replace_resource_dict(module.params.get(u'instance_template', {}),
                              'selfLink'),
        u'name':
        module.params.get('name'),
        u'namedPorts':
        RegionInstanceGroupManagerNamedportsArray(
            module.params.get('named_ports', []), module).to_request(),
        u'targetPools':
        replace_resource_dict(module.params.get('target_pools', []),
                              'selfLink'),
        u'targetSize':
        module.params.get('target_size'),
        u'autoHealingPolicies':
        RegionInstanceGroupManagerAutohealingpoliciesArray(
            module.params.get('auto_healing_policies', []),
            module).to_request(),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #10
0
def response_to_hash(module, response):
    return {
        u'destRange':
        response.get(u'destRange'),
        u'description':
        response.get(u'description'),
        u'name':
        response.get(u'name'),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'priority':
        module.params.get('priority'),
        u'tags':
        module.params.get('tags'),
        u'nextHopGateway':
        module.params.get('next_hop_gateway'),
        u'nextHopInstance':
        replace_resource_dict(module.params.get(u'next_hop_instance', {}),
                              'selfLink'),
        u'nextHopIp':
        module.params.get('next_hop_ip'),
        u'nextHopVpnTunnel':
        replace_resource_dict(module.params.get(u'next_hop_vpn_tunnel', {}),
                              'selfLink'),
        u'nextHopNetwork':
        response.get(u'nextHopNetwork'),
        u'nextHopIlb':
        replace_resource_dict(module.params.get(u'next_hop_ilb', {}),
                              'selfLink'),
    }
def resource_to_request(module):
    request = {
        u'kind':
        'compute#targetHttpsProxy',
        u'description':
        module.params.get('description'),
        u'name':
        module.params.get('name'),
        u'quicOverride':
        module.params.get('quic_override'),
        u'sslCertificates':
        replace_resource_dict(module.params.get('ssl_certificates', []),
                              'selfLink'),
        u'sslPolicy':
        replace_resource_dict(module.params.get(u'ssl_policy', {}),
                              'selfLink'),
        u'urlMap':
        replace_resource_dict(module.params.get(u'url_map', {}), 'selfLink'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u'kind':
        'compute#targetSslProxy',
        u'description':
        module.params.get('description'),
        u'name':
        module.params.get('name'),
        u'proxyHeader':
        module.params.get('proxy_header'),
        u'service':
        replace_resource_dict(module.params.get(u'service', {}), 'selfLink'),
        u'sslCertificates':
        replace_resource_dict(module.params.get('ssl_certificates', []),
                              'selfLink'),
        u'sslPolicy':
        replace_resource_dict(module.params.get(u'ssl_policy', {}),
                              'selfLink'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #13
0
def prefetch_soa_resource(module):

    resource = SOAForwardable(
        {
            'type':
            'SOA',
            'managed_zone':
            module.params['managed_zone'],
            'name':
            replace_resource_dict(module.params['managed_zone'], 'dnsName'),
            'project':
            module.params['project'],
            'scopes':
            module.params['scopes'],
            'service_account_file':
            module.params.get('service_account_file'),
            'auth_kind':
            module.params['auth_kind'],
            'service_account_email':
            module.params.get('service_account_email'),
            'service_account_contents':
            module.params.get('service_account_contents'),
        },
        module,
    )

    result = fetch_wrapped_resource(resource, 'dns#resourceRecordSet',
                                    'dns#resourceRecordSetsListResponse',
                                    'rrsets')
    if not result:
        raise ValueError(
            "Google DNS Managed Zone %s not found" %
            replace_resource_dict(module.params['managed_zone'], 'name'))
    return result
Exemple #14
0
def response_to_hash(module, response):
    return {
        u'creationTimestamp':
        response.get(u'creationTimestamp'),
        u'description':
        response.get(u'description'),
        u'gatewayAddress':
        response.get(u'gatewayAddress'),
        u'id':
        response.get(u'id'),
        u'ipCidrRange':
        response.get(u'ipCidrRange'),
        u'name':
        response.get(u'name'),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'secondaryIpRanges':
        SubnetworkSecondaryiprangesArray(
            response.get(u'secondaryIpRanges', []), module).from_response(),
        u'privateIpGoogleAccess':
        response.get(u'privateIpGoogleAccess'),
        u'privateIpv6GoogleAccess':
        response.get(u'privateIpv6GoogleAccess'),
        u'region':
        module.params.get('region'),
    }
def resource_to_request(module):
    request = {
        u'kind':
        'compute#urlMap',
        u'defaultService':
        replace_resource_dict(module.params.get(u'default_service', {}),
                              'selfLink'),
        u'description':
        module.params.get('description'),
        u'hostRules':
        UrlMapHostrulesArray(module.params.get('host_rules', []),
                             module).to_request(),
        u'name':
        module.params.get('name'),
        u'pathMatchers':
        UrlMapPathmatchersArray(module.params.get('path_matchers', []),
                                module).to_request(),
        u'tests':
        UrlMapTestsArray(module.params.get('tests', []), module).to_request(),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u'kind':
        'compute#interconnectAttachment',
        u'adminEnabled':
        module.params.get('admin_enabled'),
        u'interconnect':
        module.params.get('interconnect'),
        u'description':
        module.params.get('description'),
        u'bandwidth':
        module.params.get('bandwidth'),
        u'edgeAvailabilityDomain':
        module.params.get('edge_availability_domain'),
        u'type':
        module.params.get('type'),
        u'router':
        replace_resource_dict(module.params.get(u'router', {}), 'selfLink'),
        u'name':
        module.params.get('name'),
        u'candidateSubnets':
        module.params.get('candidate_subnets'),
        u'vlanTag8021q':
        module.params.get('vlan_tag8021q'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #17
0
def resource_to_request(module):
    request = {
        u'kind':
        'compute#forwardingRule',
        u'description':
        module.params.get('description'),
        u'IPAddress':
        module.params.get('ip_address'),
        u'IPProtocol':
        module.params.get('ip_protocol'),
        u'ipVersion':
        module.params.get('ip_version'),
        u'loadBalancingScheme':
        module.params.get('load_balancing_scheme'),
        u'metadataFilters':
        GlobalForwardingRuleMetadatafiltersArray(
            module.params.get('metadata_filters', []), module).to_request(),
        u'name':
        module.params.get('name'),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'portRange':
        module.params.get('port_range'),
        u'target':
        module.params.get('target'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
def resource_to_request(module):
    request = {
        u'kind': 'compute#firewall',
        u'allowed': FirewallAllowedArray(module.params.get('allowed', []), module).to_request(),
        u'denied': FirewallDeniedArray(module.params.get('denied', []), module).to_request(),
        u'description': module.params.get('description'),
        u'destinationRanges': module.params.get('destination_ranges'),
        u'direction': module.params.get('direction'),
        u'disabled': module.params.get('disabled'),
        u'logConfig': FirewallLogconfig(module.params.get('log_config', {}), module).to_request(),
        u'name': module.params.get('name'),
        u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'priority': module.params.get('priority'),
        u'sourceRanges': module.params.get('source_ranges'),
        u'sourceServiceAccounts': module.params.get('source_service_accounts'),
        u'sourceTags': module.params.get('source_tags'),
        u'targetServiceAccounts': module.params.get('target_service_accounts'),
        u'targetTags': module.params.get('target_tags'),
    }
    request = encode_request(request, module)
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #19
0
def resource_to_request(module):
    request = {
        u'kind':
        'compute#NodeGroup',
        u'description':
        module.params.get('description'),
        u'name':
        module.params.get('name'),
        u'nodeTemplate':
        replace_resource_dict(module.params.get(u'node_template', {}),
                              'selfLink'),
        u'size':
        module.params.get('size'),
        u'maintenancePolicy':
        module.params.get('maintenance_policy'),
        u'maintenanceWindow':
        NodeGroupMaintenancewindow(module.params.get('maintenance_window', {}),
                                   module).to_request(),
        u'autoscalingPolicy':
        NodeGroupAutoscalingpolicy(module.params.get('autoscaling_policy', {}),
                                   module).to_request(),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #20
0
def self_link(module):
    res = {
        'bucket': replace_resource_dict(module.params['bucket'], 'name'),
        'entity': module.params['entity']
    }
    return "https://www.googleapis.com/storage/v1/b/{bucket}/acl/{entity}".format(
        **res)
Exemple #21
0
def collection(module):
    res = {
        'project': module.params['project'],
        'instance': replace_resource_dict(module.params['instance'], 'name')
    }
    return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/users".format(
        **res)
def collection(module):
    res = {
        'project': module.params['project'],
        'model': replace_resource_dict(module.params['model'], 'name')
    }
    return "https://ml.googleapis.com/v1/projects/{project}/models/{model}/versions".format(
        **res)
def collection(module):
    res = {
        'project': module.params['project'],
        'instance': replace_resource_dict(module.params['instance'], 'name')
    }
    return "https://spanner.googleapis.com/v1/projects/{project}/instances/{instance}/databases".format(
        **res)
def response_to_hash(module, response):
    return {
        u'name':
        name_pattern(module.params.get('name'), module),
        u'topic':
        topic_pattern(
            replace_resource_dict(module.params.get(u'topic', {}), 'name'),
            module),
        u'labels':
        response.get(u'labels'),
        u'pushConfig':
        SubscriptionPushconfig(response.get(u'pushConfig', {}),
                               module).from_response(),
        u'ackDeadlineSeconds':
        response.get(u'ackDeadlineSeconds'),
        u'messageRetentionDuration':
        response.get(u'messageRetentionDuration'),
        u'retainAckedMessages':
        response.get(u'retainAckedMessages'),
        u'expirationPolicy':
        SubscriptionExpirationpolicy(response.get(u'expirationPolicy', {}),
                                     module).from_response(),
        u'deadLetterPolicy':
        SubscriptionDeadletterpolicy(response.get(u'deadLetterPolicy', {}),
                                     module).from_response(),
    }
Exemple #25
0
def resource_to_request(module):
    request = {
        u'kind': 'compute#networkEndpointGroup',
        u'name': module.params.get('name'),
        u'description': module.params.get('description'),
        u'networkEndpointType': module.params.get('network_endpoint_type'),
        u'network': replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'subnetwork': replace_resource_dict(module.params.get(u'subnetwork', {}), 'selfLink'),
        u'defaultPort': module.params.get('default_port'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
 def _request_for_item(self, item):
     return remove_nones_from_dict({
         u'paths':
         item.get('paths'),
         u'service':
         replace_resource_dict(item.get(u'service', {}), 'selfLink')
     })
def resource_to_request(module):
    request = {
        u'name':
        name_pattern(module.params.get('name'), module),
        u'topic':
        topic_pattern(
            replace_resource_dict(module.params.get(u'topic', {}), 'name'),
            module),
        u'labels':
        module.params.get('labels'),
        u'pushConfig':
        SubscriptionPushconfig(module.params.get('push_config', {}),
                               module).to_request(),
        u'ackDeadlineSeconds':
        module.params.get('ack_deadline_seconds'),
        u'messageRetentionDuration':
        module.params.get('message_retention_duration'),
        u'retainAckedMessages':
        module.params.get('retain_acked_messages'),
        u'expirationPolicy':
        SubscriptionExpirationpolicy(
            module.params.get('expiration_policy', {}), module).to_request(),
        u'deadLetterPolicy':
        SubscriptionDeadletterpolicy(
            module.params.get('dead_letter_policy', {}), module).to_request(),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #28
0
def resource_to_request(module):
    request = {
        u'kind':
        'compute#subnetwork',
        u'description':
        module.params.get('description'),
        u'ipCidrRange':
        module.params.get('ip_cidr_range'),
        u'name':
        module.params.get('name'),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
        u'secondaryIpRanges':
        SubnetworkSecondaryiprangesArray(
            module.params.get('secondary_ip_ranges', []), module).to_request(),
        u'privateIpGoogleAccess':
        module.params.get('private_ip_google_access'),
        u'privateIpv6GoogleAccess':
        module.params.get('private_ipv6_google_access'),
        u'region':
        module.params.get('region'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #29
0
def resource_to_request(module):
    request = {
        u'kind':
        'compute#address',
        u'address':
        module.params.get('address'),
        u'addressType':
        module.params.get('address_type'),
        u'description':
        module.params.get('description'),
        u'name':
        module.params.get('name'),
        u'purpose':
        module.params.get('purpose'),
        u'networkTier':
        module.params.get('network_tier'),
        u'subnetwork':
        replace_resource_dict(module.params.get(u'subnetwork', {}),
                              'selfLink'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals
Exemple #30
0
def resource_to_request(module):
    request = {
        u'kind':
        'compute#backendService',
        u'backends':
        RegionBackendServiceBackendsArray(module.params.get('backends', []),
                                          module).to_request(),
        u'connectionDraining':
        RegionBackendServiceConnectiondraining(
            module.params.get('connection_draining', {}), module).to_request(),
        u'description':
        module.params.get('description'),
        u'healthChecks':
        module.params.get('health_checks'),
        u'loadBalancingScheme':
        module.params.get('load_balancing_scheme'),
        u'name':
        module.params.get('name'),
        u'protocol':
        module.params.get('protocol'),
        u'sessionAffinity':
        module.params.get('session_affinity'),
        u'timeoutSec':
        module.params.get('timeout_sec'),
        u'network':
        replace_resource_dict(module.params.get(u'network', {}), 'selfLink'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals