Harness Supports ChatOps - Microsoft Teams
Welcome to the Harness Family, Microsoft Teams! One more “ops” phoneme like DevOps is ChatOps; or conversation based development/operations. ChatOps has been growing in popularity as communication platforms such as Slack is ingrained in our day-to-day engineering lives. A team lead once told me “if it didn’t happen in Slack, it didn’t happen” showing the emphasis of communication platforms as a system of record.
As Microsoft Lync and Skype continued to evolve, Microsoft Teams is a more recent creation in the enterprise communication ecosystem. Driven by community demand, we are excited to have built additional native functionality integrating Microsoft Teams into Harness.
Let’s get a Team’in
To get started, you first will need to have access to Microsoft Teams. If you do not have an account, you can sign up with Microsoft for a tier that makes sense for you; I am using the free tier.
Like always, you can follow along in the blog and/or watch the video.
Microsoft Teams Configuration
I have created a Team called “Captain Canary” and a Channel called “Canary Calls”. I will push the alerts generated by Harness to “Canary Calls”.
The integration focuses on the ability of Microsoft Teams to process an incoming webhook. You can set one up pretty quickly and for further details can follow the Microsoft Teams documentation. Adding the Incoming Webhook Application can be done by going to App -> search for “webhooks” -> Incoming Webhook.
When installing into Microsoft Teams, you will need to pick a Channel. In my case, “Canary Calls” is the Channel where I want the alerts to go.
Name the webhook. In my case “my-alerts” and click create.
The webhook will be created. Make sure to copy the URL which will be used to post to the Channel.
To enable Microsoft Teams notifications in Harness, the first step is to wire the webhook as part of a notification mechanism inside a Harness User Group.
Continuous Security -> Access Managmenet
You can leverage an existing User Group or create a new one. Here I have created a new User Group called “Captain Canary”.
Towards the button of the User Group settings, we will edit the Notifications.
Paste in the webhook URL that the Incoming Webhooks application generated.
Once you click Submit, head back to the User Groups list. You will see a Microsoft Teams icon appear under the Notification Type column.
With that wiring out of the way, you can navigate to Harness Workflow and add a Notification Strategy. I have a simple Kubernetes deployment which I am using for the example.
You can configure when you want to be notified. For this example, I selected all the available Conditions to be notified about. Select the User Group you have wired the webhook too.
Once you click Submit, the Notification Strategy will be wired.
Now it’s time to give this a whirl. Click on the Deploy button.
Click Submit on the new Deployment.
The Deployment will run through.
You will now get a notification in Microsoft Teams. Success!
Just like that, you are now integrated with Microsoft Teams.
The Flexibility of the Harness Platform
The Harness platform is designed to orchestrate the disparate tasks that are needed to confidently deploy your applications/platforms. Part of that confidence-building is alerting the needed parties on events prudent to the deployment. Notable mentions include leveraging Slack or PagerDuty for notifications. The Harness Platform will continue to evolve and adapt to your needs; if you have an idea for a cool integration feel free to head to the Harness Community and let us know about your idea or what you have been working on. Like always if you have not signed up for Harness, sign up today.