community.general.gitlab_group_members – Manage group members on GitLab Server
Note
This plugin is part of the community.general collection (version 3.8.3).
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 community.general
.
To use it in a playbook, specify: community.general.gitlab_group_members
.
New in version 1.2.0: of community.general
Synopsis
This module allows to add and remove members to/from a group, or change a member’s access level in a group on GitLab.
Requirements
The below requirements are needed on the host that executes this module.
python-gitlab python module <= 1.15.0
administrator rights on the GitLab server
Parameters
Parameter |
Comments |
---|---|
The access level for the user. Required if state=present, user state is set to present. Mutually exclusive with gitlab_users_access. Choices:
|
|
The password to use for authentication against the API |
|
A personal access token to authenticate with the GitLab API. |
|
The resolvable endpoint for the API |
|
The username to use for authentication against the API |
|
The name of the GitLab group the member is added to/removed from. |
|
A username or a list of usernames to add to/remove from the GitLab group. Mutually exclusive with gitlab_users_access. |
|
Provide a list of user to access level mappings. Every dictionary in this list specifies a user (by username) and the access level the user should have. Mutually exclusive with gitlab_user and access_level. Use together with purge_users to remove all users not specified here from the group. |
|
The access level for the user. Required if state=present, user state is set to present. Choices:
|
|
A username or a list of usernames to add to/remove from the GitLab group. |
|
Adds/remove users of the given access_level to match the given gitlab_user/gitlab_users_access list. If omitted do not purge orphaned members. Is only used when state=present. Choices:
|
|
State of the member in the group. On On Choices:
|
|
Whether or not to validate SSL certs when supplying a https endpoint. Choices:
|
Examples
- name: Add a user to a GitLab Group
community.general.gitlab_group_members:
api_url: 'https://gitlab.example.com'
api_token: 'Your-Private-Token'
gitlab_group: groupname
gitlab_user: username
access_level: developer
state: present
- name: Remove a user from a GitLab Group
community.general.gitlab_group_members:
api_url: 'https://gitlab.example.com'
api_token: 'Your-Private-Token'
gitlab_group: groupname
gitlab_user: username
state: absent
- name: Add a list of Users to A GitLab Group
community.general.gitlab_group_members:
api_url: 'https://gitlab.example.com'
api_token: 'Your-Private-Token'
gitlab_group: groupname
gitlab_user:
- user1
- user2
access_level: developer
state: present
- name: Add a list of Users with Dedicated Access Levels to A GitLab Group
community.general.gitlab_group_members:
api_url: 'https://gitlab.example.com'
api_token: 'Your-Private-Token'
gitlab_group: groupname
gitlab_users_access:
- name: user1
access_level: developer
- name: user2
access_level: maintainer
state: present
- name: Add a user, remove all others which might be on this access level
community.general.gitlab_group_members:
api_url: 'https://gitlab.example.com'
api_token: 'Your-Private-Token'
gitlab_group: groupname
gitlab_user: username
access_level: developer
pruge_users: developer
state: present
- name: Remove a list of Users with Dedicated Access Levels to A GitLab Group
community.general.gitlab_group_members:
api_url: 'https://gitlab.example.com'
api_token: 'Your-Private-Token'
gitlab_group: groupname
gitlab_users_access:
- name: user1
access_level: developer
- name: user2
access_level: maintainer
state: absent
Authors
Zainab Alsaffar (@zanssa)