-
Notifications
You must be signed in to change notification settings - Fork 0
35 lines (35 loc) · 1.27 KB
/
Build & Deploy.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
name: Build & Deploy
on:
push:
branches:
- main
jobs:
build-and-deploy:
name: app.flowey.paveloom.dev
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Build the frontend
run: |
cd frontend
npm install
npm run build
- name: Deploy
env:
SSH_KEY: ${{ secrets.SSH_KEY }}
SSH_KEY_PASS: ${{ secrets.SSH_KEY_PASS }}
SSH_USERNAME: ${{ secrets.SSH_USERNAME }}
SSH_HOST: ${{ secrets.SSH_HOST }}
SSH_REMOTE_FRONTEND_DIR: ${{ secrets.SSH_REMOTE_FRONTEND_DIR }}
SSH_REMOTE_LANDING_DIR: ${{ secrets.SSH_REMOTE_LANDING_DIR }}
run: |
mkdir -p ~/.ssh/ && ssh-keyscan $SSH_HOST >> ~/.ssh/known_hosts 2>/dev/null
eval $(ssh-agent -s)
echo '#!/bin/sh' > ~/.ssh_askpass
echo 'echo $SSH_KEY_PASS' > ~/.ssh_askpass && chmod 700 ~/.ssh_askpass
echo "$SSH_KEY" | tr -d '\r' | DISPLAY=None SSH_ASKPASS=~/.ssh_askpass ssh-add -
rsync -avzh --delete-after frontend/dist/ "$SSH_USERNAME@$SSH_HOST:$SSH_REMOTE_FRONTEND_DIR"
rsync -avzh --delete-after landing/ "$SSH_USERNAME@$SSH_HOST:$SSH_REMOTE_LANDING_DIR"