|
| 1 | + |
| 2 | +This document describes the Topcoder issue/feature release process using TCX. This is a guide for co-pilots, QA, architects and community members. Co-pilot is the driver of the whole process from opening a ticket to the deployment. |
| 3 | + |
| 4 | +## Code Phase |
| 5 | + |
| 6 | +1. Create a branch from the `master` and name it as `hot-fix-fixtitle` or `feature-featuretitle` |
| 7 | +2. Co-pilot will prepare and launch a ticket |
| 8 | + |
| 9 | + a. Add Prize in the issue title [$SOMEAMOUT] |
| 10 | + |
| 11 | + b. Mention PR branch, this branch should be always in sync with master or newly created as mentioned in 1 |
| 12 | + |
| 13 | + c. Add this to instruction that all the PR should pass `npm test` |
| 14 | + |
| 15 | + d. Change label to `tcx_OpenForPickup` |
| 16 | + |
| 17 | + e. Tag the community @topcoder-platform/tcxcommunity @topcoder-platform/topcodercompetitors |
| 18 | +3. A competitor assings a ticket to self (`tcx_Assigned`), writes the code for the fix |
| 19 | +4. Competitor, PR to the branch (submission) and they should change the label to `tcx_ReadyForReview` |
| 20 | + |
| 21 | +## Review Phase |
| 22 | + |
| 23 | + 4. Co-pilot will review the code, based on review change the label to |
| 24 | + |
| 25 | + a. `tcx_Feedback` - Feedback should be mentioned in the comments section, this may lead to asking for patch PR |
| 26 | + |
| 27 | + b. `Code Review Passed` and `tcx_FixAccepted`- This goes to QA Deployment Phase |
| 28 | + |
| 29 | + c. `Code Review Failed` - This goes to 1 |
| 30 | + |
| 31 | +## QA Deployment Phase |
| 32 | + |
| 33 | +5. Based on the label `Code Review Passed`, co-pilot should request deployment to the architect. Based on whatever testing deployment environment is available to code will be deployed. |
| 34 | + |
| 35 | +6. Once deployed on the environment co-pilot will change the label to `Ready for QA` and will inform the QA team on #community-app slack channel. |
| 36 | + |
| 37 | +7. Based on QA feedback label should be `QA Pass` or `QA Fail` |
| 38 | + |
| 39 | +8. `QA Fail` label will go to **Review Phase** again |
| 40 | + |
| 41 | +9. `QA Pass` label is a candidate for production deployment |
| 42 | + |
| 43 | +10. Co-pilot will create PR to `fix-branch > develop` branch |
| 44 | + |
| 45 | +11. An architect will merge PR and ask for smoke testing to the QA team |
| 46 | + |
| 47 | +12. If smoke testing goes well, co-pilot create PR to `develop > master` |
| 48 | + |
| 49 | +13. It takes around 20 mins for deployment on any deployment. |
| 50 | + |
| 51 | +14. QA team will verify the post-production issue fix. |
| 52 | + |
| 53 | +15. If post-production test passes QA team will change the label to `Prod QA Pass`, Co-pilot will close this ticket |
| 54 | + |
| 55 | +17. If post-production test fails QA team will change the label to `Prod QA Failed` |
| 56 | + |
0 commit comments