From 4a439ac55517943df3a04bed317a1f560012d8b9 Mon Sep 17 00:00:00 2001 From: Marius Date: Fri, 11 Nov 2016 15:57:39 +0100 Subject: [PATCH] Move building functions into separate script file --- .scripts/build_all.sh | 64 ++---------------------------------- .scripts/build_funcs.sh | 72 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+), 62 deletions(-) create mode 100755 .scripts/build_funcs.sh diff --git a/.scripts/build_all.sh b/.scripts/build_all.sh index b36ead0..e51f0cb 100755 --- a/.scripts/build_all.sh +++ b/.scripts/build_all.sh @@ -2,69 +2,9 @@ set -e -version=$TRAVIS_TAG -commit=$TRAVIS_COMMIT +__dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -function compile { - local os=$1 - local arch=$2 - local ext=$3 - - echo "Compiling for $os/$arch..." - - local dir="tusd_${os}_${arch}" - rm -rf "$dir" - mkdir -p "$dir" - GOOS=$os GOARCH=$arch go build \ - -ldflags="-X github.com/tus/tusd/cmd/tusd/cli.VersionName=${version} -X github.com/tus/tusd/cmd/tusd/cli.GitCommit=${commit} -X 'github.com/tus/tusd/cmd/tusd/cli.BuildDate=$(date --utc)'" \ - -o "$dir/tusd$ext" ./cmd/tusd/main.go -} - -function makezip { - local os=$1 - local arch=$2 - local ext=$3 - - echo "Zipping for $os/$arch..." - - local dir="tusd_${os}_${arch}" - zip "$dir.zip" "$dir/tusd$ext" LICENSE.txt README.md -} - -function maketar { - local os=$1 - local arch=$2 - - echo "Tarring for $os/$arch..." - - local dir="tusd_${os}_${arch}" - tar -czf "$dir.tar.gz" "$dir/tusd" LICENSE.txt README.md -} - -function makedep { - local arch=$1 - - echo "Debbing for $arch..." - - local dir="tusd_snapshot_${arch}" - rm -rf "$dir" - mkdir -p "$dir" - mkdir -p "$dir/DEBIAN" - mkdir -p "$dir/usr/bin" - cp "./tusd_linux_${arch}/tusd" "./$dir/usr/bin/tusd" - - echo "Package: tusd" >> "./$dir/DEBIAN/control" - echo "Maintainer: Marius " >> "./$dir/DEBIAN/control" - echo "Section: devel" >> "./$dir/DEBIAN/control" - echo "Priority: optional" >> "./$dir/DEBIAN/control" - echo "Version: ${version}" >> "./$dir/DEBIAN/control" - echo "Architecture: ${arch}" >> "./$dir/DEBIAN/control" - echo "Homepage: https://github.com/tus/tusd" >> "./$dir/DEBIAN/control" - echo "Built-Using: $(go version)" >> "./$dir/DEBIAN/control" - echo "Description: The official server implementation of the tus resumable upload protocol." >> "./$dir/DEBIAN/control" - - dpkg-deb --build "$dir" -} +source "${__dir}/build_funcs.sh" compile linux 386 compile linux amd64 diff --git a/.scripts/build_funcs.sh b/.scripts/build_funcs.sh new file mode 100755 index 0000000..67ee1fe --- /dev/null +++ b/.scripts/build_funcs.sh @@ -0,0 +1,72 @@ +#!/usr/bin/env bash + +set -e + +version=$(git rev-parse --abbrev-ref HEAD) +commit=$(git log --format="%H" -n 1) + +function compile { + local os=$1 + local arch=$2 + local ext=$3 + + echo "Compiling for $os/$arch..." + + local dir="tusd_${os}_${arch}" + rm -rf "$dir" + mkdir -p "$dir" + GOOS=$os GOARCH=$arch go build \ + -ldflags="-X github.com/tus/tusd/cmd/tusd/cli.VersionName=${version} -X github.com/tus/tusd/cmd/tusd/cli.GitCommit=${commit} -X 'github.com/tus/tusd/cmd/tusd/cli.BuildDate=$(date --utc)'" \ + -o "$dir/tusd$ext" ./cmd/tusd/main.go +} + +function makezip { + local os=$1 + local arch=$2 + local ext=$3 + + echo "Zipping for $os/$arch..." + + local dir="tusd_${os}_${arch}" + zip "$dir.zip" "$dir/tusd$ext" LICENSE.txt README.md +} + +function maketar { + local os=$1 + local arch=$2 + + echo "Tarring for $os/$arch..." + + local dir="tusd_${os}_${arch}" + tar -czf "$dir.tar.gz" "$dir/tusd" LICENSE.txt README.md +} + +function makedep { + local arch=$1 + + echo "Debbing for $arch..." + + local dir="tusd_snapshot_${arch}" + rm -rf "$dir" + mkdir -p "$dir" + mkdir -p "$dir/DEBIAN" + mkdir -p "$dir/usr/bin" + cp "./tusd_linux_${arch}/tusd" "./$dir/usr/bin/tusd" + + echo "Package: tusd" >> "./$dir/DEBIAN/control" + echo "Maintainer: Marius " >> "./$dir/DEBIAN/control" + echo "Section: devel" >> "./$dir/DEBIAN/control" + echo "Priority: optional" >> "./$dir/DEBIAN/control" + echo "Version: ${version}" >> "./$dir/DEBIAN/control" + echo "Architecture: ${arch}" >> "./$dir/DEBIAN/control" + echo "Homepage: https://github.com/tus/tusd" >> "./$dir/DEBIAN/control" + echo "Built-Using: $(go version)" >> "./$dir/DEBIAN/control" + echo "Description: The official server implementation of the tus resumable upload protocol." >> "./$dir/DEBIAN/control" + + dpkg-deb --build "$dir" +} + +export -f compile +export -f maketar +export -f makezip +export -f makedep