Easy way to build GoCD code, courtesy of Tomasz Sętkowski.
72
# Clone GoCD codebase
$ git clone --depth=1 https://github.com/gocd/gocd.git gocd-code
# Build it (using a docker container, so that you don't need to
# install dependencies)
$ docker run -u `id -u`:`id -g` -it -v `pwd`/gocd-code:/gocd-code \
arvindsv/build-gocd:2018_12_05 \
bash -c "cd /gocd-code && ./gradlew clean installers:agentGenericZip installers:serverGenericZip"
# Wait. It takes some time ... :)
# Once done, the server zip will be in:
# gocd-code/installers/target/distributions/zip/go-server-VERSION-COMMITCOUNT.zip
# Unzip it and bring the server up (in a VM or container, if you don't want to trust the output)
$ cd gocd-code/installers/target/distributions/zip
$ unzip go-server-18.12.0-YOUR-BUILD.zip
$ cd go-server-18.12.0
$ ./server.sh
2018_12_05):FROM openjdk:8-jdk
MAINTAINER Tomasz Sętkowski <[email protected]>
RUN apt-get update && apt-get install -y -q \
sudo fakeroot git nsis rpm unzip zip mercurial rake subversion wget
# install nodejs, update-alternatives is needed on ubuntu to enable command 'node'
RUN curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - &&\
apt-get install --yes nodejs && update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - &&\
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list &&\
apt-get update && apt-get install -y yarn
RUN apt-get install -y ruby-dev build-essential && \
gem install fpm
Content type
Image
Digest
Size
365.8 MB
Last updated
almost 8 years ago
docker pull arvindsv/build-gocd:2018_12_05