Try Devtron Enterprise!
Start Free Trial
LogoLogo
WebsiteDevtron demoGithub RepoJoin Discord
v0.7
v0.7
  • Introduction
  • Getting Started
  • Install Devtron
    • Install Devtron with CI/CD
    • Install Devtron with CI/CD and GitOps (Argo CD)
    • Install Devtron without Integrations
    • Install Devtron on Minikube, Microk8s, K3s, Kind, Cloud VMs
    • Install Devtron on Airgapped Environment
    • Demo on Popular Cloud Providers
    • Backup for Disaster Recovery
    • Uninstall Devtron
    • FAQs
  • Install Devtron Enterprise Trial
  • Devtron Kubernetes Client
  • Production Infra Recommendations
  • Configurations
    • Installation Configurations
    • Override Configurations
    • Ingress Setup
  • Global Configurations
    • Host URL
    • GitOps
    • Projects
    • Clusters & Environments
    • Git Accounts
    • Container/OCI Registry
    • Chart Repositories
    • Deployment Charts
    • Authorization
      • SSO Login Services
        • Google
        • GitHub
        • GitLab
        • Microsoft
        • LDAP
        • OIDC
          • Keycloak
          • Okta
        • OpenShift
      • User Permissions
      • Permission Groups
      • API Tokens
    • Notifications
    • Deployment Window
    • Approval Policy
    • External Links
    • Catalog Framework
    • Scoped Variables
    • Plugin Policy
    • Pull Image Digest
    • Tags Policy
    • Filter Condition
    • Lock Deployment Configuration
    • Image Promotion Policy
    • Build Infra
  • Devtron Upgrade
    • Update Devtron from Devtron UI
    • Upgrade to 1.5.0
    • 0.6.x-0.7.x
    • 0.5.x-0.6.x
    • 0.4.x-0.5.x
    • 0.4.x-0.4.x
    • 0.3.x-0.4.x
    • 0.3.x-0.3.x
    • 0.2.x-0.3.x
  • Usage
    • Applications
      • Create a New Application
      • Clone an Existing Application
      • Deploy a Sample Application
      • App Configuration
        • Git Repository
        • Build Configuration
        • Base Deployment Template
          • Deployment
          • Rollout Deployment
          • Job and Cronjob
          • StatefulSets
        • GitOps Configuration
        • Workflow Editor
          • CI Pipeline
            • Pre-Build/Post-Build Stages
            • Override Build Configuration
          • CD Pipeline
        • ConfigMaps
        • Secrets
          • External Secret Operator (ESO)
            • AWS Secrets Manager
            • Google Secrets Manager
            • HashiCorp Vault
        • Environment Overrides
        • Deleting Application
      • Build and Deploy
        • Triggering CI
        • Triggering CD
        • Rollback Deployment
        • Applying Labels to Images
      • App Details
        • Debugging Deployment And Monitoring
        • Using Ephemeral Containers
        • Application Metrics
        • Deployment Visibility & Actions
      • Application Overview
    • Jobs
      • Create a new job
      • Configurations
      • Workflow Editor
      • Trigger Job
      • Overview
    • Application Groups
    • Software Distribution Hub
      • Tenants
      • Release Hub
    • Resource Browser
    • Resource Watcher
    • Charts
      • Charts Overview
      • Deploy & Observe
      • Examples
        • Deploying Mysql Helm Chart
        • Deploying MongoDB Helm Chart
      • Chart Group
    • Security
      • Security Scans
      • Security Policies
    • Bulk Edit
    • Integrations
      • Build and Deploy (CI/CD)
      • GitOps (Argo CD)
      • Vulnerability Scanning
        • Clair
        • Trivy
      • Notifications
      • Monitoring (Grafana)
    • Pipeline Plugins
      • Create Your Plugin
      • Our Plugins
        • Ansible Runner
        • Bitbucket Runner Trigger
        • Codacy
        • Code-Scan
        • Copacetic
        • Container Image Exporter
        • Copy Container Image
        • Cosign
        • CraneCopy
        • Dependency track - Maven & Gradle
        • Dependency track - NodeJS
        • Dependency track - Python
        • Devtron CD Trigger
        • Devtron CI Trigger
        • Devtron Job Trigger
        • DockerSlim
        • EKS Create Cluster
        • GCS Create Bucket
        • GitHub Pull Request Updater
        • GKE Provisioner
        • GoLang-migrate
        • Jenkins
        • Jira Issue Validator
        • Jira Issue Updater
        • K6 Load Testing
        • Pull images from container repository
        • Semgrep
        • SonarQube
        • SonarQube v1.1.0
        • Terraform CLI
        • Vulnerability Scanning
  • Resources
    • Glossary
    • Troubleshooting
    • Use Cases
      • Devtron Generic Helm Chart To Run CronJob Or One Time Job
      • Connect SpringBoot with Mysql Database
      • Connect Expressjs With Mongodb Database
      • Connect Django With Mysql Database
      • Pull Helm Charts from OCI Registry
    • Telemetry Overview
    • Devtron on Graviton
    • Release Notes
Powered by GitBook
On this page
  • Introduction
  • Initial Prerequisites
  • Configurations
  • Email SES Configuration
  • Email SMTP Configuration
  • Slack Configuration
  • Webhook Configuration
  • Notifications
  • Add Notifications
  • Modify Notifications
  • Delete Notifications
  • Sample Payloads
  • For Microsoft Teams
  • For Slack
  • For Discord
  • For RingCentral

Was this helpful?

Export as PDF
  1. Global Configurations

Notifications

PreviousAPI TokensNextDeployment Window

Last updated 7 days ago

Was this helpful?

Introduction

Monitoring updates of your CI/CD pipelines, such as their triggers, successes, and failures, can be challenging without a proper notification system in place.

The Notifications module in Devtron helps you solve this problem by sending you timely updates about your CI/CD pipelines through various mediums such as Email, Slack, Discord, and much more - ensuring you stay informed at all times.

Figure 1: Notification

Initial Prerequisites

  • Notifications module integration installed in your Devtron instance.

    • For Enterprise users: This module comes installed by default.


Configurations

The Notifications page allows you to configure and manage notifications for your CI/CD pipeline(s). To access the Notifications page, navigate to Global Configurations → Notifications.

The Notifications page has the following two tabs:

  • Configurations - Allows you to configure the way (Email SES, Email SMTP, Slack, Webhook) through which the notifications will be delivered.

  • Notifications - Allows you to define the recipients and the events (e.g., CI/CD success, failure, trigger) for which the notifications must be sent out.

You can configure notifications in Devtron in the following four ways:

Email SES Configuration

Who Can Perform This Action?

Prerequisites

  • AWS access key and secret key - When obtaining access key and secret access key from AWS SES, make sure to generate them from the Security credentials page (Profile → Security credentials → Access keys → Create access key).

Email (SES) Tutorial

Steps

  1. Navigate to the Global Configurations → Notifications → Configurations → Email (SES) → Add SES.

  2. Enter the following details in the Configure SES page:

    Key
    Description

    Configuration Name

    Give a name to your SES Configuration, e.g., qa-ses

    Access Key ID

    Valid access key from your AWS Security credentials page, e.g., AKIAWEAVHF123ABCD123

    Secret Access Key

    Secret access key from your AWS Security credentials page

    AWS Region

    The AWS region you used while setting up SES, e.g., United States (Ohio)

    Send email from

    The sender email address verified by SES for sending emails

  3. Enable the Set as default configuration to send emails check box (optional) if you wish to keep this configuration as the default one for sending emails.

  4. Click Save.

Email SMTP Configuration

Who Can Perform This Action?

Prerequisite

SMTP credentials (username and password) from your SMTP provider.

Additional Resources:

Email SMTP Tutorial

Steps

  1. Navigate to the Global Configurations → Notifications → Configurations → Email (SMTP) → Add SMTP.

  2. Enter the following details in the Configure SMTP page:

    Key
    Description

    Configuration Name

    Give a name to your SMTP Configuration, e.g., qa-smtp

    SMTP Port

    The port number available in your SMTP settings, e.g., 587

    SMTP Host address/Server

    The SMTP endpoint available in your SMTP settings, e.g., smtp.gmail.com

    SMTP Username

    A valid username created with your SMTP provider, e.g., AKIAWEAVHF123ABCD123 in case of AWS SMTP and johndoe@gmail.com in case of Gmail SMTP.

    SMTP Password

    The password generated by your SMTP provider

    Send email from

    The sender email address verified by your SMTP provider for sending emails

  3. Enable the Set as default configuration to send emails check box (optional) if you wish to keep this configuration as the default one for sending emails.

  4. Click Save.

Slack Configuration

Who Can Perform This Action?

Prerequisite

Slack Tutorial

Steps

  1. Navigate to the Global Configurations → Notifications → Configurations → Slack → Add Slack.

  2. Enter the following details in the Configure Slack page:

    Key
    Description

    Slack Channel

    Name of the Slack channel on which you wish to receive notifications, e.g., qa-slack-channel

    Webhook URL

    Enter a valid incoming webhook URL

    Project

    Select the project name to control user access. Apps outside your selected project cannot use this configuration, e.g., qa-demo

  3. Click Save.

Webhook Configuration

Who Can Perform This Action?

Prerequisite

A Webhook URL to receive notifications (e.g., Microsoft Teams Webhook URL, Discord Webhook URL).

Webhook Tutorial

Steps

  1. Navigate to the Global Configurations → Notifications → Configurations → Webhook → Add Webhook.

  2. Enter the following details in the Configure Webhook page:

    Key
    Description

    Configuration name

    Give a name to your webhook configuration, e.g., qa-webhook

    Webhook URL

    Enter a valid Webhook URL link

    Headers

    Add optional key-value pairs, e.g. Content-Type: application/json

    Data to be shared through webhook

    Write the payload content of the notification in a JSON format. Refer:

  3. Click Save.


Notifications

Add Notifications

Once you have configured the notifications in the Configuration tab, you can then add, edit, and delete notifications in the Notifications tab. To create a new notification, follow the below instructions:

  1. Navigate back to the Notifications tab.

  2. Click the Add Notification button. The Add Notifications page is displayed.

  3. Enter your preferred recipient in the Send to drop-down box. You can add one or more recipients in the Send to drop-down box and the recipients can be any or all of the following:

    a. A verified email address (by SES/SMTP)

    b. A Slack channel

    c. A Webhook

  4. Select your preferred filter type from the following in the Select pipelines field:

    a. Application - Select Application, if you specifically know for which application(s) you need notifications for.

    b. Project - Select Project, if you want notifications for one or more applications within specific project(s).

    c. Environment - Select Environment, if you want notifications for applications deployed in specific environment(s) (e.g., production).

    d. Cluster - Select Cluster, if you want notifications for applications in a specific cluster(s).

    Once you have selected your preferred filter type, a list of CI/CD pipelines are displayed as filter results.

    • You can also choose to receive notifications for any CI or CD pipelines that do not exist currently but may exist in future by enabling the All current and future pipelines matching pipeline in the Pipeline Name column.

  5. Select your preferred events for which a notification must be sent out in the Events column. The labels are displayed when you hover over the check boxes. You can enable one or more events as per your requirements.

    a. Trigger - Enable this if you wish to receive notification whenever the pipeline is triggered.

    b. Success - Enable this if you wish to receive notification upon a successful build or deploy.

    c. Failure - Enable this if you wish to receive notification upon a failed build or deploy.

  6. Click Save. The notification is now successfully added. You can now build and deploy your application to get notifications of its CI/CD events.

Modify Notifications

You can always edit existing notifications instead of deleting them and creating new ones from scratch. For example, if you initially created notifications for Trigger and Failure events of your CI/CD pipelines, you can perform removal/addition of events anytime by modifying them.

To modify the events, follow the below steps:

  1. Navigate to the Notifications tab.

  2. Select your preferred notification.

  3. Check the check box in the left side of the notification to select it.

  4. Click Modify Events to modify the events. Check or uncheck the events based on your requirements.

  5. Click Apply.

When creating notifications, if you previously added a recipient but now no longer want them to receive the CI/CD notifications, or if you want to add a new recipient or remove a specific communication medium (e.g., Slack), you can do so by modifying the recipients.

To modify the recipients, follow the below steps:

  1. Navigate to the Notifications tab.

  2. Select your preferred notification.

  3. Check the check box in the left side of the notification to select it.

  4. Click Modify Recipients to modify the recipients. Add or remove the recipients based on your requirements.

  5. Click Save Changes.

Delete Notifications

If you no longer wish to receive CI/CD notifications for an application, you can delete the corresponding notification from the Notifications tab.

Important Note

If you are currently receiving CI/CD notifications for a specific application, deleting its associated notification(s) in Devtron will stop the notifications for all events and recipients mentioned in those deleted notification(s).

To delete a notification, follow the below steps:

  1. Navigate to the Notifications tab.

  2. Select your preferred notification.

  3. Check the check box in the left side of the notification to select it.

  4. Click Delete to delete the notification.


