Updating Plugins
As a developer, you will be responsible for the following steps:Ensure the Local, Production and Preprod/Staging environments are running the same version of WordPress and PHP
Create a new feature branch from the main/master branch
Update plugins locally
Review/Test the updates on lower environments
- Test on
develop - Test on
preprod/staging
Request a QA Review
Request a deployment window from your Technical Lead
Updating WordPress
As a developer, you will be responsible for the following steps:Update WordPress locally
Update lower environments to the target version of WordPress
Review/Test the updates on lower environments
- Test on
develop - Test on
preprod/staging
Request a QA Review
Request a deployment window from your Technical Lead
The Deployment
As a Technical Lead, you will be responsible for the following steps:Confirm with the QA analyst that the update is ready to be deployed
Verify you have all the necessary access to deploy and rollback the update
Create a Launch Runbook
- Outline the steps to be taken before the deployment.
- Outline the steps to be taken during the deployment.
- Include the steps to be taken after the deployment.
- Include the steps to be taken if the deployment fails.
- Include the steps to be taken if the deployment is successful.
- Include a rollback plan for major issues, such as fatal errors.
Coordinate a deployment window
- Coordinate a time when the developer, the QA analyst, and the client will all be available to deploy the update.
- The client doesn’t necessarily need to be present, but they should be aware of the update and the potential impact on the site.
- The window should be during off-peak hours and not during a .
- Send the meeting invite and bridge to the team and client.
Double check the versions match
Create database and file system backups
Deploy
Test thoroughly
- The QA analyst should also test everything at the same time.
- If we have automated testing configured, we should run it.
- Check the logs for any errors or warnings.
Notify the client and broader team that the update is complete
Post-Deployment
- Monitor:
- Site performance
- Error rates
- User experience
- Document completed updates
Best Practices
- Never push updates directly to production
- Always test in lower environments first
- Maintain version parity across environments
- Schedule updates during off-peak hours and not during a
- Keep comprehensive deployment logs
- Use a staging environment that mirrors production
- Implement automated testing where possible
- Have a rollback plan ready