cloudera.services.ssb_environment module – Manage SSB project environments

Note

This module is part of the cloudera.services collection (version 1.0.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 git+https://github.com/cloudera-labs/cloudera.services.git.

To use it in a playbook, specify: cloudera.services.ssb_environment.

New in cloudera.services 1.0.0

Synopsis

  • Create, update, delete, or manage Cloudera SSB project environments.

  • The module supports check_mode.

  • Environments store configuration properties that can be used across jobs in a project.

  • Use activated=true to set an environment as the active environment for a project.

Parameters

Parameter

Comments

activated

boolean

Whether this environment should be the active environment for the project.

When true, the environment will be set as active after creation or update.

When false, the environment state is not changed (default behavior).

Choices:

  • false ← (default)

  • true

client_cert

path

The path to a client certificate for authenticating to the API endpoint.

client_key

path

The path to a client key for authenticating to the API endpoint.

debug

aliases: debug_endpoints

boolean

A flag to enable debug logging of the module’s execution.

Choices:

  • false ← (default)

  • true

force

boolean

A flag to force a refresh of the API request, ignoring any cached results.

Choices:

  • false ← (default)

  • true

force_basic_auth

boolean

A flag to force basic authentication for API requests.

Choices:

  • false ← (default)

  • true

http_agent

aliases: user_agent

string

The User-Agent string to send with API requests.

Default: "cloudera-services-module"

id

aliases: environment_id

integer

The unique identifier of the environment.

This parameter is mutually exclusive with name.

This field is read-only and cannot be modified after creation.

name

string

The name of the environment.

Required when creating a new environment (state=present).

This parameter is mutually exclusive with id.

page_size

aliases: default_page_size

integer

The number of items to return per page in a paginated API response.

Default: 100

project_id

string / required

The unique identifier of the project.

Required for all operations.

properties

dictionary

Dictionary of configuration properties for the environment.

Each property can have a value and a sensitive flag.

Sensitive properties are masked in logs and API responses.

sensitive

boolean

Whether the property value is sensitive and should be masked.

Choices:

  • false ← (default)

  • true

value

string / required

The value of the property.

state

string

The desired state of the environment.

Use present to create or update an environment.

Use absent to delete an environment.

Choices:

  • "present" ← (default)

  • "absent"

timeout

aliases: timeout_seconds

integer

The timeout in seconds for any API requests.

Default: 60

url

aliases: endpoint, endpoint_url

string / required

The base URL of the API endpoint, including the port if necessary.

url_password

string

The password for authenticating to the API endpoint.

url_username

string

The username for authenticating to the API endpoint.

use_gssapi

boolean

A flag to enable or disable GSSAPI authentication for API requests.

Choices:

  • false ← (default)

  • true

use_proxy

boolean

A flag to enable or disable the use of a proxy for API requests.

Choices:

  • false

  • true ← (default)

validate_certs

boolean

A flag to enable or disable SSL certificate validation for API requests.

Choices:

  • false

  • true ← (default)

Examples

- name: Create a minimal SSB environment (no properties)
  cloudera.services.ssb_environment:
    project_id: "12345"
    name: "development"
    state: present

- name: Create an environment with properties
  cloudera.services.ssb_environment:
    project_id: "12345"
    name: "production"
    properties:
      database_url:
        value: "jdbc:postgresql://db.example.com:5432/mydb"
        sensitive: false
      database_password:
        value: "secret123"
        sensitive: true
      max_connections:
        value: "100"
        sensitive: false
    state: present

- name: Create and activate an environment
  cloudera.services.ssb_environment:
    project_id: "12345"
    name: "staging"
    properties:
      env_name:
        value: "staging"
        sensitive: false
    activated: true
    state: present

- name: Update environment properties
  cloudera.services.ssb_environment:
    project_id: "12345"
    name: "development"
    properties:
      new_setting:
        value: "new_value"
        sensitive: false
    state: present

- name: Delete an environment by name
  cloudera.services.ssb_environment:
    project_id: "12345"
    name: "development"
    state: absent

- name: Delete an environment by id
  cloudera.services.ssb_environment:
    project_id: "12345"
    id: 42
    state: absent

Return Values

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

Key

Description

environment

dictionary

The environment details.

Returned: when state is present

created_at

string

The timestamp when the environment was created.

Returned: when available

id

integer

The unique identifier of the environment.

Returned: always

last_edited_at

string

The timestamp when the environment was last edited.

Returned: when available

last_editor

string

The username of the last person to edit the environment.

Returned: when available

name

string

The name of the environment.

Returned: always

project

string

The project identifier this environment belongs to.

Returned: when available

secured_props

dictionary

Dictionary of secured properties for the environment.

Returned: when available

sensitive

boolean

Whether the property value is sensitive.

Returned: when available

value

string

The value of the property.

Returned: always

sdk_out

string

Returns the captured REST API log.

Returned: when supported

sdk_out_lines

list / elements=string

Returns a list of each line of the captured REST API log.

Returned: when supported

Authors

  • Webster Mudge (@wmudge)