scale_computing.hypercore.user module – Creates, updates or deletes local hypercore user accounts.

Note

This module is part of the scale_computing.hypercore collection (version 1.6.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 scale_computing.hypercore.

To use it in a playbook, specify: scale_computing.hypercore.user.

New in scale_computing.hypercore 1.2.0

Synopsis

  • Creates, updates or deletes local hypercore user accounts.

  • The module in general is NOT idempotent. If password needs to be changed, then module will report `changed=True`, even if new password value is the same as old password value.

Parameters

Parameter

Comments

cluster_instance

dictionary

Scale Computing HyperCore instance information.

auth_method

string

Select login method. If not set, the value of the SC_AUTH_METHOD environment variable will be used.

Value local - username/password is verified by the HyperCore server (the local users).

Value oidc - username/password is verified by the configured OIDC provider.

Choices:

  • "local" ← (default)

  • "oidc"

host

string / required

The HyperCore instance URL.

If not set, the value of the SC_HOST environment variable will be used.

For example “https://10.1.2.3:443”.

password

string / required

Password used for authentication.

If not set, the value of the SC_PASSWORD environment variable will be used.

timeout

float

Timeout in seconds for the connection with the Scale Computing HyperCore API instance.

If not set, the value of the SC_TIMEOUT environment variable will be used.

username

string / required

Username used for authentication.

If not set, the value of the SC_USERNAME environment variable will be used.

full_name

string

Human-readable display name.

password

string

Plain text password for authentication.

roles

list / elements=string

Names of the roles this user is a member of.

Choices:

  • "Backup"

  • "VM Delete"

  • "Cluster Settings"

  • "Cluster Shutdown"

  • "VM Power Controls"

  • "Read"

  • "VM Create/Edit"

  • "Admin"

session_limit

integer

The maximum number of Sessions this user may have at one time.

state

string / required

The desired state of the user account.

Use absent to ensure the user will be absent from the API and present to ensure user will remain present on the API.

Choices:

  • "present"

  • "absent"

username

string / required

The user name.

Serves as unique identifier.

If state is present and username doesn’t exist, a new user is created.

If state is present and username already exists, existing user is updated.

If state is absent and username is found, existing user is deleted.

username_new

string

New user name.

Relevant only if state is present and username exists.

Notes

Note

  • check_mode is not supported.

See Also

See also

scale_computing.hypercore.user_info

Returns information about the users.

Examples

- name: Create new user
  scale_computing.hypercore.user:
    state: present
    username: user
    password: password
    full_name: User
    roles:
      - VM delete
      - VM Create/Edit
      - VM Power Controls
    session_limit: 0

- name: Update existing user
  scale_computing.hypercore.user:
    state: present
    username: username
    username_new: updated_username
    password: updated_password

- name: Delete the user
  scale_computing.hypercore.user:
    state: absent
    username: user

Return Values

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

Key

Description

record

dictionary

User record.

Returned: success

full_name

string

Human-readable display name

Returned: success

Sample: "xlab"

roles

list / elements=dictionary

Role identifiers this user is a member of

Returned: success

Sample: {"name": "Admin", "uuid": "38b346c6-a626-444b-b6ab-92ecd671afc0"}

session_limit

integer

The maximum number of Sessions this user may have at one time

Returned: success

Sample: 0

username

string

Human-readable unique identifier for authentication

Returned: success

Sample: "xlab"

uuid

string

Unique identifier

Returned: success

Sample: "51e6d073-7566-4273-9196-58720117bd7f"

Authors

  • Polona Mihalič (@PolonaM)