mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
58 lines
873 B
Bash
Executable File
58 lines
873 B
Bash
Executable File
#!/bin/sh -e
|
|
|
|
VER=$1
|
|
|
|
function build {
|
|
proj=${1}
|
|
ver=${2}
|
|
|
|
if [ ! -d ${proj} ]; then
|
|
git clone https://github.com/coreos/${proj}
|
|
fi
|
|
|
|
cd ${proj}
|
|
git checkout master
|
|
git fetch --all
|
|
git reset --hard origin/master
|
|
git checkout $ver
|
|
./build
|
|
cd -
|
|
}
|
|
|
|
function package {
|
|
proj=${1}
|
|
target=${2}
|
|
|
|
ccdir="${proj}/bin/${GOOS}_${GOARCH}"
|
|
if [ -d ${ccdir} ]; then
|
|
cp ${ccdir}/${proj}* ${target}
|
|
else
|
|
cp ${proj}/bin/${proj} ${target}
|
|
fi
|
|
|
|
cp ${proj}/README.md ${target}/README-${proj}.md
|
|
}
|
|
|
|
mkdir release
|
|
cd release
|
|
|
|
for i in darwin windows linux; do
|
|
export GOOS=${i}
|
|
export GOARCH="amd64"
|
|
|
|
build etcd ${VER}
|
|
build etcdctl ${VER}
|
|
|
|
TARGET="etcd-${VER}-${GOOS}-${GOARCH}"
|
|
mkdir ${TARGET}
|
|
|
|
package etcd ${TARGET}
|
|
package etcdctl ${TARGET}
|
|
|
|
if [ ${GOOS} == "linux" ]; then
|
|
tar cvvfz ${TARGET}.tar.gz ${TARGET}
|
|
else
|
|
zip -r ${TARGET}.zip ${TARGET}
|
|
fi
|
|
done
|