GoCD Plugin for Docker - Registry Poller
The goal of this project is to offer a plugin for the GoCD build management tool. The plugin looks for changes in the Docker registry and triggers a pipeline when the hash has changed. It enables continuous deployment with Docker from Go.CD. Now you can use the Docker Registry as material.
It's hard to keep up with two rapidly changing APIs. I've used Docker 1.3.1 and Go 14.3.0. ToDo
In order to compile the project, you need to download the go-plugin-api-current.jar from the Go-Server. The best way is to copy the JAR from your Go-Server environment and install it in your local repository. Compiling
mvn install:install-file -Dfile=go-plugin-api-current.jar -DgroupId=com.thoughtworks.go -DartifactId=go-plugin-api -Dversion=14.3.0 -Dpackaging=jar
You can specify the connection and socket timeout when you're not satisfied with the default values. You can add the following properties to the system properties: Connection Settings
- docker.repo.connection.timeout (default 10s)
- docker.repo.socket.timeout (default 300s)
Credits
The project has been inspired by https://github.com/hammerdr/go-docker-registry-poller and the yum plugin from Thoughtworks.
Deployment
Download go-docker-registry poller from bintray https://bintray.com/manuelkasiske/maven/gocd-docker-v2-material-poller/view