Table of contents:
This is a "private" repository that contains the script(s) that I use for maintaining my own set of repositories.
Documentation available here.
Several actions are part of this repository.
job | branch | Description |
---|---|---|
main | main |
After each merge/commit into main the CHANGELOG.md will be updated and committed in the repository. |
python-package | <ALL> |
If a git clone needs to be executed. |
run-all | main |
It will execute the run-all.py script to run all the scripts. |
The main
Github Action is also used by other git repositories.
This is a script that will create a tag in the current repository where it is executed and will do the following:
- Create a tag;
- Will push this tag to Github;
- Will create a "release" in Github;
- Commits
CONTRIBUTORS
file where needed; - Commits
CHANGELOG.md
file where needed; - Pushes the commits to Github
Example help
message:
$ ./release.py -h
usage: release.py [-h] [-c CREATE] [-d] [-D] [-l] [-t TOKEN]
This script will create a tag, update where needed the CHANGELOG.md and CONTRIBUTORS file and create a release in Github with the provided version. Can also provided the latest tag or generate (without commit) a CHANGELOG.md.
optional arguments:
-h, --help show this help message and exit
-c CREATE, --create CREATE
Create a tag and a complete release with provided version.
-d, --docs Create and/or Update the CHANGELOG.md file.
-D, --debug Print some debug information
-l, --list Provides the latest created tag in this repository.
-t TOKEN, --token TOKEN
The Github API token, or set environment variable "CHANGELOG_GITHUB_TOKEN".
A script that reads the information from the dj-wasabi.yml
file and based on a key named labels
it
will create/delete/update labels in the git repository on Github.
$ ./label.py -h
usage: label.py [-h] [-D] [-r REPO] [-t TOKEN]
This script is responsible for creating/deleting labels in current git repositoryin Github based on a configuration cound in the 'dj-wasabi.yml' file.
optional arguments:
-h, --help show this help message and exit
-D, --debug Print some debug information
-r REPO, --repo REPO The name of the repository
-t TOKEN, --token TOKEN
The Github API token.
A script that reads the information from the dj-wasabi.yml
file and will configure the repositories with wiki or projects enabled.
$ ./repository.py -h
usage: repository.py [-h] [-D] [-r REPO] [-t TOKEN]
This script is responsible for configuring the git repositories based on a configuration found in the 'dj-wasabi.yml' file.
optional arguments:
-h, --help show this help message and exit
-D, --debug Print some debug information
-r REPO, --repo REPO The name of the repository. Example "git@github.com:dj-wasabi/consul.git"
-t TOKEN, --token TOKEN
The Github API token.
A list with labels.
Configuration | Description |
---|---|
name | The name of the label. |
color | The colorcode of the label, without # . |
description | The description of the label.. |
An configuration which contains a list of scripts that will be executed on all repositories (found in key repositories
).
Configuration | Description |
---|---|
name | The name of the script. |
clone | If a git clone needs to be executed. |
args | A list with arguments that needs to be appended for correct execution. |
The keys repository_defaults
contains the default configuration for all repositires. The configuration in the repositries
will override de defaults specifically for this repository.
Configuration | Description |
---|---|
wiki | Either true to enable the wiki for this repository or false to disable it. |
issues | Either true to enable issues for this repository or false to disable them. |
projects | Either true to enable projects for this repository or false to disable them. |
archived | true to archive this repository. Note: You cannot unarchive repositories through the API. |
visibility | Can be public or private . |
allow_squash_merge | Either true to allow squash-merging pull requests, or false to prevent squash-merging. |
allow_merge_commit | Either true to allow merging pull requests with a merge commit, or false to prevent merging pull requests with merge commits. |
allow_rebase_merge | Either true to allow automatically deleting head branches when pull requests are merged, or false to prevent automatic deletion. |
delete_branch_on_merge | true to archive this repository. Note: You cannot unarchive repositories through the API. |