gitlab_group – Creates/updates/deletes GitLab Groups

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 >= 2.7
  • python-gitlab python module <= 1.12.1

Parameters

Parameter Choices/Defaults Comments
api_password
string
The password to use for authentication against the API
api_token
string
GitLab token for logging in.

aliases: login_token
api_url
string
The resolvable endpoint for the API
api_username
string
The username to use for authentication against the API
description
string
added in 2.7
A description for the group.
login_password
string
GitLab password for login_user
login_user
string
GitLab user name.
name
string / required
Name of the group you want to create.
parent
string
added in 2.8
Allow to create subgroups
Id or Full path of parent group in the form of group/name
path
string
The path of the group you want to create, this will be server_url/group_path
If not supplied, the group_name will be used.
server_url
string
The URL of the GitLab server, with protocol (i.e. http or https).
state
string
    Choices:
  • present ←
  • absent
create or delete group.
Possible values are present and absent.
validate_certs
boolean
    Choices:
  • no
  • yes ←
Whether or not to validate SSL certs when supplying a https endpoint.
visibility
string
added in 2.8
    Choices:
  • private ←
  • internal
  • public
Default visibility of the group

Examples

- name: "Delete GitLab Group"
  gitlab_group:
    server_url: https://gitlab.example.com/
    api_token: "{{ access_token }}"
    validate_certs: False
    name: my_first_group
    state: absent

- name: "Create GitLab Group"
  gitlab_group:
    server_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"
  gitlab_group:
    server_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"

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
group
dictionary
always
API object

msg
string
always
Success or failure message

Sample:
Success
result
dictionary
always
json parsed response from the server



Status

Authors

  • Werner Dijkerman (@dj-wasabi)
  • Guillaume Martinez (@Lunik)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.