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" SCRIPT: "post-deploy.sh"