47 lines
1.5 KiB
YAML
47 lines
1.5 KiB
YAML
name: Deploy to Dreamhost (dev)
|
|
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 Dreamhost
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
if: ${{ !contains(github.event.head_commit.message, '#skipGA') }}
|
|
|
|
steps:
|
|
- name: Install rsync
|
|
run: |
|
|
apt-get update
|
|
apt-get -y install rsync
|
|
|
|
- name: Checkout code
|
|
uses: actions/checkout@v6
|
|
|
|
- name: Cache node modules
|
|
id: cache-npm
|
|
uses: actions/setup-node@v6
|
|
env:
|
|
cache-name: cache-node-modules
|
|
with:
|
|
node-version: "22"
|
|
|
|
- name: Install npm dependencies
|
|
run: npm install
|
|
|
|
- name: Run build task
|
|
run: npm run build
|
|
|
|
- name: Deploy to Dreamhost
|
|
uses: SamKirkland/web-deploy@v1
|
|
with:
|
|
target-server: iad1-shared-e1-31.dreamhost.com
|
|
ssh-port: 22
|
|
remote-user: soloweb
|
|
private-ssh-key: ${{ secrets.REMOTE_PRIVATE_KEY }}
|
|
destination-path: solowebdesigns.net/cwc/wp-content/themes/community-works-collaborative
|
|
rsync-options: --archive --verbose --compress --delete-after --human-readable --exclude=.git* --exclude=.git/ --exclude=.vscode/ --exclude=database/ --exclude=.gitignore --exclude=DOCKER_ENV --exclude=docker_tag --exclude=output.log --exclude=vendor/ --exclude=node_modules/ --exclude=notes/ --exclude=docs/
|