First Steps: Repositories & Slack Channels

Russ Miles
Aug 9, 2017 · 3 min read

“What do I do next?”, that’s the first question that you might ask yourself after you’ve enrolled Atomist into your Slack team and authorised access to one or more of your GitHub organisations. One of the great things about having Atomist in your Slack team is that you get slick GitHub notifications. For instance, a PR notification summarizes the commits, shows you the GH status summary, and gives you a Merge button when all statuses pass.

GitHub Commits, Issues, Comments, Pull Requests … all available to you in Slack!

As was shown in the previous post, when the PR is merged, this message updates, instead of adding a separate message.

Another bonus of Atomist is that you can configure which channel receives messages from which GitHub repository right in Slack using the @atomist repo … command:

Atomist can link your GitHub repositories to your Slack channels

Link an Existing Channel to an Existing Repository

If you have an existing channel that your team is already collaborating in and an existing repository that they’re working on then you use the @atomist repo REPO_ORG REPO_NAME command, where REPO_ORG is the GitHub organization that owns the repository and REPO_NAME is the name of the GitHub repository you want to link, to link up your channel to your repository. Navigate to the channel you want to link and then use the @atomist repo REPO_ORG REPO_NAME command to link the channel to the specific organisation and repository that you want:

Linking the ‘cavendish’ repository to a channel

You can confirm this has worked using the @atomist repos command:

Repository successfully mapped to the current channel

Now when you make a commit to the linked repository you should see Atomist surfacing that notification into your Slack channel.

A commit that Atomist surfaces from a repository linked to a Slack channel

Link an Existing Channel to Multiple Repositories, and a Repository to Multiple Channels

Sometimes you might want to map more than one repository to a single channel or even multiple channels to a particular repository. In our Atomist Slack team we use a one-to-one linking from channel to repository, but the Atomist platform supports many-to-many relationships between chat channels and source code repositories. You already know how to create these links! You can use the @atomist repo <org-name> <repo-name> command as many times as you like to link as many repositories to as many channels as fits your team’s way of organising their work.

Disconnecting a Repository from a Channel

When a repository that was relevant to a particular channel isn’t any more you can disconnect that repository from the channel by using the @atomist repos command. That command will list the repositories currently linked to a channel and you can click the un-link button to remove the link to the repository that is no longer of interest:

Un-linking a repository from a channel

Summary

The entire flow for linking and disconnecting GitHub repositories to Slack channels is in the following video:

Linking and un-linking repositories to Slack channels so that Atomist can surface activity from GitHub

Now that you have GitHub activity linked to your repositories there is so much more that Atomist can surface from issue creation to pull request workflows through to Spring Boot runtime information:

Atomist becomes the hub for all your important and collaboratively actionable information in Slack

You can get started and try out all these features for yourself today by adding Atomist your Slack team.

Thanks to Ryan Day, David Dooling, Jessica Kerr, and Atomist

Russ Miles

Written by

https://twitter.com/russmiles

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade