Skip to content

GitHub Action to send a Microsoft Teams notification

License

Notifications You must be signed in to change notification settings

cinch-labs/ms-teams-notification

 
 

Repository files navigation

ms-teams-notification status

Microsoft Teams Notification

A GitHub Action that sends customizable notifications to a dedicated Microsoft Teams channel.

Usage

  1. 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.
  1. Add a new step on your workflow code below actions/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: cinch-labs/[email protected]
        with:
          github-token: ${{ github.token }} # this will use the runner's token.
          ms-teams-webhook-uri: ${{ secrets.MS_TEAMS_WEBHOOK_URI }}
          notification-summary: Your custom notification message 
          notification-color: 17a2b8
          notification-text: A custom way to format your commit message, or it defaults to the last commit message if not set
          release-title: Custom title, or defaults to 'Release Notes'
          timezone: America/Denver
  1. Make it your own with the following configurations.
    • github-token - (required), set to the following:
      • ${{ github.token }}
    • 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.)
    • notification-text (optional), Custom text to display as release notes or defaults to last commit message
    • release-title (optional), Custom title to display for the release notes, defaults to 'Release Notes'
    • timezone - (optional, defaults to UTC), a valid database timezone name, (ex. Australia/Sydney or America/Denver, etc.)

Examples

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 or errors in your GitHub Actions workflow.

Emojis

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! &#x1F6A2​​ ✅ for the following screenshot. HEX codes for emojis here.

About

GitHub Action to send a Microsoft Teams notification

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 100.0%