... | ... | @@ -22,24 +22,25 @@ The OAI workflow is described in the following picture: |
|
|
3. The developer/contributor works on implementing a solution to the ticket.
|
|
|
4. Once the developer is fine with the solution, he/she **SHALL** merge in his/her working branch the latest `develop` branch state.
|
|
|
- If the development is long (like for a feature branch), he/she should merge regularly from the `develop` branch to ease the pain.
|
|
|
- If there are merge conflicts, the developer/contributor can ask integrators/technical committee for help.
|
|
|
5. The developer proposes a merge-request/pull-request following the [rules](policy/merge-request-policy).
|
|
|
- If there are merge conflicts, the developer/contributor can ask integrators/technical committee for help.
|
|
|
5. The developer pushes the working branch onto the centralized repository.
|
|
|
6. The developer proposes a merge-request/pull-request following the [rules](policy/merge-request-policy).
|
|
|
- By opening a MR/PR, the OAI Continuous Integration is triggered automatically.
|
|
|
- OAI CI job will run on the proposed merge commit onto `develop` branch.
|
|
|
- OAI CI job will notify in the MR/PR comments the job status.
|
|
|
* In case of `FAILURE`, the Technical Committee will ask the developer to fix the issue
|
|
|
* New commits will be added to the developer's branch
|
|
|
* MR/PR should be automatically updated and CI job retriggered.
|
|
|
6. Once the OAI CI job status is OK, the Technical Committee may perform manual inspections.
|
|
|
7. Once the OAI CI job status is OK, the Technical Committee may perform manual inspections.
|
|
|
- For example, if the CI job does not check for Coding Guidelines, the TC may check and ask developer to obey them.
|
|
|
7. The Technical Committee approves the MR/PR.
|
|
|
8. The Technical Committee approves the MR/PR.
|
|
|
- A merge commit is created onto the `develop` branch
|
|
|
- The OAI Continuous Integration is triggered automatically on this commit.
|
|
|
- We are doing this since we may have several pending MR/PR. CI Job runs on a real merged `develop` commit (no more a proposed one).
|
|
|
- OAI CI job will notify build status in the `develop` commit.
|
|
|
* `FAILURE` should not occur very often.
|
|
|
* In case of `FAILURE`, developer/integrator may go back onto working branch or directly in `develop` branch.
|
|
|
8. Since OAI CI job was OK on the real merged `develop` branch, the Technical Committee **SHALL**:
|
|
|
* In case of `FAILURE`, developer/integrator may go back onto working branch or directly in `develop` branch (steps #10, #3, #4, #5).
|
|
|
9. Since OAI CI job was OK on the real merged `develop` branch, the Technical Committee **SHALL**:
|
|
|
- Close the Ticket
|
|
|
- Close the MR/PR
|
|
|
9. The Technical Committee **SHALL** delete the branch |
|
|
11. The Technical Committee **SHALL** delete the branch |