community.general.vertica_role – Adds or removes Vertica database roles and assigns roles to them.

Note

This plugin is part of the community.general collection.

To install it use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.vertica_role.

Synopsis

  • Adds or removes Vertica database role and, optionally, assign other roles.

Requirements

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

  • unixODBC

  • pyodbc

Parameters

Parameter Choices/Defaults Comments
assigned_roles
string
Comma separated list of roles to assign to the role.

aliases: assigned_role
cluster
string
Default:
"localhost"
Name of the Vertica cluster.
db
string
Name of the Vertica database.
login_password
string
The password used to authenticate with.
login_user
string
Default:
"dbadmin"
The username used to authenticate with.
name
string / required
Name of the role to add or remove.
port
string
Default:
5433
Vertica cluster port to connect to.
state
string
    Choices:
  • present ←
  • absent
Whether to create present, drop absent or lock locked a role.

Notes

Note

  • The default authentication assumes that you are either logging in as or sudo’ing to the dbadmin account on the host.

  • This module uses pyodbc, a Python ODBC database adapter. You must ensure that unixODBC and pyodbc is installed on the host and properly configured.

  • Configuring unixODBC for Vertica requires Driver = /opt/vertica/lib64/libverticaodbc.so to be added to the Vertica section of either /etc/odbcinst.ini or $HOME/.odbcinst.ini and both ErrorMessagesPath = /opt/vertica/lib64 and DriverManagerEncoding = UTF-16 to be added to the Driver section of either /etc/vertica.ini or $HOME/.vertica.ini.

Examples

- name: Creating a new vertica role
  community.general.vertica_role: name=role_name db=db_name state=present

- name: Creating a new vertica role with other role assigned
  community.general.vertica_role: name=role_name assigned_role=other_role_name state=present

Authors

  • Dariusz Owczarek (@dareko)