kowabunga.cloud.project module – Manage Kowabunga projects

Note

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

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.project.

Synopsis

  • Create, update or delete a Kowabunga project.

Requirements

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

  • python >= 3.8

  • kowabunga >= 0.52.5

Parameters

Parameter

Comments

api_key

string / required

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

bootstrap_pubkey

string

Templated SSH public key to be used to bootstrap project’s kompute instances.

This attribute cannot be updated.

bootstrap_user

string

Templated user to be created to bootstrap project’s kompute instances.

This attribute cannot be updated.

description

string

Description for the project.

domain

string

Fully qualified domain name for project’s kompute instances.

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 project.

This attribute cannot be updated.

regions

list / elements=string

Name of regions where the project can create instances on.

root_password

string

Default root password to be set of project’s kompute instances to be created (auto-generated if unspecified).

This attribute cannot be updated.

state

string

Should the resource be present or absent.

Choices:

  • "present" ← (default)

  • "absent"

subnet_size

integer

Private subnet netmask size (e.g. /26) requested at project’s creation.

This attribute cannot be updated.

Default: 26

teams

list / elements=string

Name of teams with access to the project.

Examples

- name: Create a project
  kowabunga.cloud.project:
    endpoint: https://kowabunga.acme.com
    api_key: API_KEY
    name: my-project
    teams:
      - dev
      - ops
    regions:
      - eu-west-1

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

Return Values

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

Key

Description

project

dictionary

Dictionary describing the project.

Returned: On success when state is present.

bootstrap_pubkey

string

SSH public key used to bootstrap project’s kompute instances.

Returned: success

Sample: "ecdsa-sha2-nistp256 AAA...e8sKU="

bootstrap_user

string

Username used to bootstrap project’s kompute instances.

Returned: success

Sample: "kowabunga"

description

string

Project description

Returned: success

Sample: "My Project"

domain

string

Private domain FQDN

Returned: success

Sample: "project.acme.local"

id

string

Project ID

Returned: success

Sample: "6850281677f2462b6919dbe5"

name

string

Project name

Returned: success

Sample: "my-project"

Authors

  • The Kowabunga Project