The latest Zuul changes a lot about how jobs are defined. We need to have some assurance that we can run MediaWiki tests there.
Running Quibble there is a good step.
Here is the full list of jobs that runs for the mainline branch of MediaWiki in our existing Zuul:
castor-save-workspace-cache | rsync for Castor surely the caching would be handled differently |
mediawiki-core-javascript-docker-publish | |
mediawiki-core-php74-phan-docker | phan |
mediawiki-core-php80-phan-docker | phan |
mediawiki-core-php81-phan-docker | phan |
mediawiki-fresnel-patch-docker | Fresnel |
mediawiki-i18n-check-docker | A grep |
mwcore-codehealth-master-non-voting | With SonarQube for reporting |
mwcore-codehealth-patch | With SonarQube for reporting |
mwcore-phpunit-coverage-patch | |
mwgate-node16-docker | Merely runs npm ci && npm test |
php-composer-security-docker | |
publish-to-doc | rsync to doc.wikimedia.org |
selenium-daily-beta-MediaWiki | Webdriver.io tests against Beta-Cluster-Infrastructure |
selenium-daily-betacommons-MediaWiki | Webdriver.io tests Beta-Cluster-Infrastructure |
trigger-mediawiki-pipeline-publish | |
The jobs below are based on Quibble, they invoke the CI image passing ZUUL environment variables, different options to Quibble and set of dependencies to clone based on integration/config zuul/parameters_functions.py
mediawiki-quibble-apitests-vendor-php74-docker | |
mediawiki-quibble-composer-mysql-php74-docker | |
mediawiki-quibble-composer-mysql-php80-docker | |
mediawiki-quibble-composer-mysql-php81-docker | |
mediawiki-quibble-composertest-php74-docker | |
mediawiki-quibble-selenium-vendor-mysql-php74-docker | |
mediawiki-quibble-vendor-mysql-php73-docker | |
mediawiki-quibble-vendor-mysql-php74-docker | |
mediawiki-quibble-vendor-mysql-php80-docker | |
mediawiki-quibble-vendor-mysql-php81-docker | |
mediawiki-quibble-vendor-postgres-php74-docker | |
mediawiki-quibble-vendor-sqlite-php74-docker | |
quibble-vendor-mysql-php74-phpunit-standalone-docker | (no idea) |
wmf-quibble-core-vendor-mysql-php74-docker | |
wmf-quibble-core-vendor-mysql-php81-docker | |
wmf-quibble-selenium-php74-docker | |
wmf-quibble-selenium-php81-docker | |
Many are doing similar things. This task entails:
- Understanding the jobs above
- Getting a subset of them running as a proof-of-concept in the new Zuul system
- Documenting anything that needs more thought
It's a big task, so breaking it down by job-group is probably appropriate.