pokerogue/.github/workflows/deploy-beta.yml

33 lines
1.1 KiB
YAML
Raw Normal View History

[Beta] Add deployment workflow for beta environment (#2595) * feat: Add deployment workflow for beta environment This commit adds a new GitHub Actions workflow file, deploy-beta.yml, which is responsible for deploying the application to the beta environment. The workflow is triggered on push and pull request events. It checks if the repository is 'pagefaultgames/pokerogue' before running the deployment steps. The deployment includes checking out the code, setting up the Node.js environment, installing dependencies, building the application, setting up SSH for secure communication, deploying the build on the server using rsync, and purging the Cloudflare cache. The deployment is only performed when the push event is triggered on the default branch. It also changes the deploy.yml workflow to be triggered only when a release is generated. * feat: Update deployment workflow for beta environment * Update deploy-beta name * chore: Update deploy-beta.yml to use 'f-fsantos:beta-environment' as the ref name * chore: Update deploy-beta.yml to use 'f-fsantos:beta-environment' as the ref name * chore: Update deploy-beta.yml to use '2595/merge' as the ref name * chore: Update deploy-beta.yml to include event name in deployment message * chore: Update deploy-beta.yml to use 'pull_request' event and '2595/merge' as the ref name * chore: Update deploy-beta.yml to include SSH public key * chore: Update deploy-beta.yml to include SSH public key --------- Co-authored-by: Temps Ray <temps.ray@gmail.com>
2024-07-03 20:01:32 +00:00
name: Deploy Beta
on:
push: {}
pull_request: {}
jobs:
deploy:
if: github.repository == 'pagefaultgames/pokerogue'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build:beta
env:
NODE_ENV: production
- name: Set up SSH
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
run: |
mkdir ~/.ssh
echo "${{ secrets.BETA_SSH_PUBLIC_KEY }}" > ~/.ssh/id_ed25519.pub
echo "${{ secrets.BETA_SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/*
ssh-keyscan -H ${{ secrets.BETA_SSH_HOST }} >> ~/.ssh/known_hosts
- name: Deploy build on server
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
run: |
rsync --del --no-times --checksum -vrm dist/* ${{ secrets.BETA_SSH_USER }}@${{ secrets.BETA_SSH_HOST }}:${{ secrets.BETA_DESTINATION_DIR }}