Running and testing WordPress updates is no fun. UPDATE APPARATUS 🤖
will try and help you with this chore.
This is it's update sequence:
- Validate dependencies
- Crawl website
- Update dependencies
- Re-crawl website
- Diff the output
npm install update-apparatus -g
Run update-apparatus
in the root of your project.
UPDATE APPARATUS 🤖
is able to either use Composer and wp-cli for updating dependencies. UPDATE APPARATUS 🤖
tries to be helpful and determines if it's a Composer-managed project based on a constant variable called WP_HOME
that should exist in the .env
file. This is used for determining the URL. It will tell you it's findings when running the update sequence.
You can configure your preferences per project through an .apparatusrc
file that contains JSON.
{
"composerSkip": ["wpackagist-plugin/akismet"],
"max": 1,
"wpSkip": ["akismet"]
}
Option | Description |
---|---|
composerSkip |
Packages to skip when using --batch (see Batch) |
max |
Maximum amount of URLs to crawl |
wpSkip |
Dependencies to skip when using wp-cli (used for wp plugin update --exclude ) |
You can also run UPDATE APPARATUS 🤖
to batch-update multiple projects. It will make some assumptions though. Use update-apparatus --batch
in your projects root to use this. Workflow:
- Assume projects are in subdirectories from the place you ran the command
- You can select all projects you would like to update
- Update version constraints to latest version for Composer packages and ask you about custom repositories
- Run
UPDATE APPARATUS 🤖
for each project, without crawling the website - Commit changes in a branch
- Create a pull request per project
- Show links to PR's for you to review