Skip to content

🤖 A GitLab bot that tidies and attends to repositories

License

Notifications You must be signed in to change notification settings

stuartmccoll/gitlab-attendant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitLab Attendant

Build Status Code style: black License: MIT

Description

The GitLab Attendant is a bot that will tidy and attend to repositories on a specified GitLab installation at a scheduled basis. Currently the bot is capable of removing merged branches, assigning project members to open issues, assigning project members to open merge requests, notifying issue assignees of due or overdue issues, and notifying assignees of stale merge requests.

In order to use the GitLab Attendant fully, you should create a new account within the specified GitLab installation with privileges that will allow the bot to read and write any changes necessary to branches, merge requests, issues, etc. The personal access token for this account should then be entered in the token paramter when calling the bot from the command line.

Python 3.6 or Python 3.7 are required to run this utility.

Installation

This utility can be installed through pip by running the following command:

pip install gitlab-attendant

Usage

gitlab-attendant --ip localhost --interval 7 --token TOKEN

Options:
  --ip          The IP address of the GitLab installation.
  --interval    task scheduler interval in hours (ex. 1, 10) [default: 24]
  --token       GitLab personal access token.

This will run the GitLab Attendant process, which will begin attending to the specified GitLab installation at the first interval specified.

Tests

Tests for this project utilise the Pytest framework. To run the existing suite of unit tests run the following command within the root directory:

pytest

Notes

All Python code has been formatted by Black, 'the uncompromising Python code formatter'.

Type checking has been provided by Pyre.

Continuous integration is handled by Travis CI.

License

See LICENSE.md.

About

🤖 A GitLab bot that tidies and attends to repositories

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages