-
Notifications
You must be signed in to change notification settings - Fork 4.7k
/
Copy pathget_workspace_status.sh
executable file
·78 lines (65 loc) · 2.4 KB
/
get_workspace_status.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#!/bin/bash
# Copyright 2019 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# This script will be run when building process starts to
# generate key-value information that represents the status of the
# workspace. The output should be like
#
# KEY1 VALUE1
# KEY2 VALUE2
#
# If the script exits with non-zero code, it's considered as a failure
# and the output will be discarded.
# The code below presents an implementation that works for git repository
git_rev=$(git rev-parse HEAD 2>/dev/null)
echo "BUILD_SCM_REVISION ${git_rev}"
# Check whether there are any uncommited changes
git diff-index --quiet HEAD -- 2>/dev/null
if [[ $? == 0 ]];
then
tree_status="Clean"
else
tree_status="Modified"
fi
echo "BUILD_SCM_STATUS ${tree_status}"
VERSION=`tools/get_version.sh | grep VERSION | awk '{print $2}'`
echo "STABLE_KOPS_VERSION ${VERSION}"
# + is valid in semver, but not in docker tags. Fixup CI versions.
# Note that this mirrors the logic in DefaultProtokubeImageName
PROTOKUBE_TAG=${VERSION/+/-}
echo "STABLE_PROTOKUBE_TAG ${PROTOKUBE_TAG}"
if [[ -z "${DOCKER_REGISTRY}" ]]; then
DOCKER_REGISTRY="index.docker.io"
fi
if [[ -z "${DOCKER_IMAGE_PREFIX}" ]]; then
DOCKER_IMAGE_PREFIX=`whoami`/
fi
echo "STABLE_DOCKER_REGISTRY ${DOCKER_REGISTRY}"
echo "STABLE_DOCKER_IMAGE_PREFIX ${DOCKER_IMAGE_PREFIX}"
if [[ -z "${KOPS_CONTROLLER_TAG}" ]]; then
KOPS_CONTROLLER_TAG="${PROTOKUBE_TAG}"
fi
echo "STABLE_KOPS_CONTROLLER_TAG ${KOPS_CONTROLLER_TAG}"
if [[ -z "${DNS_CONTROLLER_TAG}" ]]; then
DNS_CONTROLLER_TAG="${PROTOKUBE_TAG}"
fi
echo "STABLE_DNS_CONTROLLER_TAG ${DNS_CONTROLLER_TAG}"
if [[ -z "${KOPS_UTILS_CP_TAG}" ]]; then
KOPS_UTILS_CP_TAG="${PROTOKUBE_TAG}"
fi
echo "STABLE_KOPS_UTILS_CP_TAG ${KOPS_UTILS_CP_TAG}"
if [[ -z "${KUBE_APISERVER_HEALTHCHECK_TAG}" ]]; then
KUBE_APISERVER_HEALTHCHECK_TAG="${PROTOKUBE_TAG}"
fi
echo "STABLE_KUBE_APISERVER_HEALTHCHECK_TAG ${KUBE_APISERVER_HEALTHCHECK_TAG}"