test-pwa/.gitea/workflows/build.yaml

52 lines
1.5 KiB
YAML
Raw Normal View History

2024-09-16 11:28:57 +00:00
name: roulette
on: ['push']
jobs:
build:
2024-09-16 11:28:57 +00:00
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Setup Node
2024-09-16 12:16:04 +00:00
uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
2024-09-16 11:28:57 +00:00
- name: Build project
run: npm run build
- name: Upload production-ready build files
uses: actions/upload-artifact@v3
with:
name: production-files
path: ./dist
deploy:
name: Deploy
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: production-files
path: ./dist
# On regarde si les fichiers sont là
- name: List files
2024-09-16 11:49:33 +00:00
run: ls -l ./dist
# On installe Rsync
- name: Install Rsync
2024-09-16 12:16:04 +00:00
run: apt-get update && apt-get install rsync -y
2024-09-16 11:49:33 +00:00
# On ajoute la clé SSH
- name: Add SSH key
run: echo "$DEPLOY_KEY" > $HOME/.ssh/test_private_key && chmod 600 $HOME/.ssh/test_private_key
# On utilise Rsync pour copier les fichiers (On fait en sorte de supprimer les ancien fichiers)
- name: Deploy files
run: rsync -av -e "ssh -i $HOME/.ssh/test_private_key" --delete ./dist/ $DEPLOY_URL
# On supprime la clé SSH
- name: Remove SSH key
run: rm $HOME/.ssh/test_private_key
variables:
DEPLOY_URL: ${{ secrets.DEPLOY_URL }}
DEPLOY_KEY: ${{ secrets.DEPLOY_KEY }}