mirror of
https://github.com/k3s-io/k3s.git
synced 2024-06-07 19:41:36 +00:00
Disable optimizations and symbol stripping on debug builds (#6147)
Signed-off-by: Silvio Moioli <silvio@moioli.net> Co-authored-by: Brad Davidson <brad@oatmail.org>
This commit is contained in:
parent
6156059136
commit
dbc7c72416
@ -42,7 +42,7 @@ ARG SELINUX=true
|
||||
ENV SELINUX $SELINUX
|
||||
|
||||
ENV DAPPER_RUN_ARGS --privileged -v k3s-cache:/go/src/github.com/k3s-io/k3s/.cache -v trivy-cache:/root/.cache/trivy
|
||||
ENV DAPPER_ENV REPO TAG DRONE_TAG IMAGE_NAME SKIP_VALIDATE SKIP_AIRGAP GCLOUD_AUTH GITHUB_TOKEN GOLANG
|
||||
ENV DAPPER_ENV REPO TAG DRONE_TAG IMAGE_NAME SKIP_VALIDATE SKIP_AIRGAP GCLOUD_AUTH GITHUB_TOKEN GOLANG DEBUG
|
||||
ENV DAPPER_SOURCE /go/src/github.com/k3s-io/k3s/
|
||||
ENV DAPPER_OUTPUT ./bin ./dist ./build/out ./build/static ./pkg/static ./pkg/deploy
|
||||
|
||||
|
@ -24,6 +24,11 @@ fi
|
||||
CMD_NAME="dist/artifacts/k3s${BIN_SUFFIX}"
|
||||
SIZE=$(stat -c '%s' ${CMD_NAME})
|
||||
|
||||
if [ -n "${DEBUG}" ]; then
|
||||
echo "DEBUG is set, ignoring binary size"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ ${SIZE} -gt ${MAX_BINARY_SIZE} ]; then
|
||||
echo "k3s binary ${CMD_NAME} size ${SIZE} exceeds max acceptable size of ${MAX_BINARY_SIZE} bytes (${MAX_BINARY_MB} MiB)"
|
||||
exit 1
|
||||
|
@ -42,8 +42,12 @@ VERSIONFLAGS="
|
||||
-X ${PKG_CNI_PLUGINS}/plugins/meta/flannel.Commit=${COMMIT}
|
||||
-X ${PKG_CNI_PLUGINS}/plugins/meta/flannel.buildDate=${buildDate}
|
||||
"
|
||||
LDFLAGS="
|
||||
-w -s"
|
||||
|
||||
if [ -n "${DEBUG}" ]; then
|
||||
GCFLAGS="-N -l"
|
||||
else
|
||||
LDFLAGS="-w -s"
|
||||
fi
|
||||
|
||||
STATIC="
|
||||
-extldflags '-static -lm -ldl -lz -lpthread'
|
||||
@ -106,12 +110,12 @@ if [ ! -x ${INSTALLBIN}/cni ]; then
|
||||
WORKDIR=$TMPDIR/src/github.com/containernetworking/plugins
|
||||
git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR
|
||||
cd $WORKDIR
|
||||
GO111MODULE=off GOPATH=$TMPDIR CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o $INSTALLBIN/cni
|
||||
GO111MODULE=off GOPATH=$TMPDIR CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -gcflags="all=${GCFLAGS}" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o $INSTALLBIN/cni
|
||||
)
|
||||
fi
|
||||
|
||||
echo Building k3s
|
||||
CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s ./cmd/server/main.go
|
||||
CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -gcflags="all=${GCFLAGS}" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s ./cmd/server/main.go
|
||||
ln -s k3s ./bin/k3s-agent
|
||||
ln -s k3s ./bin/k3s-server
|
||||
ln -s k3s ./bin/k3s-etcd-snapshot
|
||||
@ -127,14 +131,14 @@ export GOPATH=$(pwd)/build
|
||||
echo Building containerd
|
||||
pushd ./build/src/github.com/containerd/containerd
|
||||
TAGS="${TAGS/netcgo/netgo}"
|
||||
CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd
|
||||
CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd-shim-runc-v2 ./cmd/containerd-shim-runc-v2
|
||||
CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -gcflags="all=${GCFLAGS}" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd
|
||||
CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -gcflags="all=${GCFLAGS}" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd-shim-runc-v2 ./cmd/containerd-shim-runc-v2
|
||||
popd
|
||||
cp -vf ./build/src/github.com/containerd/containerd/bin/* ./bin/
|
||||
|
||||
echo Building runc
|
||||
pushd ./build/src/github.com/opencontainers/runc
|
||||
rm -f runc
|
||||
make EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" $RUNC_STATIC
|
||||
make EXTRA_FLAGS="-gcflags=\"all=${GCFLAGS}\"" EXTRA_LDFLAGS="$LDFLAGS" BUILDTAGS="$RUNC_TAGS" $RUNC_STATIC
|
||||
popd
|
||||
cp -vf ./build/src/github.com/opencontainers/runc/runc ./bin/
|
||||
|
Loading…
Reference in New Issue
Block a user