GitHub - matsengrp/relay: Bare-bones continuous integration using Docker Hub and Slack.
Skip to content

Bare-bones continuous integration using Docker Hub and Slack.

Notifications You must be signed in to change notification settings

matsengrp/relay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

relay

A shim to get webhook POSTs from Docker Hub and post them to Slack.

Setup

Put your project up on Docker Hub

First, make a Dockerfile and add it to the root of your repository. You can test it locally with

sudo docker build .

after installing Docker.

Then push your project to Docker Hub.

Make a new Incoming Webhook in Slack's Integrations

Copy the webhook URL.

Webserver-side configuration

Set up dependencies:

sudo apt-get install python-requests python-twisted

Set shell variables for your webhook URL and a port (which can be any integer between 1024 and 65535; we have 8080 here as an example):

export slack_url='https://hooks.slack.com/services/PUT/YOURS/HERE'
export relay_port=8080

Clone this repo. Make a file channel_selector.json in the repo directory that maps the repo path on Docker Hub to a channel in your Slack chat. For example, to map https://registry.hub.docker.com/u/psathyrella/ham/ and our C++ build environment to the relevant channels, the file would be:

{
    "psathyrella/ham":"#bcell",
    "matsengrp/cpp":"#infrastructure"
}

Run

After running

python relay.py

visit http://your-webserver-goes-here.com:8080/relay and you should get the message "Relay is running."

Now, when your build pushes to Docker Hub you should get a nice notification in Slack.

About

Bare-bones continuous integration using Docker Hub and Slack.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages