add workflow
This commit is contained in:
@@ -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
|
||||||
Reference in New Issue
Block a user