ngine_io.vultr.vultr_user – Manages users on Vultr.

Note

This plugin is part of the ngine_io.vultr collection (version 1.1.0).

You might already have this collection installed if you are using the ansible package. 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 ngine_io.vultr.

To use it in a playbook, specify: ngine_io.vultr.vultr_user.

New in version 0.1.0: of ngine_io.vultr

Synopsis

  • Create, update and remove users.

Requirements

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

  • python >= 2.6

Parameters

Parameter

Comments

acls

aliases: acl

list / elements=string

List of ACLs this users should have, see https://www.vultr.com/api/#user_user_list.

Required if state=present.

One or more of the choices list, some depend on each other.

Choices:

  • manage_users

  • subscriptions

  • provisioning

  • billing

  • support

  • abuse

  • dns

  • upgrade

api_account

string

Name of the ini section in the vultr.ini file.

The ENV variable VULTR_API_ACCOUNT is used as default, when defined.

Default: “default”

api_enabled

boolean

Whether the API is enabled or not.

Choices:

  • no

  • yes ← (default)

api_endpoint

string

URL to API endpint (without trailing slash).

The ENV variable VULTR_API_ENDPOINT is used as default, when defined.

Fallback value is https://api.vultr.com if not specified.

api_key

string

API key of the Vultr API.

The ENV variable VULTR_API_KEY is used as default, when defined.

api_retries

integer

Amount of retries in case of the Vultr API retuns an HTTP 503 code.

The ENV variable VULTR_API_RETRIES is used as default, when defined.

Fallback value is 5 retries if not specified.

api_retry_max_delay

integer

Retry backoff delay in seconds is exponential up to this max. value, in seconds.

The ENV variable VULTR_API_RETRY_MAX_DELAY is used as default, when defined.

Fallback value is 12 seconds.

api_timeout

integer

HTTP timeout to Vultr API.

The ENV variable VULTR_API_TIMEOUT is used as default, when defined.

Fallback value is 60 seconds if not specified.

email

string

Email of the user.

Required if state=present.

force

boolean

Password will only be changed with enforcement.

Choices:

  • no ← (default)

  • yes

name

string / required

Name of the user

password

string

Password of the user.

Only considered while creating a user or when force=yes.

state

string

State of the user.

Choices:

  • present ← (default)

  • absent

validate_certs

boolean

Validate SSL certs of the Vultr API.

Choices:

  • no

  • yes ← (default)

Notes

Note

Examples

- name: Ensure a user exists
  ngine_io.vultr.vultr_user:
    name: john
    email: [email protected]
    password: s3cr3t
    acls:
      - upgrade
      - dns
      - manage_users
      - subscriptions
      - upgrade

- name: Remove a user
  ngine_io.vultr.vultr_user:
    name: john
    state: absent

Return Values

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

Key

Description

vultr_api

complex

Response from Vultr API with a few additions/modification

Returned: success

api_account

string

Account used in the ini file to select the key

Returned: success

Sample: “default”

api_endpoint

string

Endpoint used for the API requests

Returned: success

Sample:https://api.vultr.com

api_retries

integer

Amount of max retries for the API requests

Returned: success

Sample: 5

api_retry_max_delay

integer

Exponential backoff delay in seconds between retries up to this max delay value.

Returned: success

Sample: 12

api_timeout

integer

Timeout used for the API requests

Returned: success

Sample: 60

vultr_user

complex

Response from Vultr API

Returned: success

acls

list / elements=string

List of ACLs of the user.

Returned: success

Sample: [“manage_users”, “support”, “upgrade”]

api_enabled

boolean

Whether the API is enabled or not.

Returned: success

Sample: true

api_key

string

API key of the user.

Returned: only after resource was created

Sample: “567E6K567E6K567E6K567E6K567E6K”

email

string

Email of the user.

Returned: success

Sample:john@example.com

id

string

ID of the user.

Returned: success

Sample: “5904bc6ed9234”

name

string

Name of the user.

Returned: success

Sample: “john”

Authors

  • René Moser (@resmo)