Python Gitlab Management

PyPi Version License: LGPL v3 Pipelien Status - Stable Code Coverage - Stable PyLint Score Master Docker Image Version (tag latest semver) Read the Docs (version) Pipelien Status - Dev Code Coverage - dev PyLint Score Dev Docker Image Version (tag latest semver) Read the Docs (version)

Gitlab-management is python module that enables GitLab group configuration from code. By design it’s intended to be setup to run on a schedule.

How to Use

GitLab-Management can be used from the command line or imported as a python module.

Feature wise this module only process labels (create/add). over time features will be added. please see the milestones, issue and merge requests at the home page.

For please refer to the docs.

Python Module

To install run pip install gitlab-management. from there you will be able to use and extend the module as you see fit.

CLI

Gitlab-management can be used via cli with gitlab-management, there is no requirement to prefix with python3 -m, as the command is registered on install. To view all available options, use switch -h or --help

Config File

The configuration file for this module (config.yml) is a yml formated file that is required to be in the directory that the command is ran from.

The layout of the yml file

Group:
    Labels:
        -
            Group: Example1
            Name: Bug
            Description: "Items that are bugs or bug related"
            Color: "#FF0000"

        -
            Group:
                - Example1
                - Example2
            Name: Feature
            Description: "Items that are feature related"
            Color: "#00FF00"

Group.Labels is a list of dict for each label that is to be created add a new dict to the list under Group.Labels

Group.Labels.#.Group can be a single string which is the name of an existing group that the user has access to as maintainer. Group.Labels.#.Group can also be a list of group names that the label will be added to.

Docker container

further help can be found in the documentation.

The docker images have been desigend to run the module directly as a command, where you only have to specify the CLI arguments.

images are tagged for ease of idententification in accordance with the table below:

Tag repo branch When created
{Version number} Git Tag every git tag will create it’s version
dev development when a merge to development branch occurs or a git tag is created on a branch not master.
stable master when a merge to master branch occurs

Issues, Feature Requests and Bugs

If an issue or bug is found within the package (i.e. exception), please create an issue ticket using the applicable issue template available at the time of ticket creation. If you would like to request a feature and are unable to contribute, please create an issue using the feature issue template.

Contributing

Contribution guide can be viewed in the repo.

Licence

The package licence can be viewed in the repo