New Feature: Pull Request Notifications By Path

Posted by John Barton on May 31, 2019.

Hecate Dispatch lets you write executable comms plans for your engineering team. One central config file for your GitHub organisation captures who needs to know what, when and how.

The first use case we aimed to solve was making sprawling, often microservice heavy, GitHub organisations with more repositories than engineers legible to their managers. Everything in GitHub's notification system maps directly to single repositories and our first step was making it easy to define configuration that could span across whole repositories.

With this release you can now define notification rules against pull requests that cover any arbitrary path across the organisation. This opens up a couple of really helpful use-cases. To do this we've added glob keys to certain configuration options that follow Git's pathspec format.

Define cross-cutting concerns

Do you have a team that need to know whenever a certain type of file changes anywhere at in the organisation? I can think of loads of examples but here's the first that springs to mind - your security engineering team.

Here's an example config that will notify a security team about all changes to JavaScript and Ruby dependencies.

The example configurations sets up two layers of notifications.

The first is an instant notification via Slack that will fire whenever a pull request is opened across the organisation touching a pacakge.json or Gemfile. The notification looks like the one below.

Hecate Pull Request Opened Slack Notification

The second is to send a weekly email newsletter listing every pull request that matched the same criteria. This is great for doing a second sweep and checking off any that you might have missed pre-emptively.

Monorepo support

The other use case that glob support opens up is crafting a team release email newsletter for a team that only owns a slice of a monolith or other kind of monorepo.

Here's an example to do a daily release email for a hypothetical front-end team working within a larger monorepo.

This will collect up all the merged pull requests that touched the defined folder in the config within the one repo.

Give it a whirl

If your team has a need to divide up communication boundaries that are bigger, smaller, or wholly indifferent to individual repository boundaries then Hecate Dispatch can help you out. Give it a try today with a 7 day free trial.

Photo by Mitchell Henderson on Unsplash