community.general.gitlab_group module – Creates/updates/deletes GitLab Groups
Note
This module is part of the community.general collection (version 9.4.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 community.general
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.general.gitlab_group
.
Synopsis
When the group does not exist in GitLab, it will be created.
When the group does exist and state=absent, the group will be deleted.
Requirements
The below requirements are needed on the host that executes this module.
python-gitlab python module
requests (Python library https://pypi.org/project/requests/)
Parameters
Parameter |
Comments |
---|---|
GitLab CI job token for logging in. |
|
GitLab OAuth token for logging in. |
|
The password to use for authentication against the API. |
|
GitLab access token with API permissions. |
|
The resolvable endpoint for the API. |
|
The username to use for authentication against the API. |
|
Default to Auto DevOps pipeline for all projects within this group. Choices:
|
|
Absolute path image to configure avatar. File size should not exceed 200 kb. This option is only used on creation, not for updates. |
|
The CA certificates bundle to use to verify GitLab server certificate. |
|
A description for the group. |
|
Force delete group even if projects in it. Used only when Choices:
|
|
Name of the group you want to create. |
|
Allow to create subgroups Id or Full path of parent group in the form of group/name |
|
The path of the group you want to create, this will be api_url/group_path If not supplied, the group_name will be used. |
|
Determine if developers can create projects in the group. Choices:
|
|
Require all users in this group to setup two-factor authentication. Choices:
|
|
create or delete group. Possible values are present and absent. Choices:
|
|
Allowed to create subgroups. Choices:
|
|
Whether or not to validate SSL certs when supplying a HTTPS endpoint. Choices:
|
|
Default visibility of the group Choices:
|
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: full |
Can run in |
|
Support: none |
Will return details on what has changed (or possibly needs changing in |
Examples
- name: "Delete GitLab Group"
community.general.gitlab_group:
api_url: https://gitlab.example.com/
api_token: "{{ access_token }}"
name: my_first_group
state: absent
- name: "Create GitLab Group"
community.general.gitlab_group:
api_url: https://gitlab.example.com/
validate_certs: true
api_username: dj-wasabi
api_password: "MySecretPassword"
name: my_first_group
path: my_first_group
state: present
# The group will by created at https://gitlab.dj-wasabi.local/super_parent/parent/my_first_group
- name: "Create GitLab SubGroup"
community.general.gitlab_group:
api_url: https://gitlab.example.com/
validate_certs: true
api_username: dj-wasabi
api_password: "MySecretPassword"
name: my_first_group
path: my_first_group
state: present
parent: "super_parent/parent"
# Other group which only allows sub-groups - no projects
- name: "Create GitLab Group for SubGroups only"
community.general.gitlab_group:
api_url: https://gitlab.example.com/
validate_certs: true
api_username: dj-wasabi
api_password: "MySecretPassword"
name: my_main_group
path: my_main_group
state: present
project_creation_level: noone
auto_devops_enabled: false
subgroup_creation_level: maintainer
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
the error message returned by the GitLab API Returned: failed Sample: |
|
API object Returned: always |
|
Success or failure message Returned: always Sample: |
|
json parsed response from the server Returned: always |