diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index 39acf39..f0d8d8b 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -1,14 +1,36 @@ -name: Deploy Nyla - +name: Deploy Nyla Frontend on: push: branches: - main + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: - deploy: + build-and-deploy: runs-on: ubuntu-latest steps: + - name: Checkout Code + uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + cache: 'npm' + + - name: Copy environment file + run: cp config/env-poweron-nyla-int.env .env + + - name: Install dependencies + run: npm ci + + - name: Build React app + run: npm run build:int + - name: Deploy to Infomaniak VM env: SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} @@ -18,5 +40,11 @@ jobs: chmod 600 ~/.ssh/deploy_key echo "StrictHostKeyChecking=no" >> ~/.ssh/config echo "UserKnownHostsFile=/dev/null" >> ~/.ssh/config - ssh-keygen -lf ~/.ssh/deploy_key - ssh -i ~/.ssh/deploy_key -v ubuntu@porta.poweron.swiss "echo connected" + + rsync -az --delete \ + -e "ssh -i ~/.ssh/deploy_key" \ + ./dist/ \ + ubuntu@porta.poweron.swiss:/srv/nyla/current/dist/ + + ssh -i ~/.ssh/deploy_key ubuntu@porta.poweron.swiss \ + "sudo systemctl reload nginx" \ No newline at end of file