diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..01f9671 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,40 @@ +name: Build and Deploy Frontend via SSH + +on: + push: + tags: + - '*' + +jobs: + 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' + + - name: Install dependencies + run: npm install + + - name: Build project + run: npm run build + + - name: Deploy via SCP + run: | + # Создаём архив собранных файлов + tar -czf frontend.tar.gz -C dist . + + # Копируем архив на хост через SCP + scp -o StrictHostKeyChecking=no frontend.tar.gz ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST }}:/tmp/ + + # Распаковываем и перемещаем файлы на хосте + ssh -o StrictHostKeyChecking=no ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST }} << 'EOF' + mkdir -p /opt/uvpn.shop/frontend + rm -rf /opt/uvpn.shop/frontend/* + tar -xzf /tmp/frontend.tar.gz -C /opt/uvpn.shop/frontend + rm /tmp/frontend.tar.gz + EOF \ No newline at end of file