Acceptance testing/Contributing to Moodle behat extension
This document explains how to contribute to https://github.com/moodlehq/moodle-behat-extension project according to Moodle HQ integration workflow.
We use https://github.com/moodlehq/moodle-behat-extension as vendor/moodlehq/behat-extension official repository, we must not redo git history nor update where git tags points to, so we will only members of integration team will push to https://github.com/moodlehq/moodle-behat-extension once the code has been reviewed and sent to integration.
Full integration workflow when including changes in https://github.com/moodlehq/moodle-behat-extension
- Developer forks git://github.com/moodlehq/moodle-behat-extension and creates a MDL-XXXXX in his/her fork to work on a patch
- Developer pushes changes to his/her repository
- Developer updates moodle's composer.json changing the repository URL to his/her own repository URL and moodlehq/behat-extension version pointing to MDL-XXXXX branch (read https://getcomposer.org/doc/articles/aliases.md#branch-alias for more info)
- Developer sends the issue to peer review
- A member of the integration team will review the changes in moodle-behat-extension
- Here there may be multiple iterations moving from development in progress to peer reviewing
- Once the issue is ready to be sent for integration the developer amends the commit changing composer.json to his/her own repository to make it point again to the official moodlehq repository, and changes moodlehq/behat-extension version for the next https://github.com/moodlehq/moodle-behat-extension tag
- The tag will depend on the major Moodle branch the developer is targeting, tags follows v1.XY.N format, where XY is the major moodle version (the next one if master) and N is an incremental integer
- A member of the integration team will create the appropriate tag in git://github.com/moodlehq/moodle-behat-extension
- In case there is more than one issue integrated the same week only one tag will be created
Extend moodle-behat-extension to fit your needs
The moodle-behat-extension version that Moodle uses to run behat is specified in composer.json, to use your own repository and/or another tag/branch you should modify $CFG->dirroot/composer.json.