Comment 2 for bug 1166937

Revision history for this message
Antoine "hashar" Musso (hashar) wrote :

For MediaWiki core the gating layout is:

    gate-and-submit:
      - mediawiki-core-merge:
        - mediawiki-core-phpcs-HEAD
        - mediawiki-core-jslint
        - mediawiki-core-jsduck
        - mediawiki-core-lint:
          - mediawiki-core-phpunit-databaseless:
            - mediawiki-core-install-sqlite:
              - mediawiki-core-qunit
              - mediawiki-core-phpunit-api
              - mediawiki-core-phpunit-misc
              - mediawiki-core-phpunit-parser

the -lint job is simply making sure the submitted PHP files do pass the linting which is almost always true. It then triggers the unit/integration tests.

The mediawiki-core-jslint runs the Javascript lint, if that fails, that does not prevent the tests to run :/

If I understand it correctly, your proposal would let me have a first stage made of typos/linting checks. Then if and only if all jobs are successful, a second staged is triggered.

So my layout would be something like:

gate-and-submit:
    stage-lint:
     - mediawiki-core-phpcs-HEAD
     - mediawiki-core-jslint
     - mediawiki-core-jsduck
     - mediawiki-core-lint
     - stage-fasttests:
        - mediawiki-core-phpunit-databaseless:
        - mediawiki-core-install-sqlite:
        - mediawiki-core-qunit
        - mediawiki-core-phpunit-api
        - mediawiki-core-phpunit-misc
        - stage-slowtests:
           - mediawiki-core-phpunit-parser