Jenkins¶
FrostFS repositories run their CI in Jenkins: https://ci.frostfs.info
Jenkins uses TrueCloudLab SSO for user login but most common usage scenarios do not require authentication:
- Checking CI run status
- Vieiwing CI job logs
- Fetching CI job artifacts (e.g. Allure reports)
Logging in is only required for privileged actions (retrigger failed job, launch manually triggered job).
CI configuration¶
FrostFS repository maintainers own their CI pipelines. No special permissions
are needed to modify .ci/Jenkinsfile in any repository: upload changes for
code review and follow the usual process.
Pipeline DSL¶
TrueCloudLab provides a bespoke DSL to simplify writing CI pipelines by abstracting away Jenkins rough edges and boilerplate that are not relevant from repository maintainer point of view.
Instance configuration¶
Jenkins configuration lives in its own repository. It contains controller configuration, agent setup, DSL library and localci script that anyone can use to launch their own clone of our Jenkins.