diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index d775f4a..7ec260a 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -2,7 +2,7 @@ name: CI on: push: - branches: [main, Dev] + branches: [main] pull_request: branches: [main] workflow_dispatch: @@ -30,13 +30,11 @@ jobs: env: VITE_POCKETBASE_URL: ${{ vars.VITE_POCKETBASE_URL || 'https://pocketbase.ccllc.pro' }} - deploy_prod: + deploy: runs-on: ubuntu-latest if: github.ref == 'refs/heads/main' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch') container: image: node:20-bookworm - env: - APP_PORT: ${{ secrets.MAIN_PORT || '4000' }} steps: - name: Checkout uses: actions/checkout@v4 @@ -86,64 +84,4 @@ jobs: run: | sshpass -p "$SSH_PASSWORD" ssh -o StrictHostKeyChecking=accept-new -p ${{ secrets.DEPLOY_SSH_PORT || '22' }} \ ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST || env.DEPLOY_HOST }} \ - 'bash -lc "cd ${{ secrets.DEPLOY_PATH || env.DEPLOY_PATH }} && export PORT=${{ env.APP_PORT }} && (pm2 restart tasgrid 2>/dev/null || pm2 start \"bun run serve\" --name tasgrid --update-env)"' - - deploy_dev: - runs-on: ubuntu-latest - if: github.ref == 'refs/heads/Dev' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch') - container: - image: node:20-bookworm - env: - DEPLOY_HOST: ${{ secrets.DEV_DEPLOY_HOST || env.DEPLOY_HOST }} - DEPLOY_PATH: ${{ secrets.DEV_DEPLOY_PATH || '/var/www/tasgrid-dev' }} - APP_PORT: ${{ secrets.DEV_PORT || '4001' }} - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install curl and ca-certificates - run: apt-get update -qq && apt-get install -y curl ca-certificates - - - name: Install Bun - run: | - curl -fsSL https://bun.sh/install | bash - echo "$HOME/.bun/bin" >> $GITHUB_PATH - echo "PATH=$HOME/.bun/bin:$PATH" >> $GITHUB_ENV - - - name: Install deploy tools - run: apt-get update -qq && apt-get install -y rsync openssh-client sshpass - - - name: Install dependencies - run: bun install --frozen-lockfile - - - name: Build - run: bun run build - env: - VITE_POCKETBASE_URL: ${{ secrets.DEV_VITE_POCKETBASE_URL || vars.VITE_POCKETBASE_URL || 'https://pocketbase.ccllc.pro' }} - - - name: Verify build output - run: | - ls -la - test -d dist || (echo "Missing dist/ (Vite output). Check Build step." && exit 1) - - - name: Setup SSH known hosts - run: | - mkdir -p ~/.ssh - ssh-keyscan -p ${{ secrets.DEV_DEPLOY_SSH_PORT || '22' }} -H ${{ secrets.DEV_DEPLOY_HOST || env.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null || true - - - name: Deploy via rsync - env: - SSH_PASSWORD: ${{ secrets.DEV_DEPLOY_PASSWORD }} - run: | - sshpass -p "$SSH_PASSWORD" rsync -avz --delete \ - -e "ssh -o StrictHostKeyChecking=accept-new -p ${{ secrets.DEV_DEPLOY_SSH_PORT || '22' }}" \ - dist/ \ - ${{ secrets.DEV_DEPLOY_USER }}@${{ secrets.DEV_DEPLOY_HOST || env.DEPLOY_HOST }}:${{ secrets.DEV_DEPLOY_PATH || env.DEPLOY_PATH }}/ - - - name: Restart app on server - env: - SSH_PASSWORD: ${{ secrets.DEV_DEPLOY_PASSWORD }} - run: | - sshpass -p "$SSH_PASSWORD" ssh -o StrictHostKeyChecking=accept-new -p ${{ secrets.DEV_DEPLOY_SSH_PORT || '22' }} \ - ${{ secrets.DEV_DEPLOY_USER }}@${{ secrets.DEV_DEPLOY_HOST || env.DEPLOY_HOST }} \ - 'bash -lc "cd ${{ secrets.DEV_DEPLOY_PATH || env.DEPLOY_PATH }} && export PORT=${{ env.APP_PORT }} && (pm2 restart tasgrid-dev 2>/dev/null || pm2 start \"bun run serve\" --name tasgrid-dev --update-env)"' + 'bash -lc "cd ${{ secrets.DEPLOY_PATH || env.DEPLOY_PATH }} && export PORT=${{ env.APP_PORT }} && (pm2 restart tasgrid 2>/dev/null || pm2 start \"bun run serve\" --name tasgrid --update-env)"' \ No newline at end of file