Public Repository

Last pushed: 2 years ago
Short Description
Build GoCD installers easily
Full Description

This image can be used to build GoCD installers. Similar to the installers you can find on the GoCD download page. This is especially useful, when you're making changes to GoCD's installer scripts and want to try them out.

Supported tags

  • latest (corresponds to 14.4.0, see below)
  • 14.4.0 (corresponds to 14.4.0-1356, the latest release, as on Feb 23, 2015)

Usage

docker run -it --rm=true -v `pwd`/out:/installers gocd/gocd-build-installer deb

The example above builds only a Debian installer, since only "deb" is specified at the end of that command. You can use the same command to create multiple installers. Like this:

docker run -it --rm=true -v `pwd`/out:/installers gocd/gocd-build-installer rpm osx

The installers will be available in the directory you setup as a volume. In the above commands, it is "out" directory in the current working directory.

You can also use this image to build an installer for any arbitrary commit in any repository you want. See the "Options" section below.

This docker image is quite big (nearly 2GB, I think), since it has a copy of the codebase, most of the dependent JARs (in ~/.m2) and packages needed for it, such as Java, Maven, NSIS, etc.

Options

The available options for kind of installers that can be created are:

win or windows
osx or mac
deb or debian
rpm or redhat or centos
zip

To build installers for an arbitrary commit in some repository, you can use the REPO and BRANCH environment variables. For instance, running the command below will build the Debian and RPM installers for my_new_feature branch in the repository mentioned:

docker run -it -v `pwd`/installers:/installers -e REPO=https://github.com/arvindsv/gocd.git -e BRANCH=my_new_feature gocd/gocd-build-installer deb rpm

TODO/Bugs

  • Because of an issue with the NSIS installer, this pull request needs to be accepted into the GoCD codebase, before the Windows installer successfully builds.

Notes

  • If you do not want to specify a volume to use, then you can use docker cp. Like this:

      docker run -it gocd/gocd-build-installer deb
      docker cp CONTAINER-ID:/installers /some/path
    
  • Sources of this docker container (the Dockerfile, etc) are here, on GitHub.

Docker Pull Command
Owner
gocd

Comments (0)