ngine_io.cloudstack.cs_user – Manages users on Apache CloudStack based clouds.

Note

This plugin is part of the ngine_io.cloudstack collection (version 2.1.0).

To install it use: ansible-galaxy collection install ngine_io.cloudstack.

To use it in a playbook, specify: ngine_io.cloudstack.cs_user.

New in version 0.1.0: of ngine_io.cloudstack

Synopsis

  • Create, update, disable, lock, enable and remove users.

Requirements

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

  • python >= 2.6

  • cs >= 0.9.0

Parameters

Parameter Choices/Defaults Comments
account
string
Account the user will be created under.
Required on state=present.
api_http_method
string
    Choices:
  • get ←
  • post
HTTP method used to query the API endpoint.
If not given, the CLOUDSTACK_METHOD env variable is considered.
api_key
string / required
API key of the CloudStack API.
If not given, the CLOUDSTACK_KEY env variable is considered.
api_secret
string / required
Secret key of the CloudStack API.
If not set, the CLOUDSTACK_SECRET env variable is considered.
api_timeout
integer
Default:
10
HTTP timeout in seconds.
If not given, the CLOUDSTACK_TIMEOUT env variable is considered.
api_url
string / required
URL of the CloudStack API e.g. https://cloud.example.com/client/api.
If not given, the CLOUDSTACK_ENDPOINT env variable is considered.
api_verify_ssl_cert
string
Verify CA authority cert file.
If not given, the CLOUDSTACK_VERIFY env variable is considered.
domain
string
Default:
"ROOT"
Domain the user is related to.
email
string
Email of the user.
Required on state=present.
first_name
string
First name of the user.
Required on state=present.
keys_registered
boolean
    Choices:
  • no ←
  • yes
If API keys of the user should be generated.
Note: Keys can not be removed by the API again.
last_name
string
Last name of the user.
Required on state=present.
password
string
Password of the user to be created.
Required on state=present.
Only considered on creation and will not be updated if user exists.
poll_async
boolean
    Choices:
  • no
  • yes ←
Poll async jobs until job has finished.
state
string
    Choices:
  • present ←
  • absent
  • enabled
  • disabled
  • locked
  • unlocked
State of the user.
unlocked is an alias for enabled.
timezone
string
Timezone of the user.
username
string / required
Username of the user.

Notes

Note

  • A detailed guide about cloudstack modules can be found in the CloudStack Cloud Guide.

  • This module supports check mode.

Examples

- name: Create an user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    account: developers
    username: johndoe
    password: S3Cur3
    last_name: Doe
    first_name: John
    email: [email protected]
    domain: CUSTOMERS

- name: Lock an existing user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    username: johndoe
    domain: CUSTOMERS
    state: locked

- name: Disable an existing user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    username: johndoe
    domain: CUSTOMERS
    state: disabled

- name: Enable/unlock an existing user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    username: johndoe
    domain: CUSTOMERS
    state: enabled

- name: Remove an user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    name: customer_xy
    domain: CUSTOMERS
    state: absent

Return Values

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

Key Returned Description
account
string
success
Account name of the user.

Sample:
developers
account_type
string
success
Type of the account.

Sample:
user
created
string
success
Date the user was created.

Sample:
Doe
domain
string
success
Domain the user is related.

Sample:
ROOT
email
string
success
Emailof the user.

Sample:
fist_name
string
success
First name of the user.

Sample:
John
id
string
success
UUID of the user.

Sample:
87b1e0ce-4e01-11e4-bb66-0050569e64b8
last_name
string
success
Last name of the user.

Sample:
Doe
state
string
success
State of the user.

Sample:
enabled
timezone
string
success
Timezone of the user.

Sample:
enabled
user_api_key
string
success
API key of the user.

Sample:
JLhcg8VWi8DoFqL2sSLZMXmGojcLnFrOBTipvBHJjySODcV4mCOo29W2duzPv5cALaZnXj5QxDx3xQfaQt3DKg
user_api_secret
string
success
API secret of the user.

Sample:
FUELo3LB9fa1UopjTLPdqLv_6OXQMJZv9g9N4B_Ao3HFz8d6IGFCV9MbPFNM8mwz00wbMevja1DoUNDvI8C9-g
username
string
success
Username of the user.

Sample:
johndoe


Authors

  • René Moser (@resmo)