Contents (3)
A reproducible deploy means every release is built from a known commit in a clean environment, and rolling back takes seconds.
Dependencies in Composer
Manage public plugins and themes with Composer and a lock file, so every environment runs exactly the same code.
Build in a clean environment
npm ci && npm run build
composer install --no-dev --optimize-autoloader
zip -r release-$(git rev-parse --short HEAD).zip . -x 'node_modules/*' 'tests/*'
Release and roll back
- Unpack the new release into its own directory.
- Point the
currentsymlink at it. - Clear caches and run the smoke test.
- If anything breaks, point the symlink back at the previous release.
The database is not part of this cycle; back it up before every release and handle migrations separately.
$ ./request_review
Facing the same problem in your own store?
Senior WordPress and WooCommerce backend engineering for complex production problems.
Request a Technical Assessment
## Comments