From 53b61249b098d528c60dc2884bc3ab7ab611df90 Mon Sep 17 00:00:00 2001 From: Jared Vititoe Date: Tue, 14 Apr 2026 16:25:12 -0400 Subject: [PATCH] ci: add notify-failure, deploy tagging, and jest coverage - lint.yml: add notify-failure Matrix alert job; add Tag deployed commit step to deploy job with deploy-YYYY.MM.DD-N tagging via Gitea API - package.json: add --coverage flag to jest test script Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/lint.yml | 31 +++++++++++++++++++++++++++++++ package.json | 2 +- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/lint.yml b/.gitea/workflows/lint.yml index 5d30363..f65f3c8 100644 --- a/.gitea/workflows/lint.yml +++ b/.gitea/workflows/lint.yml @@ -19,11 +19,31 @@ jobs: - name: Run ESLint run: npx eslint --ext .js . + notify-failure: + name: Notify on failure + runs-on: ubuntu-latest + needs: [js-lint] + if: failure() && github.event_name == 'push' + steps: + - name: Send Matrix alert + env: + MATRIX_WEBHOOK_URL: ${{ secrets.MATRIX_WEBHOOK_URL }} + REPO: ${{ github.repository }} + BRANCH: ${{ github.ref_name }} + RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} + run: | + if [ -z "$MATRIX_WEBHOOK_URL" ] || [ "$MATRIX_WEBHOOK_URL" = "CONFIGURE_ME" ]; then exit 0; fi + curl -sf -X POST "$MATRIX_WEBHOOK_URL" \ + -H "Content-Type: application/json" \ + -d "{\"text\":\"CI FAILED: ${REPO} @ ${BRANCH} — ${RUN_URL}\"}" + deploy: name: Deploy runs-on: ubuntu-latest needs: [js-lint] if: github.event_name == 'push' && github.ref == 'refs/heads/main' + permissions: + contents: write steps: - name: Trigger webhook env: @@ -38,3 +58,14 @@ jobs: -H "X-Gitea-Signature: ${SIG}" \ -d "$PAYLOAD" \ "http://10.10.10.65:9000/hooks/pulse-deploy" + + - name: Tag deployed commit + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + TAG="deploy-$(date -u +%Y.%m.%d)-${{ github.run_number }}" + curl -sf -X POST \ + -H "Authorization: token $GITHUB_TOKEN" \ + -H "Content-Type: application/json" \ + -d "{\"tag_name\":\"${TAG}\",\"target\":\"${{ github.sha }}\",\"message\":\"Deployed to production\"}" \ + "https://code.lotusguild.org/api/v1/repos/${{ github.repository }}/tags" diff --git a/package.json b/package.json index f080c46..60bb53c 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "main": "index.js", "scripts": { - "test": "jest" + "test": "jest --coverage" }, "keywords": [], "author": "",