#!/bin/bash -eu ORG_PATH="github.com/coreos" REPO_PATH="${ORG_PATH}/rocket" if [ ! -h gopath/src/${REPO_PATH} ]; then mkdir -p gopath/src/${ORG_PATH} ln -s ../../../.. gopath/src/${REPO_PATH} || exit 255 fi export GOBIN=${PWD}/bin export GOPATH=${PWD}/gopath eval $(go env) echo "Building rkt (stage0)..." go build -o ${GOBIN}/rkt \ ${RKT_STAGE1_IMAGE:+-ldflags "-X main.defaultStage1Image '${RKT_STAGE1_IMAGE}'"} \ ${REPO_PATH}/rkt if [[ "$OSTYPE" == "linux-gnu" ]]; then echo "Building network plugins..." for d in networking/net/* networking/ipam/*; do if [ -d $d ]; then plugin=$(basename $d) echo " " $plugin go install ${REPO_PATH}/$d fi done echo "Building actool..." go build -o ${GOBIN}/actool github.com/coreos/rocket/Godeps/_workspace/src/github.com/appc/spec/actool export ACTOOL=${GOBIN}/actool echo "Building init (stage1)..." go install ${REPO_PATH}/stage1/init # symlink plugin binaries into stage1 rootfs mkdir -p stage1/rootfs/net-plugins/bin # make sure the bin dir doesn't have old links rm -f stage1/rootfs/net-plugins/bin/* for d in networking/net/* networking/ipam/*; do if [ -d $d ]; then plugin=$(basename $d) ln -sf ${GOBIN}/$plugin stage1/rootfs/net-plugins/bin fi done # symlink init into stage1 rootfs mkdir -p stage1/rootfs/init/bin ln -sf ${GOBIN}/init stage1/rootfs/init/bin echo "Building rootfs (stage1)..." make -C stage1/rootfs fi