community.general.gitlab_protected_branch module – Manage protection of existing branches

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_protected_branch.

New in community.general 3.4.0

Synopsis

  • (un)Marking existing branches for protection.

Requirements

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

Parameters

Parameter

Comments

api_job_token

string

added in community.general 4.2.0

GitLab CI job token for logging in.

api_oauth_token

string

added in community.general 4.2.0

GitLab OAuth token for logging in.

api_password

string

The password to use for authentication against the API.

api_token

string

GitLab access token with API permissions.

api_url

string

The resolvable endpoint for the API.

api_username

string

The username to use for authentication against the API.

ca_path

string

added in community.general 8.1.0

The CA certificates bundle to use to verify GitLab server certificate.

merge_access_levels

string

Access levels allowed to merge.

Choices:

  • "maintainer" ← (default)

  • "developer"

  • "nobody"

name

string / required

The name of the branch that needs to be protected.

Can make use a wildcard character for like production/* or just have main or develop as value.

project

string / required

The path and name of the project.

push_access_level

string

Access levels allowed to push.

Choices:

  • "maintainer" ← (default)

  • "developer"

  • "nobody"

state

string

Create or delete protected branch.

Choices:

  • "present" ← (default)

  • "absent"

validate_certs

boolean

Whether or not to validate SSL certs when supplying a HTTPS endpoint.

Choices:

  • false

  • true ← (default)

Attributes

Attribute

Support

Description

check_mode

Support: full

Can run in check_mode and return changed status prediction without modifying target.

diff_mode

Support: none

Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode.

Examples

- name: Create protected branch on main
  community.general.gitlab_protected_branch:
    api_url: https://gitlab.com
    api_token: secret_access_token
    project: "dj-wasabi/collection.general"
    name: main
    merge_access_levels: maintainer
    push_access_level: nobody

Authors

  • Werner Dijkerman (@dj-wasabi)