Wikimedia Release Engineering Team/Project/Self-serve CI
Appearance
This page is currently a draft.
|
NOTE: This project is paused or inactive. It could be resumed in the future when time, resourcing, and/or priorities change.
Goal
[edit]Provide a simplier job definition system so repo owners can create and modify their own CI jobs without having to understand and wait on merges to a central repo of JJB configuration.
Dependencies
[edit]- Possible tech ops dependencies and/or expertise - RELATED TO WHAT?
Milestones
[edit]- Migration of all jobs/projects to isolated CI instances and further isolated CI processes
- Central service and/or toolchain library for provisioning/tearing down dependent resources in the CI cluster such as MW installs, Elasticsearch, etc.
- Ability of teams to define/edit their own CI jobs without idiosyncratic knowledge of Jenkins Job Builder
By quarter
[edit]Some Quarter | Q+1 | Q+2 | Q+3 | Q+4 |
---|---|---|---|---|
Migration of all jobs/projects to isolated CI instances and further isolated CI processes | ||||
Central service and/or toolchain library for provisioning/tearing down dependent resources in the CI cluster such as MW installs, Elasticsearch, etc. | Ability of teams to define/edit their own CI jobs without idiosyncratic knowledge of Jenkins Job Builder |
Impact
[edit]Movement
[edit]- Less friction for staff and volunteer developers in automated testing/linting/packaging and, as a result, more reliable MediaWiki software overall
Foundation
[edit]- More shared understanding of CI jobs and less toolset fragmentation (teams moving to Travis, etc. for lack of understanding of a complex in-house CI system)
KPI
[edit]- ratio of changes in per-repository CI definitions to changes in central RelEng maintained CI configuration