community.general.exo_dns_domain (0.1.4) — module

Manages domain records on Exoscale DNS API.

Authors: René Moser (@resmo)

Install collection

Install with ansible-galaxy collection install community.general:==0.1.4


Add to requirements.yml

  collections:
    - name: community.general
      version: 0.1.4

Description

Create and remove domain records.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create a domain
  exo_dns_domain:
    name: example.com
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove a domain
  exo_dns_domain:
    name: example.com
    state: absent

Inputs

    
name:
    description:
    - Name of the record.
    required: true
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - State of the resource.
    type: str

api_key:
    description:
    - API key of the Exoscale DNS API.
    - Since 2.4, the ENV variable C(CLOUDSTACK_KEY) is used as default, when defined.
    type: str

api_region:
    default: cloudstack
    description:
    - Name of the ini section in the C(cloustack.ini) file.
    - Since 2.4, the ENV variable C(CLOUDSTACK_REGION) is used as default, when defined.
    type: str

api_secret:
    description:
    - Secret key of the Exoscale DNS API.
    - Since 2.4, the ENV variable C(CLOUDSTACK_SECRET) is used as default, when defined.
    type: str

api_timeout:
    default: 10
    description:
    - HTTP timeout to Exoscale DNS API.
    - Since 2.4, the ENV variable C(CLOUDSTACK_TIMEOUT) is used as default, when defined.
    type: int

validate_certs:
    default: true
    description:
    - Validate SSL certs of the Exoscale DNS API.
    type: bool

Outputs

exo_dns_domain:
  contains:
    account_id:
      description: Your account ID
      returned: success
      sample: 34569
      type: int
    auto_renew:
      description: Whether domain is auto renewed or not
      returned: success
      sample: false
      type: bool
    created_at:
      description: When the domain was created
      returned: success
      sample: '2016-08-12T15:24:23.989Z'
      type: str
    expires_on:
      description: When the domain expires
      returned: success
      sample: '2016-08-12T15:24:23.989Z'
      type: str
    id:
      description: ID of the domain
      returned: success
      sample: '2016-08-12T15:24:23.989Z'
      type: int
    lockable:
      description: Whether the domain is lockable or not
      returned: success
      sample: true
      type: bool
    name:
      description: Domain name
      returned: success
      sample: example.com
      type: str
    record_count:
      description: Number of records related to this domain
      returned: success
      sample: 5
      type: int
    registrant_id:
      description: ID of the registrant
      returned: success
      sample: null
      type: int
    service_count:
      description: Number of services
      returned: success
      sample: 0
      type: int
    state:
      description: State of the domain
      returned: success
      sample: hosted
      type: str
    token:
      description: Token
      returned: success
      sample: r4NzTRp6opIeFKfaFYvOd6MlhGyD07jl
      type: str
    unicode_name:
      description: Domain name as unicode
      returned: success
      sample: example.com
      type: str
    updated_at:
      description: When the domain was updated last.
      returned: success
      sample: '2016-08-12T15:24:23.989Z'
      type: str
    user_id:
      description: ID of the user
      returned: success
      sample: null
      type: int
    whois_protected:
      description: Whether the whois is protected or not
      returned: success
      sample: false
      type: bool
  description: API domain results
  returned: success
  type: complex