2019-01-01 03:23:01 -05:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
2020-03-25 15:35:07 -04:00
|
|
|
GO=${GO-go}
|
|
|
|
|
ARCH=${ARCH:-$("${GO}" env GOARCH)}
|
2020-03-06 12:48:20 -05:00
|
|
|
SUFFIX="-${ARCH}"
|
|
|
|
|
GIT_TAG=$DRONE_TAG
|
2019-12-17 14:21:47 -05:00
|
|
|
TREE_STATE=clean
|
2020-03-10 14:48:14 -04:00
|
|
|
COMMIT=$DRONE_COMMIT
|
2019-01-01 03:23:01 -05:00
|
|
|
|
2020-03-06 12:48:20 -05:00
|
|
|
if [ -d .git ]; then
|
|
|
|
|
if [ -z "$GIT_TAG" ]; then
|
|
|
|
|
GIT_TAG=$(git tag -l --contains HEAD | head -n 1)
|
|
|
|
|
fi
|
|
|
|
|
if [ -n "$(git status --porcelain --untracked-files=no)" ]; then
|
|
|
|
|
DIRTY="-dirty"
|
|
|
|
|
TREE_STATE=dirty
|
|
|
|
|
fi
|
2019-01-01 03:23:01 -05:00
|
|
|
|
2020-03-06 12:48:20 -05:00
|
|
|
COMMIT=$(git log -n3 --pretty=format:"%H %ae" | grep -v ' drone@localhost$' | cut -f1 -d\ | head -1)
|
|
|
|
|
if [ -z "${COMMIT}" ]; then
|
|
|
|
|
COMMIT=$(git rev-parse HEAD || true)
|
|
|
|
|
fi
|
|
|
|
|
fi
|
2019-07-09 23:54:13 -04:00
|
|
|
|
2019-11-12 18:36:04 -05:00
|
|
|
VERSION_CONTAINERD=$(grep github.com/containerd/containerd go.mod | head -n1 | awk '{print $4}')
|
2019-09-19 21:46:26 -04:00
|
|
|
if [ -z "$VERSION_CONTAINERD" ]; then
|
|
|
|
|
VERSION_CONTAINERD="v0.0.0"
|
|
|
|
|
fi
|
|
|
|
|
|
2019-12-11 20:28:40 -05:00
|
|
|
VERSION_CRICTL=$(grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}')
|
2019-09-19 21:46:26 -04:00
|
|
|
if [ -z "$VERSION_CRICTL" ]; then
|
|
|
|
|
VERSION_CRICTL="v0.0.0"
|
|
|
|
|
fi
|
2019-10-02 18:55:04 -04:00
|
|
|
|
2020-11-06 16:33:31 -05:00
|
|
|
VERSION_K8S=$(grep 'k8s.io/kubernetes v' go.mod | head -n1 | awk '{print $2}')
|
2019-12-11 20:28:40 -05:00
|
|
|
if [ -z "$VERSION_K8S" ]; then
|
|
|
|
|
VERSION_K8S="v0.0.0"
|
|
|
|
|
fi
|
|
|
|
|
|
2021-12-15 19:14:27 -05:00
|
|
|
VERSION_RUNC=$(grep github.com/opencontainers/runc go.mod | head -n1 | awk '{print $4}')
|
|
|
|
|
if [ -z "$VERSION_RUNC" ]; then
|
|
|
|
|
VERSION_RUNC="v0.0.0"
|
|
|
|
|
fi
|
|
|
|
|
|
2022-01-24 08:28:37 -05:00
|
|
|
VERSION_CNIPLUGINS="v1.0.1-k3s1"
|
2019-12-11 20:28:40 -05:00
|
|
|
|
2022-01-24 08:28:37 -05:00
|
|
|
VERSION_ROOT="v0.11.0"
|
2021-12-15 19:14:27 -05:00
|
|
|
|
2019-12-11 20:28:40 -05:00
|
|
|
if [[ -n "$GIT_TAG" ]]; then
|
2020-01-24 12:42:34 -05:00
|
|
|
if [[ ! "$GIT_TAG" =~ ^"$VERSION_K8S"[+-] ]]; then
|
|
|
|
|
echo "Tagged version '$GIT_TAG' does not match expected version '$VERSION_K8S[+-]*'" >&2
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2019-12-11 20:28:40 -05:00
|
|
|
VERSION=$GIT_TAG
|
|
|
|
|
else
|
2020-02-24 16:50:03 -05:00
|
|
|
VERSION="$VERSION_K8S+k3s-${COMMIT:0:8}$DIRTY"
|
2019-12-11 20:28:40 -05:00
|
|
|
fi
|
2019-12-18 01:29:05 -05:00
|
|
|
VERSION_TAG="$(sed -e 's/+/-/g' <<< "$VERSION")"
|