#!/bin/bash set -e VERSION="0.4.0" rm -rf dist mkdir dist for ENV in $( go tool dist list | grep -v 'android' | grep -v 'darwin/arm' | grep -v 's390x' | grep -v 'plan9/arm'); do eval $( echo $ENV | tr '/' ' ' | xargs printf 'export GOOS=%s; export GOARCH=%s\n' ) GOOS=${GOOS:-linux} GOARCH=${GOARCH:-amd64} BIN="pup" if [ ${GOOS} == "windows" ]; then BIN="pup.exe" fi mkdir -p dist echo "Building for GOOS=$GOOS GOARCH=$GOARCH" sudo rkt run \ --set-env=GOOS=${GOOS} \ --set-env=GOARCH=${GOARCH} \ --set-env=CGO_ENABLED=0 \ --volume pup,kind=host,source=${PWD} \ --mount volume=pup,target=/go/src/github.com/ericchiang/pup \ --insecure-options=image \ docker://golang:1.6.3 \ --exec go -- build -v -a \ -o /go/src/github.com/ericchiang/pup/dist/${BIN} \ github.com/ericchiang/pup sudo rkt gc --grace-period=0s zip dist/pup_v${VERSION}_${GOOS}_${GOARCH}.zip -j dist/${BIN} rm -f dist/${BIN} done DARWIN_AMD64=pup_v${VERSION}_darwin_amd64.zip DARWIN_386=pup_v${VERSION}_darwin_386.zip cat << EOF > pup.rb # This file was generated by release.sh require 'formula' class Pup < Formula homepage 'https://github.com/ericchiang/pup' version '0.4.0' if Hardware.is_64_bit? url 'https://github.com/ericchiang/pup/releases/download/v${VERSION}/${DARWIN_AMD64}' sha256 '$( sha256sum dist/${DARWIN_AMD64} | awk '{ print $1 }' | xargs printf )' else url 'https://github.com/ericchiang/pup/releases/download/v${VERSION}/${DARWIN_386}' sha256 '$( sha256sum dist/${DARWIN_386} | awk '{ print $1 }' | xargs printf )' end def install bin.install 'pup' end end EOF