A Slack integration is required to send notifications to Slack channels or rooms for pipeline events (to learn more about the Slack integration, see Artifactory and Xray Integration with Slack).
Creating a Slack Integration
Follow instructions in the Slack docs to create an incoming webhook. While you should specify a default or popular channel while creating the webhook, it can be overriden in your pipeline source when needed.
Copy the text in the Webhook URL section. It looks like this:
https://hooks.slack.com/services/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
To add your integration, follow steps on the Managing Pipelines Integrations page.
Here is the information you need to create this integration:
Name -- choose a friendly name for the integration
Webhook url -- Webhook URL to your Slack channel
Usage
The Slack integration can be added directly to a step in the integrations
section.
The send_notification utility function can be used with a Slack integration to send a notification message.
For more information, see Sending Notifications from Pipelines.
Default Environment Variables
When you add this integration to a step, a set of environment variables is automatically made available.
Environment variable | Description |
---|---|
| Webhook URL to your Slack channel |
Example
This example uses a Slack integration named
mySlack
.The send_notification utility function is used to send the
onStart
andonExecute
notifications.The YAML for this example is available in this repository in the JFrog GitHub account.
Sending notifications
pipelines: - name: pipe1 steps: - name: test_step_1 type: Bash configuration: integrations: - name: mySlack # This is the name of the Slack integration you created in your test instance execution: onStart: - send_notification mySlack --text "starting test_step_1" # replace 'mySlack' with the name of your Slack integration onExecute: - send_notification mySlack --text "onExecute, past test commands" # replace 'mySlack' with the name of your Slack integration onSuccess: - send_notification mySlack # without '--text' to send a generic notification that includes the pipeline name and step name