From 5e052d424d9f1cfca095f9825814a3a590173a68 Mon Sep 17 00:00:00 2001 From: Adam Moussa <166072409+amoussa1229@users.noreply.github.com> Date: Fri, 1 May 2026 14:32:53 -0400 Subject: [PATCH] Add GitHub Actions workflow for deploy notifications (#23) Posts a Slack message to the schedule channel whenever code is pushed to main. Uses the existing Slack bot token stored as a GitHub secret. --- .github/workflows/deploy-notify.yml | 35 +++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .github/workflows/deploy-notify.yml diff --git a/.github/workflows/deploy-notify.yml b/.github/workflows/deploy-notify.yml new file mode 100644 index 0000000..7c860e7 --- /dev/null +++ b/.github/workflows/deploy-notify.yml @@ -0,0 +1,35 @@ +name: Deploy Notification + +on: + push: + branches: [main] + +jobs: + notify: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 2 + + - name: Extract version info from commit + id: info + run: | + MSG=$(git log -1 --pretty=%s) + echo "message=$MSG" >> "$GITHUB_OUTPUT" + # Count merge commits on main as version number + COUNT=$(git rev-list --count HEAD) + echo "count=$COUNT" >> "$GITHUB_OUTPUT" + + - name: Post to Slack + env: + SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} + SLACK_CHANNEL_ID: ${{ secrets.SLACK_CHANNEL_ID }} + run: | + curl -s -X POST https://slack.com/api/chat.postMessage \ + -H "Authorization: Bearer $SLACK_BOT_TOKEN" \ + -H "Content-Type: application/json" \ + -d "$(jq -n \ + --arg channel "$SLACK_CHANNEL_ID" \ + --arg text ":rocket: *Deployed to production* — ${{ steps.info.outputs.message }}" \ + '{channel: $channel, text: $text}')"