Pull Requests & Deployment - Syntax-Meridian/TesseractCMS GitHub Wiki
Pull Request Expectations:
Pull requests (PRs) are an essential part of collaborative development. When creating a PR, ensure you meet the following expectations:
- Use the PR Template: Always fill out the provided PR template. It ensures that reviewers have all the necessary information to understand and evaluate your changes.
- Descriptive Titles: PR titles should briefly summarize the change, enabling a quick understanding of the PR's purpose.
- Engage in Discussions: If your PR receives feedback, engage constructively. Address the feedback where necessary, and if you disagree, provide clear reasons.
- Stay Updated: Regularly merge the latest changes from the main branch into your PR to avoid merge conflicts and ensure smooth integration.
- Timely Responses: Respond to feedback in a timely manner. If you'll be unavailable for a while, inform the reviewers.
- Final Checks: Before marking your PR as 'ready for review', ensure you've tested your changes, updated documentation, and checked for potential issues.
Merge & Deployment Expectations:
Merging should be performed by the developer opening the PR. (Some exceptions may apply in the case of schedule conflicts.) Merging will trigger a deployment. The following are the expectations for the merge and resulting deployment:
- Testing: Before merge, ensure the changes have been thoroughly tested in your local environment.
- Documentation: Update deployment documentation if your changes introduce new steps or considerations.
- Backup: Always backup current data and configurations before deploying new changes.
- Announcements: If the deployment requires downtime or may affect users, communicate this in advance.
- Monitoring: After deployment, monitor the application and infrastructure for any anomalies or issues.
- Rollback Strategy: Always have a rollback strategy in place. If something goes wrong, you should be able to revert to the previous stable version quickly.
- Feedback Loop: After deployment, gather feedback. This could be from automated monitoring tools, user feedback, or team observations. It helps catch issues early and informs future deployment strategies.