delowan.googlecloud.gcp_dns_resource_record_set (1.0.2) — module

Creates a GCP ResourceRecordSet

Authors: Google Inc. (@googlecloudplatform)

preview | supported by community

Install collection

Install with ansible-galaxy collection install delowan.googlecloud:==1.0.2


Add to requirements.yml

  collections:
    - name: delowan.googlecloud
      version: 1.0.2

Description

A single DNS record that exists on a domain name (i.e. in a managed zone).

This record defines the information about the domain and where the domain / subdomains direct to.

The record will include the domain/subdomain name, a type (i.e. A, AAA, CAA, MX, CNAME, NS, etc) .


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a managed zone
  google.cloud.gcp_dns_managed_zone:
    name: managedzone-rrs
    dns_name: testzone-4.com.
    description: test zone
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: managed_zone
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a resource record set
  google.cloud.gcp_dns_resource_record_set:
    name: www.testzone-4.com.
    managed_zone: "{{ managed_zone }}"
    type: A
    ttl: 600
    target:
    - 10.1.2.3
    - 40.5.6.7
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Inputs

    
ttl:
    description:
    - Number of seconds that this ResourceRecordSet can be cached by resolvers.
    required: false
    type: int

name:
    description:
    - For example, U(www.example.com).
    required: true
    type: str

type:
    description:
    - One of valid DNS resource types.
    - 'Some valid choices include: "A", "AAAA", "CAA", "CNAME", "DNSKEY", "DS", "IPSECVPNKEY",
      "MX", "NAPTR", "NS", "PTR", "SOA", "SPF", "SRV", "SSHFP", "TLSA", "TXT"'
    required: true
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Whether the given object should exist in GCP
    type: str

scopes:
    description:
    - Array of scopes to be used
    elements: str
    type: list

target:
    description:
    - As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) .
    elements: str
    required: false
    type: list

project:
    description:
    - The Google Cloud Platform project to use.
    type: str

env_type:
    description:
    - Specifies which Ansible environment you're running this module within.
    - This should not be set unless you know what you're doing.
    - This only alters the User Agent string for any API requests.
    type: str

auth_kind:
    choices:
    - application
    - machineaccount
    - serviceaccount
    description:
    - The type of credential used.
    required: true
    type: str

managed_zone:
    description:
    - Identifies the managed zone addressed by this request. This must be a dictionary
      that contains both a 'name' key and a 'dnsName' key. You can pass in the results
      of the gcp_dns_managed_zone module, which will contain both.
    required: true
    type: dict

service_account_file:
    description:
    - The path of a Service Account JSON file if serviceaccount is selected as type.
    type: path

service_account_email:
    description:
    - An optional service account email address if machineaccount is selected and the
      user does not wish to use the default email.
    type: str

service_account_contents:
    description:
    - The contents of a Service Account JSON file, either in a dictionary or as a JSON
      string that represents it.
    type: jsonarg

Outputs

managed_zone:
  description:
  - Identifies the managed zone addressed by this request. This must be a dictionary
    that contains both a 'name' key and a 'dnsName' key. You can pass in the results
    of the gcp_dns_managed_zone module, which will contain both.
  returned: success
  type: dict
name:
  description:
  - For example, U(www.example.com).
  returned: success
  type: str
target:
  description:
  - As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) .
  returned: success
  type: list
ttl:
  description:
  - Number of seconds that this ResourceRecordSet can be cached by resolvers.
  returned: success
  type: int
type:
  description:
  - One of valid DNS resource types.
  returned: success
  type: str