diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..5a1416f --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,40 @@ +name: Deploy + +on: + push: + branches: + - main + +jobs: + deploy: + runs-on: debian + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build + env: + DATABASE_URL: ${{ secrets.DATABASE_URL }} + + - name: Run database migrations + run: npx prisma db push + env: + DATABASE_URL: ${{ secrets.DATABASE_URL }} + + - name: Copy files to app directory + run: | + rsync -a --delete \ + --exclude='.git' \ + --exclude='node_modules' \ + ./ /opt/cable-manager/ + cp -r node_modules /var/www/cable-manager/ + + - name: Restart app + run: | + cd /opt/cable-manager + pm2 restart cable-manager || pm2 start npm --name cable-manager -- start + pm2 save \ No newline at end of file