Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/wpengine/site-deploy

Base image to build VCS integrations enabling customers to deploy their site to WP Engine
https://github.com/wpengine/site-deploy

rd

Last synced: about 2 months ago
JSON representation

Base image to build VCS integrations enabling customers to deploy their site to WP Engine

Awesome Lists containing this project

README

        

# wpengine/site-deploy
Base image to build VCS integrations enabling customers to deploy their site to WP Engine

## How to Build

You can build and version this image using make targets.

```sh
make build # Builds the image locally
make version # Builds the image and creates version tags
make list-images # Shows all tagged versions of the image
make clean # Deletes all tagged versions of the image
```

## How to Run

You can use this image to deploy a site from your local machine.

1. Build the `wpengine/site-deploy:latest` image with `make build`.
2. Change directories into the root of the local site you'd like to deploy.
3. Create a `.env` file with the following variables, changing their values as needed.

> [!WARNING]
> Since `docker run` does not strip double-quotes from variables in the .env file, we don't use them
> to wrap entire variable values. Instead, we must use single or double-quotes around flag values that
> contain whitespace to prevent splitting (`--filter=':= .gitignore'`). The `=` sign between the flag
> and its value is also required (`--filter=':= .gitignore'` rather than `--filter ':= .gitignore'`).

```sh
# Required. The target WP Engine install name.
WPE_ENV=yourinstall
# Optional. Default values shown.
REMOTE_PATH=
SRC_PATH=.
PHP_LINT=FALSE
CACHE_CLEAR=TRUE
SCRIPT=
FLAGS=-azvr --inplace --exclude='.*'
```

3. Set an environment variable with your private SSH key, replacing the key file name with your own.

```sh
export WPE_SSHG_KEY_PRIVATE=`cat ~/.ssh/my_sshg_key_rsa`
```
4. Run the deploy!

```sh
docker run --rm \
-e "WPE_SSHG_KEY_PRIVATE" \
--env-file ./.env \
-v $(pwd):/site \
--workdir=/site \
wpengine/site-deploy:latest
```