|
|
|
#!/bin/bash
|
|
|
|
set -e -x
|
|
|
|
|
|
|
|
cd $(dirname $0)/..
|
|
|
|
|
|
|
|
. ./scripts/version.sh
|
|
|
|
|
|
|
|
rm -rf bin/crictl bin/kubectl bin/k3s-agent bin/k3s-server bin/kubectl bin/k3s build/data
|
|
|
|
ln -s containerd bin/k3s-agent
|
|
|
|
ln -s containerd bin/k3s-server
|
|
|
|
ln -s containerd bin/kubectl
|
|
|
|
ln -s containerd bin/crictl
|
|
|
|
for i in bridge flannel host-local loopback portmap; do
|
|
|
|
if [ -e ./bin/$i ]; then
|
|
|
|
rm -f ./bin/$i
|
|
|
|
fi
|
|
|
|
ln -s cni ./bin/$i
|
|
|
|
done
|
|
|
|
|
|
|
|
cp contrib/util/check-config.sh bin/check-config
|
|
|
|
|
|
|
|
rm -rf build/data
|
|
|
|
mkdir -p build/data build/out
|
|
|
|
mkdir -p dist/artifacts
|
|
|
|
|
|
|
|
(
|
|
|
|
set +x
|
|
|
|
cd bin
|
|
|
|
find . -not -path '*/\.*' -type f -exec sha256sum {} \; | sed -e 's| \./| |' | sort -k2 >.sha256sums
|
|
|
|
(
|
|
|
|
for f in $(find . -type l); do
|
|
|
|
echo $f $(readlink $f)
|
|
|
|
done
|
|
|
|
) | sed -e 's|^\./||' | sort >.links
|
|
|
|
set -x
|
|
|
|
)
|
|
|
|
|
|
|
|
tar cvzf ./build/out/data.tar.gz --exclude ./bin/hyperkube ./bin ./etc
|
|
|
|
HASH=$(sha256sum ./build/out/data.tar.gz | awk '{print $1}')
|
|
|
|
|
|
|
|
cp ./build/out/data.tar.gz ./build/data/${HASH}.tgz
|
|
|
|
|
|
|
|
BIN_SUFFIX="-${ARCH}"
|
|
|
|
if [ ${ARCH} = amd64 ]; then
|
|
|
|
BIN_SUFFIX=""
|
|
|
|
elif [ ${ARCH} = arm ]; then
|
|
|
|
BIN_SUFFIX="-armhf"
|
|
|
|
fi
|
|
|
|
|
|
|
|
CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX}
|
|
|
|
|
|
|
|
go generate
|
|
|
|
LDFLAGS="
|
|
|
|
-X github.com/rancher/k3s/pkg/version.Version=$VERSION
|
|
|
|
-X github.com/rancher/k3s/pkg/version.GitCommit=${COMMIT:0:8}
|
|
|
|
-w -s
|
|
|
|
"
|
|
|
|
STATIC="-extldflags '-static'"
|
|
|
|
if [ "$DQLITE" = "true" ]; then
|
|
|
|
DQLITE_TAGS="dqlite"
|
|
|
|
fi
|
|
|
|
CGO_ENABLED=0 go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS $STATIC" -o ${CMD_NAME} ./cmd/k3s/main.go
|
|
|
|
|
|
|
|
./scripts/build-upload ${CMD_NAME} ${COMMIT}
|