@@ -21,7 +21,10 @@ HOST_GOOS=$(go env GOOS)
21
21
HOST_GOARCH=$( go env GOARCH)
22
22
23
23
# --tags allows detecting non-annotated tags as well as annotated ones
24
- GIT_VERSION=$( git describe --always --dirty --tags)
24
+ GIT_VERSION=${VERSION:- " $( git describe --always --dirty --tags) " }
25
+ # PRE_DEFINED_VERSION is used when building binary and tagging image. Fallback to GIT_VERSION if not set.
26
+ # This is useful when automate creating documents. Otherwise the version in the doc will be git shas.
27
+ PRE_DEFINED_VERSION=${PRE_DEFINED_VERSION:- $GIT_VERSION }
25
28
IMAGE_VERSION=$( git describe --always --dirty --tags)
26
29
IMAGE_TAG=$( echo " $IMAGE_VERSION " | cut -d. -f1,2)
27
30
IMAGE_BRANCH=$( git rev-parse --abbrev-ref HEAD | sed ' s/\///g' )
@@ -143,7 +146,7 @@ gen_dockerfile_for_os_arch(){
143
146
# Onlhy doing one arch so this could be hardcoded, likewise we could handle the
144
147
# base image differently. Wanted something here for parity with linux in case we expand it though.
145
148
sed -e ' s|BINARY|build/windows/amd64/sonobuoy.exe|g' DockerfileWindows > " $dockerfile "
146
- else
149
+ else
147
150
echo " Windows ARCH unknown"
148
151
fi
149
152
else
@@ -155,7 +158,7 @@ gen_dockerfile_for_os_arch(){
155
158
build_container_os_arch_version (){
156
159
dockerfile=" build/$1 /$2 /Dockerfile"
157
160
gen_dockerfile_for_os_arch " $1 " " $2 "
158
- if [ " $1 " = " windows" ]; then
161
+ if [ " $1 " = " windows" ]; then
159
162
buildx_container_windows_version $3
160
163
else
161
164
build_container_dockerfile_arch " $dockerfile " $2
@@ -178,7 +181,7 @@ windows_containers() {
178
181
179
182
# Builds a binary for a specific goos/goarch.
180
183
build_binary_GOOS_GOARCH () {
181
- LDFLAGS=" -s -w -X $GOTARGET /pkg/buildinfo.Version=$GIT_VERSION -X $GOTARGET /pkg/buildinfo.GitSHA=$GIT_REF_LONG "
184
+ LDFLAGS=" -s -w -X $GOTARGET /pkg/buildinfo.Version=$PRE_DEFINED_VERSION -X $GOTARGET /pkg/buildinfo.GitSHA=$GIT_REF_LONG "
182
185
args=(${VERBOSE: +-v} -ldflags " ${LDFLAGS} " " $GOTARGET " )
183
186
if [ " $VERBOSE " ]; then args+=(" -v" ); fi ;
184
187
@@ -209,7 +212,7 @@ build_binaries() {
209
212
210
213
# Builds sonobuoy using the local goos/goarch.
211
214
native () {
212
- LDFLAGS=" -s -w -X $GOTARGET /pkg/buildinfo.Version=$GIT_VERSION -X $GOTARGET /pkg/buildinfo.GitSHA=$GIT_REF_LONG "
215
+ LDFLAGS=" -s -w -X $GOTARGET /pkg/buildinfo.Version=$PRE_DEFINED_VERSION -X $GOTARGET /pkg/buildinfo.GitSHA=$GIT_REF_LONG "
213
216
args=(-ldflags " ${LDFLAGS} " " $GOTARGET " )
214
217
CGO_ENABLED=0 GOOS=" $HOST_GOOS " GOARCH=" $HOST_GOARCH " go build -buildvcs=false -o sonobuoy " ${args[@]} "
215
218
mkdir -p ./build/$HOST_GOOS /$HOST_GOARCH
0 commit comments