Sample Payloads

For Microsoft Teams

Teams Webhook Payload
{
    "type": "message",
    "attachments": [
        {
            "contentType": "application/vnd.microsoft.card.adaptive",
            "contentUrl": null,
            "content": {
                "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
                "type": "AdaptiveCard",
                "version": "1.2",
                "body": [
                    {
                        "type": "TextBlock",
                        "text": "Automation Notification for Devtron \n *App* : {{devtronAppName}} \n *Event Type* : {{eventType}}"
                    }
                ]
            }
        }
    ]
}

For Slack

Slack Webhook Payload
{
    "text": "CI Triggered",
    "blocks": [
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": "Automation Notification for Devtron \n *App* : {{devtronAppName}} \n *Event Type* : {{eventType}}"
            },
            "accessory": {
                "type": "image",
                "image_url": "https://awsmp-logos.s3.amazonaws.com/3ec35b66-ca90-4ed0-8c9e-146fa65e1037/f3966518a472c0e5f51c57f5efb20da7.png",
                "alt_text": "Devtron Logo"
            }
        }
    ]
}

For Discord

Discord Webhook Payload
{
    "content": "Automation Notification at Devtron \n App : {{devtronAppName}} \n Event Type : {{eventType}}"
}

For RingCentral

RingCentral Webhook Payload
{
    "activity": "CI Triggered",
    "attachments": [
    {
        "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
        "type": "AdaptiveCard",
        "version": "1.0",
        "body": [
        {
            "type": "TextBlock",
            "text": "Automation Notification at Devtron \n App: {{devtronAppName}} \n Event Type: {{eventType}}",
            "weight": "bolder",
            "size": "medium",
            "wrap": true
        },
        {
            "type": "ColumnSet",
            "columns": [
            {
                "type": "Column",
                "width": "auto",
                "items": [
                {
                    "type": "Image",
                    "url": "https://awsmp-logos.s3.amazonaws.com/3ec35b66-ca90-4ed0-8c9e-146fa65e1037/f3966518a472c0e5f51c57f5efb20da7.png",
                    "size": "small",
                    "style": "person"
                }
                ]
            },
            {
                "type": "Column",
                "width": "stretch",
                "items": [
                {
                    "type": "TextBlock",
                    "text": "Container Image Repo: {{devtronContainerImageRepo}} \n Container Image Tag: {{devtronContainerImageTag}}",
                    "weight": "bolder",
                    "wrap": true
                },
                {
                    "type": "TextBlock",
                    "spacing": "none",
                    "text": "Triggered by: {{devtronTriggeredByEmail}}",
                    "isSubtle": true,
                    "wrap": true
                }
                ]
            }
            ]
        },
        ]
    }
    ]
}

integration installed in your Devtron instance.

For OSS users: The Notifications page won't appear in Global Configurations unless you install the Notifications module from (Average installation time: ~ 5–6 minutes).

Figure 2: Notifications Page

Only can create and manage SES configurations.

Verified domain/email identities on AWS SES - To know more, visit .

Figure 3: Configure SES

Now that the Email (SES) configuration is set up, you can proceed to .

Only can create and manage SMTP configurations.

Figure 4: Configure SMTP

Now that the Email (SMTP) configuration is set up, you can proceed to .

Only can create and manage Slack configurations.

A Slack account, a Slack channel, and an .

Figure 5: Configure Slack

Now that the Slack configuration is set up, you can proceed to .

Only can create and manage Webhook configurations.

Figure 6: Configure Webhook

Now that the Webhook configuration is set up, you can proceed to .

Figure 7: Notifications Tab
Figure 8: Add Notifications Page

indicates that it is a CI (Build) pipeline.

indicates that it is a CD (Deployment) pipeline.

Figure 9: Modify Events
Figure 10: Modify Recipients
Figure 11: Delete Notifications
Build and Deploy (CI/CD)
Devtron Stack Manager
SES Configuration
SMTP Configuration
Slack Configuration
Webhook Configuration
Super-Admins
Creating and Verifying Identities in Amazon SES
Add Notifications
Super-Admins
Generate AWS SMTP Credentials
Configure Gmail SMTP
Add Notifications
Super-Admins
Incoming Webhook URL
Add Notifications
Super-Admins
Add Notifications
Microsoft Teams Payload
Discord Payload
Slack Payload
RingCentral Payload