A GitHub Action that sends customizable notifications to a dedicated Microsoft Teams channel.
All credit to jdcargile the original creator of this action.
-
Add
MS_TEAMS_WEBHOOK_URI
on your repository's configs on Settings > Secrets. It is the Webhook URI of the dedicated Microsoft Teams channel for notification. -
Add a new
step
on your workflow code belowactions/checkout@v2
:name: MS Teams Notification on: [push, pull_request] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 # this is the new step using the ms-teams-notification action - name: Notify dedicated teams channel uses: djthornton1212/ms-teams-notification@v1.3 with: custom-facts: - name: Fact 1 value: The fact to communicate - name: Fact 2 value: The next fact to communicate - name: ... value: ... description: Text description to be communicated under titile github-token: ${{ github.token }} # will use the runner's token. ms-teams-webhook-uri: ${{ secrets.MS_TEAMS_WEBHOOK_URI }} notification-summary: Your custom notification message notification-color: 17a2b8 timezone: America/Denver view-commit-changes: true view-pull-request: true view-workflow-run: true
-
Make it your own with the following configurations.
custom-facts:
- (optional) A yaml list of facts to be added to the card. Credit to toko-bifrost/ms-teams-deploy-carddescription:
- (optional) Text to describe the card.github-token:
- (required), set to the following:${{ github.token }}
ms-teams-webhook-uri:
- (required), setup a new secret to store your Microsoft Teams Webhook URI (ex.MS_TEAMS_WEBHOOK_URI
). Learn more about setting up GitHub Secrets or Microsoft Teams Incoming Webhook.notification-summary:
(required), Your custom notification message (ex. Deployment Started or Build Successful)notification-color:
(optional), Custom color to help distinguish type of notification. Can be any HEX color. (ex. 007bff or 17a2b8 for info, 28a745 success, ffc107 warning, dc3545 error, etc.)timezone:
- (optional) Defaults toUTC
), a valid database timezone name, (ex. Australia/Sydney or America/Denver, etc.)view-commit-changes:
(optional) Activatesview commit changes
button on card.view-pull-request:
(optional) Activatesview pull request
button on card.view-workflow-run:
(optional) Activatesview workflow run
button on card.
As you can see below, the notification-summary
and notification-color
are being used to customize the appearance of the message. Use bright vibrant colors to notify your Microsoft Teams channel of warnings, errors or notices in your GitHub Actions workflow.
Emoji support isn't great for incoming webhooks on Microsoft Teams yet. You can hack your way through it using HEX codes. For example, in notification-summary
I used Emojify! 🚢 ✅
for the following screenshot. HEX codes for emojis here.
Below is a screenshot with the view-pull-request
active for both a pull and a code review & facts active: