name: CI on: push: branches: [main] tags: ["*"] pull_request: branches: [main] jobs: check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 - uses: actions/setup-node@v4 with: node-version: 22 - run: pnpm install --frozen-lockfile - run: pnpm check build-image: if: startsWith(github.ref, 'refs/tags/') needs: check runs-on: host steps: - uses: actions/checkout@v4 - name: Log in to Gitea registry run: echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login git.bahamut.nitrix.one -u "${{ secrets.REGISTRY_USERNAME }}" --password-stdin - name: Build and push run: | IMAGE=git.bahamut.nitrix.one/dostulata/initiative TAG=${GITHUB_REF#refs/tags/} docker build -t $IMAGE:$TAG -t $IMAGE:latest . docker push $IMAGE:$TAG docker push $IMAGE:latest - name: Deploy run: | IMAGE=git.bahamut.nitrix.one/dostulata/initiative TAG=${GITHUB_REF#refs/tags/} docker stop initiative || true docker rm initiative || true docker run -d --name initiative --restart unless-stopped -p 8080:80 $IMAGE:$TAG