Rezervacije/.gitea/workflows/build-deploy.yml

43 lines
1.2 KiB
YAML

name: Build and Deploy
on:
push:
branches:
- master
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: npm ci
- name: Build project
run: npm run build
- name: Deploy to server
run: |
echo "Deploying to app.spletnimojster.si on port 3169"
# Create deployment package
mkdir -p deploy
cp -r dist/* deploy/
# Setup SSH for deployment
mkdir -p ~/.ssh
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan -t rsa 130.61.236.31 >> ~/.ssh/known_hosts
# Deploy to server
rsync -avz --delete deploy/ deployer@130.61.236.31:~/app.spletnimojster.si/
# Restart service if needed
ssh deployer@130.61.236.31 'cd ~/app.spletnimojster.si && pm2 restart rezervacije || pm2 start npm --name "rezervacije" -- start -- --port 3169'