Slack Notifications in Personal Settings

Currently, receiving slack notifications about build events is managed at the org-level and configured per pipeline, without support for filtering by the user that triggered the build. I’d like to be able to individually subscribe to receive slack notifications that are sent to me as DM’s, and only be notified about my builds.

The reason the pipeline-level filters don’t work for me is that our team contributes to many repos with their own pipelines, and these repos are shared by many teams beyond my own. If I subscribe to every build event in every pipeline that I sometimes use, I would be drowning in notifications. It’d be amazing if I could subscribe to anything I do anywhere, and a cherry on top would be to also filter down by branch name. Our prod deploys happen only in main/master branches, so I’d like to be able to target those specifically.

Use cases:

  • Find out when my build failed
  • Find out when my build is blocked and ready for approval

The second one in particular is important to me because our builds trigger when code merges to main in GitHub, and often I forget that Buildkite does this automatically. I’d like the reminder that I need to manually approve it to deploy to production, otherwise it sits there forgotten, which delays our team’s production lead time metrics and can create coordination confusion with other people that have code to deploy to prod but aren’t sure if my change is ready to go.

Hi @maxnorth!

Welcome to the community! :wave:

You can have more control over when each channel receives notifications with the notify attribute

Before adding a notify attribute to your pipeline.yml , ensure an organization admin has set up a Slack integration for the channel or user that you want to post to. For detailed information about setting up a Notification Service, see the Slack integration page.

You can also use conditionals on the Notifications to trigger Build notifications only under certain conditions. You can check all the supported variables here: Using Conditionals | Buildkite Documentation

Particularly speaking about the build.state, the state of the overall build is not available when executing a job. If a job is executing, the state of the build can’t be failed or passed as well, because there’s still a job executing.
It’s not possible to evaluate build.state without using an API to fetch the build and look at the states of the finished jobs. If you’re within a job running within the build then the build is still running, too.

Hope this helps!

Cheers,

Hi Paula, thanks for your response. The suggestions you provided won’t quite work for what I’m looking for, I’d like Buildkite to allow individuals to personally subscribe to any pipelines triggered by them, without having to hardcode themselves into the buildkite.yaml file for each pipeline.