Built with Rust, this tool will allow you to control your sites, installs, users and more from your terminal or within a pipeline using headless mode. I have also opted to not use async which will speed up performance. I work on this in my spare time, features may be added and removed randomly until I push a version 1.0.0 release.
You may be wondering why does this need to exist. Well it is a two part answer...
- I wanted a project to build in Rust.
- I was tired of writing the same API calls over and over and I wanted something more concrete to use in my WordPress pipelines.
I have some big goals for this tool and I hope you find it as useful as I do!
Warning
This project is not constantly worked on and is unstable. Use at your own risk. As long as the version is below 1.0.0 you may experience breaking changes.
You will need Rust installed in order to install this from Crates.io.
cargo install wpe
The downloaded file will be located in ~/.local/bin/
curl -s https://thesandybridge.github.io/scripts/install.sh | bash -s wpengine-cli wpe
Running the CLI for the first time will prompt you to add a username and password for the wpengine API.
You can also use the auth
command to update the credentials or manually add them.
The sites
command will allow you to list, add, update, or delete existing sites. Passing the
-H
flag will enable headless mode for using the CLI in a pipeline or as part of a script.
Headless mode will enable list, add, update, and delete sub commands.
Examples
wpe -H sites add <NAME> <Account_ID> # adds a site with the name provided.
wpe -H sites list # lists all sites for page 1.
wpe -H sites 1 list # lists all sites for page 2.
wpe -H sites list <Site_ID> # list a single site from page 1.
wpe -H sites 1 list <Site_ID> # list a single site from page 2.
- Build commands for User/Accounts endpoint
- Build commands for Domain endpoint
- Build commands for Installs endpoint
- Build commands for SSH endpoint
- Integrate WordPress CLI. e.g: Updating WordPress Sites
- Add bulk edit options.
- Implement headless version so that the tool can be used in pipelines