Upgrade Slack GHA

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • MyrinNew
    Senior Member
    • Feb 2024
    • 5168

    #1

    Upgrade Slack GHA

    If you like having your GitHub Actions workflows post messages to Slack, well, things just got a lot easier. Version 2 of slack-github-action has been released, and it makes your workflow file so much nicer because it supports YAML! Here is what it looks like.


    BEFORE:






    - name: Post to Slack
    uses: slackapi/slack-github-action@v1
    env:
    SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
    with:
    channel-id: "C3P0ANDR2D2"
    payload: |
    {
    "blocks": [
    {
    "type": "section",
    "text": {
    "type": "mrkdwn",
    "text": "My message goes here"
    }
    }
    ]
    }







    AFTER:






    - name: Post to Slack
    uses: slackapi/slack-github-action@v2
    with:
    method: chat.postMessage
    token: ${{ secrets.SLACK_BOT_TOKEN }}
    payload: |
    channel: "C3P0ANDR2D2"
    blocks:
    - type: section
    text:
    type: mrkdwn
    text: "My message goes here"







    So much prettier and easier to read/maintain.


    Note, you will have to shuffle some things around (like where the token is specified), and be explicit about the method you are using.


    Here is an example of an update message






    - name: Update Slack with success
    if: ${{ success() }}
    uses: slackapi/slack-github-action@v2
    with:
    method: chat.update
    token: ${{ secrets.SLACK_BOT_TOKEN }}
    payload: |
    channel: "C3P0ANDR2D2"
    ts: ${{ steps.slack.outputs.ts }}
    blocks:
    - type: section
    text:
    type: mrkdwn
    text: "My updated test"
    fields:
    - type: mrkdwn
    text: "My updated field"







    I used Cursor to help me do all of the conversion from JSON to YAML, so this wasn't too painful of a change.


    Happy Coding!




    More...
Working...