Update nginx base image in one place (#8400)
* update files to use one base image file Signed-off-by: James Strong <strong.james.e@gmail.com> * add chart test as well Signed-off-by: James Strong <strong.james.e@gmail.com> * update e2e-test image building Signed-off-by: James Strong <strong.james.e@gmail.com> * update e2e base image arg Signed-off-by: James Strong <strong.james.e@gmail.com> * add current e2e so test run Signed-off-by: James Strong <strong.james.e@gmail.com> * working on fixing build * getting dev-env and make release to work * test * i think buildx is working on mac * updates * why docker for mac and linux cli differ * fix target arch * fix target arch * fix loag issue * fix issue * update the chroot docker file * fix docker base build * mac is the issue * env not getting to the e2e deployment.go file * fix pull issue * fix pull issue * move test scripts into test folder * clean up ci * updates for PR * remove unnesscary var
This commit is contained in:
parent
8baac4214a
commit
e1a16f6e74
19 changed files with 138 additions and 70 deletions
|
|
@ -14,8 +14,11 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
GO_BUILD_CMD="go build"
|
||||
|
||||
if [ -n "$DEBUG" ]; then
|
||||
set -x
|
||||
GO_BUILD_CMD="go build -v"
|
||||
fi
|
||||
|
||||
set -o errexit
|
||||
|
|
@ -31,39 +34,40 @@ mandatory=(
|
|||
TAG
|
||||
)
|
||||
|
||||
missing=false
|
||||
for var in "${mandatory[@]}"; do
|
||||
if [[ -z "${!var:-}" ]]; then
|
||||
echo "Environment variable $var must be set"
|
||||
missing=true
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "$missing" = true ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
export CGO_ENABLED=0
|
||||
export GOARCH=${ARCH}
|
||||
|
||||
TARGETS_DIR="rootfs/bin/${ARCH}"
|
||||
echo "Building targets for ${ARCH}, generated targets in ${TARGETS_DIR} directory."
|
||||
|
||||
go build \
|
||||
echo "Building ${PKG}/cmd/nginx"
|
||||
|
||||
${GO_BUILD_CMD} \
|
||||
-trimpath -ldflags="-buildid= -w -s \
|
||||
-X ${PKG}/version.RELEASE=${TAG} \
|
||||
-X ${PKG}/version.COMMIT=${COMMIT_SHA} \
|
||||
-X ${PKG}/version.REPO=${REPO_INFO}" \
|
||||
-o "${TARGETS_DIR}/nginx-ingress-controller" "${PKG}/cmd/nginx"
|
||||
|
||||
go build \
|
||||
echo "Building ${PKG}/cmd/dbg"
|
||||
|
||||
${GO_BUILD_CMD} \
|
||||
-trimpath -ldflags="-buildid= -w -s \
|
||||
-X ${PKG}/version.RELEASE=${TAG} \
|
||||
-X ${PKG}/version.COMMIT=${COMMIT_SHA} \
|
||||
-X ${PKG}/version.REPO=${REPO_INFO}" \
|
||||
-o "${TARGETS_DIR}/dbg" "${PKG}/cmd/dbg"
|
||||
|
||||
go build \
|
||||
echo "Building ${PKG}/cmd/waitshutdown"
|
||||
|
||||
${GO_BUILD_CMD} \
|
||||
-trimpath -ldflags="-buildid= -w -s \
|
||||
-X ${PKG}/version.RELEASE=${TAG} \
|
||||
-X ${PKG}/version.COMMIT=${COMMIT_SHA} \
|
||||
|
|
|
|||
|
|
@ -51,6 +51,9 @@ trap cleanup EXIT
|
|||
E2E_CHECK_LEAKS=${E2E_CHECK_LEAKS:-}
|
||||
FOCUS=${FOCUS:-.*}
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
NGINX_BASE_IMAGE=$(cat $BASEDIR/../NGINX_BASE)
|
||||
|
||||
export E2E_CHECK_LEAKS
|
||||
export FOCUS
|
||||
|
||||
|
|
@ -76,6 +79,7 @@ kubectl run --rm \
|
|||
--env="E2E_NODES=${E2E_NODES}" \
|
||||
--env="FOCUS=${FOCUS}" \
|
||||
--env="E2E_CHECK_LEAKS=${E2E_CHECK_LEAKS}" \
|
||||
--env="NGINX_BASE_IMAGE=${NGINX_BASE_IMAGE}" \
|
||||
--overrides='{ "apiVersion": "v1", "spec":{"serviceAccountName": "ingress-nginx-e2e"}}' \
|
||||
e2e --image=nginx-ingress-controller:e2e
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,8 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
if [ -n "$DEBUG" ]; then
|
||||
DEBUG=${DEBUG:-"false"}
|
||||
if [ "$DEBUG" == "true" ]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
|
|
@ -62,6 +63,14 @@ else
|
|||
PLATFORM_FLAG=
|
||||
fi
|
||||
|
||||
USER=${USER:-nobody}
|
||||
|
||||
if [[ ${MAC_OS} == "Darwin" ]]; then
|
||||
MAC_DOCKER_FLAGS=""
|
||||
else
|
||||
MAC_DOCKER_FLAGS="-u $(id -u ${USER}):$(id -g ${USER})" #idk why mac/git fails on the gobuild if these are presented to dockerrun.sh script
|
||||
fi
|
||||
|
||||
echo "..printing env & other vars to stdout"
|
||||
echo "HOSTNAME=`hostname`"
|
||||
uname -a
|
||||
|
|
@ -74,20 +83,21 @@ if [[ "$DOCKER_IN_DOCKER_ENABLED" == "true" ]]; then
|
|||
echo "FLAGS=$FLAGS"
|
||||
go env
|
||||
set -x
|
||||
go install -mod=mod github.com/onsi/ginkgo/ginkgo@v1.16.4
|
||||
go install -mod=mod github.com/onsi/ginkgo/ginkgo@v1.16.4
|
||||
find / -type f -name ginkgo 2>/dev/null
|
||||
which ginkgo
|
||||
/bin/bash -c "${FLAGS}"
|
||||
set +x
|
||||
else
|
||||
echo "..reached DIND check ELSE block, inside run-in-docker.sh"
|
||||
echo "Reached DIND check ELSE block, inside run-in-docker.sh"
|
||||
docker run \
|
||||
${PLATFORM_FLAG} ${PLATFORM} \
|
||||
--tty \
|
||||
--rm \
|
||||
${DOCKER_OPTS} \
|
||||
-e DEBUG=${DEBUG} \
|
||||
-e GOCACHE="/go/src/${PKG}/.cache" \
|
||||
-e GOMODCACHE="/go/src/${PKG}/.modcache" \
|
||||
-e GOMODCACHE="/go/src/${PKG}/.modcache" \
|
||||
-e DOCKER_IN_DOCKER_ENABLED="true" \
|
||||
-v "${HOME}/.kube:${HOME}/.kube" \
|
||||
-v "${KUBE_ROOT}:/go/src/${PKG}" \
|
||||
|
|
@ -95,6 +105,6 @@ else
|
|||
-v "/var/run/docker.sock:/var/run/docker.sock" \
|
||||
-v "${INGRESS_VOLUME}:/etc/ingress-controller/" \
|
||||
-w "/go/src/${PKG}" \
|
||||
-u $(id -u ${USER}):$(id -g ${USER}) \
|
||||
${MAC_DOCKER_FLAGS} \
|
||||
${E2E_IMAGE} /bin/bash -c "${FLAGS}"
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -1,38 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright 2018 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.
|
||||
|
||||
|
||||
if [ -n "$DEBUG" ]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
BUSTED_ARGS="-v --pattern=_test"
|
||||
|
||||
resty \
|
||||
-I ./rootfs/etc/nginx/lua \
|
||||
--shdict "configuration_data 5M" \
|
||||
--shdict "certificate_data 16M" \
|
||||
--shdict "certificate_servers 1M" \
|
||||
--shdict "ocsp_response_cache 1M" \
|
||||
--shdict "balancer_ewma 1M" \
|
||||
--shdict "balancer_ewma_last_touched_at 1M" \
|
||||
--shdict "balancer_ewma_locks 512k" \
|
||||
--shdict "global_throttle_cache 5M" \
|
||||
./rootfs/etc/nginx/lua/test/run.lua ${BUSTED_ARGS} ./rootfs/etc/nginx/lua/test/ ./rootfs/etc/nginx/lua/plugins/**/test
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright 2018 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.
|
||||
|
||||
|
||||
if [ -n "$DEBUG" ]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
mkdir -p /tmp/nginx
|
||||
if [ -z "${PKG}" ]; then
|
||||
echo "PKG must be set"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
go test -v \
|
||||
$(go list "${PKG}/..." | grep -v vendor | grep -v '/test/e2e' | grep -v images | grep -v "docs/examples")
|
||||
Loading…
Add table
Add a link
Reference in a new issue