On March 30, 2021, the third meetup of the technical series in the Latvian WordPress group took place. The meetup “Automating WordPress project deployment with zero downtime and instant rollbacks” was held by Ihor Vorotnev, a WordPress developer with 13 years of experience, system administrator, mentor and expert at Toster, and speaker at WordCamp. The report showed the deployment principles of a complex project with zero downtime and the continuous possibility to rollback changes. The proceedings of the meetup are available for download at the links below.
During the presentation, the speaker showed hands-on examples of how to deploy a website on WordPress, including a masterclass.
We need Deployer when maintaining large projects with a group of developers working on the code, making changes in parallel. Sites where denial of service is unacceptable also require this technology. Instant rollback of changes to a previous version allows you to quickly resolve problems with high-traffic sites.
At the same time, the technology in question does not need to be used in simple cases. For example, when a single programmer carries the development, there is little code on the site, or it does not require maintenance and modification after initial development.
Basically, the advantages of Deployer are its flexibility, a large number of functionalities, and fairly wide distribution. The ease of maintenance and extension is based on the fact that the Deployer code is written in PHP and has detailed and clear documentation.
Abstracts of the “Automating WordPress project deployment” presentation
The presentation “Automating WordPress project deployment” shows not only the use of Deployer on the local machine but also explains the overall scheme for running a complex project. The deployment diagram includes production, staging sites, git, CI/CD, etc.
The presentation shows the sequence of creating a VPS on Digital Ocean for a WordPress site. As a seasoned system administrator, it highlights some aspects of creating a VPS grounded in WordPress and Deployer.
The author looks in detail at the Deployer configuration files, their syntax and their purpose in deploying a project.
The speaker explained certain points related to the deployment of kernels and plugins in detail. In the course of answering questions, the speaker explained certain specifics of the Deployer approach. He paid particular attention to the separation of permissions for project files and folders between the users under which execute the PHP and Deployer scripts.
Presentation of the meetup “Automating WordPress project deployment” can be downloaded here. A recording of the meetup is available below.