65 lines
1.8 KiB
YAML
65 lines
1.8 KiB
YAML
name: Deploy to WPEngine
|
|
on:
|
|
workflow_dispatch
|
|
# Remove "workflow_dispatch" above and uncomment the lines below to enable deploy on push
|
|
# only do this once you're actually ready to start deploying to Flywheel
|
|
# push:
|
|
# branches:
|
|
# - main
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
if: ${{ !contains(github.event.head_commit.message, '#skipGA') }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Get Composer Cache Directory
|
|
id: composer-cache
|
|
run: |
|
|
echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
|
|
|
|
- uses: actions/cache@v3
|
|
with:
|
|
path: ${{ steps.composer-cache.outputs.dir }}
|
|
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-composer-
|
|
|
|
- name: Install PHP Composer
|
|
uses: php-actions/composer@v6
|
|
with:
|
|
php_version: "8.2"
|
|
|
|
- name: Cache node modules
|
|
id: cache-npm
|
|
uses: actions/cache@v3
|
|
env:
|
|
cache-name: cache-node-modules
|
|
with:
|
|
# npm cache files are stored in `~/.npm` on Linux/macOS
|
|
path: ~/.npm
|
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
|
${{ runner.os }}-build-
|
|
${{ runner.os }}-
|
|
|
|
- name: Install npm dependencies
|
|
run: npm install
|
|
|
|
- name: Run build task
|
|
run: npm run build
|
|
|
|
- name: Clean up node modules (not needed to deploy)
|
|
run: rm -rf node_modules
|
|
|
|
- name: Deploy to WPE
|
|
uses: wpengine/github-action-wpe-site-deploy@v3
|
|
with:
|
|
WPE_SSHG_KEY_PRIVATE: ${{ secrets.WPE_SSHG_KEY_PRIVATE }}
|
|
WPE_ENV: vdiv5
|
|
FLAGS: '-azvr --inplace --delete --exclude=".*"'
|
|
REMOTE_PATH: "wp-content/themes/vdiv5"
|