community.general.gitlab_user – Creates/updates/deletes/blocks/unblocks GitLab Users
community.general.gitlab_user – Creates/updates/deletes/blocks/unblocks GitLab Users
Note
This plugin is part of the community.general collection (version 2.0.1).
To install it use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.gitlab_user
.
Synopsis
- When the user does not exist in GitLab, it will be created.
- When the user exists and state=absent, the user will be deleted.
- When the user exists and state=blocked, the user will be blocked.
- When changes are made to user, the user will be updated.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.7
- python-gitlab python module
- administrator rights on the GitLab server
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
access_level string |
|
The access level to the group. One of the following can be used. guest reporter developer master (alias for maintainer) maintainer owner |
api_password string |
The password to use for authentication against the API | |
api_token string |
GitLab token for logging in. | |
api_url string |
The resolvable endpoint for the API | |
api_username string |
The username to use for authentication against the API | |
confirm boolean |
|
Require confirmation. |
string |
The email that belongs to the user. Required only if | |
external boolean |
|
Define external parameter for this user. |
group string |
Id or Full path of parent group in the form of group/name. Add user as an member to this group. | |
isadmin boolean |
|
Grant admin privileges to the user. |
name string |
Name of the user you want to create. Required only if | |
password string |
The password of the user. GitLab server enforces minimum password length to 8, set this value with 8 or more characters. Required only if | |
sshkey_file string |
The ssh key itself. | |
sshkey_name string |
The name of the sshkey | |
state string |
|
Create, delete or block a user. |
username string / required |
The username of the user. | |
validate_certs boolean |
|
Whether or not to validate SSL certs when supplying a https endpoint. |
Notes
Note
- From community.general 0.2.0 and onwards, name, email and password are optional while deleting the user.
Examples
- name: "Delete GitLab User"
community.general.gitlab_user:
api_url: https://gitlab.example.com/
api_token: "{{ access_token }}"
validate_certs: False
username: myusername
state: absent
- name: "Create GitLab User"
community.general.gitlab_user:
api_url: https://gitlab.example.com/
validate_certs: True
api_username: dj-wasabi
api_password: "MySecretPassword"
name: My Name
username: myusername
password: mysecretpassword
email: [email protected]
sshkey_name: MySSH
sshkey_file: ssh-rsa AAAAB3NzaC1yc...
state: present
group: super_group/mon_group
access_level: owner
- name: "Block GitLab User"
community.general.gitlab_user:
api_url: https://gitlab.example.com/
api_token: "{{ access_token }}"
validate_certs: False
username: myusername
state: blocked
- name: "Unblock GitLab User"
community.general.gitlab_user:
api_url: https://gitlab.example.com/
api_token: "{{ access_token }}"
validate_certs: False
username: myusername
state: unblocked
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
error string |
failed |
the error message returned by the GitLab API
Sample: 400: path is already in use |
msg string |
always |
Success or failure message
Sample: Success |
result dictionary |
always |
json parsed response from the server
|
user dictionary |
always |
API object
|
Authors
- Werner Dijkerman (@dj-wasabi)
- Guillaume Martinez (@Lunik)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/gitlab_user_module.html