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
Updating WordPress
As a developer, you will be responsible for the following steps:The Deployment
As a Technical Lead, you will be responsible for the following steps: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
If we update plugins, the WordPress versions between staging/preprod and production must match.If we are updating WordPress, ensure we are updating to the same version we tested.
Create database and file system backups
If the site is hosted with WordPress VIP, we need to trigger a manual database backup. The filesystem mirrors what is currently in the GitHub repository
If the site is hosted with another provider, like WP Engine, we need to create a restore point. Instructions may vary by host.
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.
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