Tools for the Gitlab CI
This project provides several YAML files to be included in your project .gitlab-ci.yml file.
Features
The CI tools:
- supports up to 3 branches in a release cycles
- provides YAML templates to
graph LR
%% User working branch
Branch([CONTRIB BRANCH])
BranchCI{{CI}}
BranchCommitLint(commitlint)
BranchDockerImage((image))
BranchDockerTag>docker:git-$CI_COMMIT_SHORT_SHA]
%% Project `dev` branch
Dev([DEV])
DevCI{{CI}}
DevCommitLint(commitlint)
DevDockerImage((image))
DevDockerTag>docker:dev]
%% Project `testing` branch for prerelease
Testing([TESTING])
TestingCI{{CI}}
TestingCommitLint(commitlint)
TestingDockerImage((image))
TestingDockerTag>docker:testing]
%% Project `stable` branch
Stable([STABLE])
StableCI{{CI}}
%% Project `release` tag
Release>release/x.y.z]
ReleaseCI{{CI}}
ReleaseDockerTag{{docker:x.y.z}}
MajorDockerTag{{docker:x}}
MinorDockerTag{{docker:x.y}}
StableDockerTag{{docker:stable}}
LatestDockerTag{{docker:latest}}
Branch -->|push| BranchCI
BranchCI -->|lint| BranchCommitLint
BranchCI -->|build| BranchDockerImage
BranchCI -->|release| BranchDockerTag
BranchDockerTag -.- BranchDockerImage
Branch -->|merge| Dev
Dev -->|push| DevCI
DevCI -->|lint| DevCommitLint
DevCI -->|build| DevDockerImage
DevCI -->|release| DevDockerTag
DevDockerTag -.- DevDockerImage
Dev -->|merge| Testing
Testing -->|push| TestingCI
TestingCI -->|lint| TestingCommitLint
TestingCI -->|build| TestingDockerImage
TestingCI -->|release| TestingDockerTag
TestingDockerTag -.- TestingDockerImage
Testing -->|merge| Stable
Stable -->|push| StableCI
StableCI -->|release| Release
Release -->|push| ReleaseCI
ReleaseCI -->|release| ReleaseDockerTag
ReleaseCI -->|release| MajorDockerTag
ReleaseCI -->|release| MinorDockerTag
ReleaseCI -->|release| StableDockerTag
ReleaseCI -->|release| LatestDockerTag
Use the ci-tools to setup a new CI
There is a dedicated documentation to start using the ci-tools
templates in your project.
Contributing to this project
Commit messages
Commit messages formatting is significant!
Please, see How to contribute for more details