kowabunga.cloud.record module – Manage Kowabunga DNS records

Note

This module is part of the kowabunga.cloud collection (version 0.1.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install kowabunga.cloud. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: kowabunga.cloud.record.

Synopsis

  • Create, update or delete a Kowabunga DNS record.

  • Specify either project or region to determine where the record is created.

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 3.8

  • kowabunga >= 0.52.5

Parameters

Parameter

Comments

addresses

list / elements=string / required

List of IP addresses for the DNS record.

api_key

string / required

Private API key used to connect with specified Kowabunga Kahuna endpoint. Recommended to be encrypted using Ansible Vault or SOPS.

description

string

Description for the DNS record.

endpoint

string / required

HTTPS(S) URI of the Kowabunga Kahuna endpoint. Should be formatted as https://kowabunga.acme.com for example.

name

string / required

Name for the DNS record (hostname or FQDN).

This attribute cannot be updated.

project

string

Name (or ID) of the project where the DNS record will be created.

Mutually exclusive with region.

region

string

Name (or ID) of the region where the DNS record will be created.

Mutually exclusive with project.

state

string

Should the resource be present or absent.

Choices:

  • "present" ← (default)

  • "absent"

Examples

- name: Create a project DNS record
  kowabunga.cloud.record:
    endpoint: https://kowabunga.acme.com
    api_key: API_KEY
    name: myapp
    addresses:
      - 192.168.1.10
    project: my-project

- name: Create a region DNS record
  kowabunga.cloud.record:
    endpoint: https://kowabunga.acme.com
    api_key: API_KEY
    name: service
    addresses:
      - 10.0.0.1
    region: eu-west-1

- name: Delete a DNS record
  kowabunga.cloud.record:
    endpoint: https://kowabunga.acme.com
    api_key: API_KEY
    name: myapp
    project: my-project
    state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

record

dictionary

Dictionary describing the DNS record.

Returned: On success when state is present.

addresses

list / elements=string

List of IP addresses

Returned: success

Sample: ["192.168.1.10"]

description

string

Record description

Returned: success

Sample: "My App"

domain

string

DNS domain

Returned: success

Sample: "project.acme.local"

id

string

Record ID

Returned: success

Sample: "6850281677f2462b6919dbe5"

name

string

Record name

Returned: success

Sample: "myapp"

Authors

  • The Kowabunga Project