54 lines
1.3 KiB
YAML
54 lines
1.3 KiB
YAML
name: Frontend Deployment
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
deploy-frontend:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up SSH
|
|
run: |
|
|
mkdir -p ~/.ssh
|
|
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
|
chmod 600 ~/.ssh/id_rsa
|
|
ssh-keyscan -H alpha.raphix.fr >> ~/.ssh/known_hosts
|
|
|
|
- name: Deploy frontend
|
|
run: |
|
|
ssh raphix@alpha.raphix.fr "
|
|
set -e;
|
|
APP_DIR=/home/gitlab-ci/chopin-frontend;
|
|
REPO_URL=https://git.raphix.fr/subsonics/chopin-frontend;
|
|
BRANCH=main;
|
|
|
|
echo '[Frontend-Deploy] - START';
|
|
|
|
mkdir -p \$APP_DIR;
|
|
|
|
if [ ! -d \$APP_DIR/.git ]; then
|
|
echo 'Cloning repository...';
|
|
git clone -b \$BRANCH \$REPO_URL \$APP_DIR;
|
|
else
|
|
echo 'Updating repository...';
|
|
cd \$APP_DIR;
|
|
git fetch origin;
|
|
git reset --hard origin/\$BRANCH;
|
|
fi;
|
|
|
|
cd \$APP_DIR;
|
|
|
|
echo 'Installing dependencies...';
|
|
npm ci;
|
|
|
|
echo 'Building app...';
|
|
npm run build;
|
|
|
|
echo '[Frontend-Deploy] - DONE';
|
|
"
|