From 23b9a215db6258edc6e1a683865fe376cb56ac96 Mon Sep 17 00:00:00 2001 From: pushpak Date: Fri, 2 Jun 2023 22:35:46 +0530 Subject: [PATCH 1/3] fix(skip debug): skipping debug builds when not a release Signed-off-by: pushpak fix(docker img build): skipping debug builds when not a release --- .github/workflows/ci-all-in-one-build.yml | 1 + scripts/build-all-in-one-image.sh | 20 +++++++++++++------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci-all-in-one-build.yml b/.github/workflows/ci-all-in-one-build.yml index 8244d39d584..1c491ec861c 100644 --- a/.github/workflows/ci-all-in-one-build.yml +++ b/.github/workflows/ci-all-in-one-build.yml @@ -48,3 +48,4 @@ jobs: env: DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} QUAY_TOKEN: ${{ secrets.QUAY_TOKEN }} + SKIP_DEBUG: ${{inputs.SKIP_DEBUG}} diff --git a/scripts/build-all-in-one-image.sh b/scripts/build-all-in-one-image.sh index a14d0567ac0..e6b6238ba25 100755 --- a/scripts/build-all-in-one-image.sh +++ b/scripts/build-all-in-one-image.sh @@ -11,6 +11,8 @@ GOARCH=${GOARCH:-$(go env GOARCH)} expected_version="v16" version=$(node --version) major_version=${version%.*.*} +SKIP_DEBUG=$SKIP_DEBUG + if [ "$major_version" = "$expected_version" ] ; then echo "Node version is as expected: $version" else @@ -46,10 +48,14 @@ run_integration_test localhost:5000/$repo bash scripts/build-upload-a-docker-image.sh -b -c all-in-one -d cmd/all-in-one -p "${platforms}" -t release -make build-all-in-one-debug GOOS=linux GOARCH=$GOARCH -repo=${repo}-debug -#build all-in-one-debug image locally for integration test -bash scripts/build-upload-a-docker-image.sh -l -b -c all-in-one-debug -d cmd/all-in-one -t debug -run_integration_test localhost:5000/$repo -#build all-in-one-debug image and upload to dockerhub/quay.io -bash scripts/build-upload-a-docker-image.sh -b -c all-in-one-debug -d cmd/all-in-one -t debug +if [ "$SKIP_DEBUG" = true ] ; then + make build-all-in-one-debug GOOS=linux GOARCH=$GOARCH + repo=${repo}-debug + #build all-in-one-debug image locally for integration test + bash scripts/build-upload-a-docker-image.sh -l -b -c all-in-one-debug -d cmd/all-in-one -t debug + run_integration_test localhost:5000/$repo + #build all-in-one-debug image and upload to dockerhub/quay.io + bash scripts/build-upload-a-docker-image.sh -b -c all-in-one-debug -d cmd/all-in-one -t debug +else + echo "Skipping debug commands" +fi From 1985bb86706ff46e2825a42b9dbeca2c0cadf7d6 Mon Sep 17 00:00:00 2001 From: pushpak Date: Sun, 4 Jun 2023 07:19:28 +0530 Subject: [PATCH 2/3] feat(non release build): skip building debug images in non-release build Signed-off-by: pushpak --- .github/workflows/ci-all-in-one-build.yml | 3 +-- scripts/build-all-in-one-image.sh | 6 ++---- scripts/build-upload-docker-images.sh | 5 ++++- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci-all-in-one-build.yml b/.github/workflows/ci-all-in-one-build.yml index 1c491ec861c..4a31e8bf0b2 100644 --- a/.github/workflows/ci-all-in-one-build.yml +++ b/.github/workflows/ci-all-in-one-build.yml @@ -44,8 +44,7 @@ jobs: - uses: docker/setup-qemu-action@e81a89b1732b9c48d79cd809d8d81d79c4647a18 - name: Build, test, and publish all-in-one image - run: bash scripts/build-all-in-one-image.sh + run: bash scripts/build-all-in-one-image.sh pr-only env: DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} QUAY_TOKEN: ${{ secrets.QUAY_TOKEN }} - SKIP_DEBUG: ${{inputs.SKIP_DEBUG}} diff --git a/scripts/build-all-in-one-image.sh b/scripts/build-all-in-one-image.sh index e6b6238ba25..23f69f1c84a 100755 --- a/scripts/build-all-in-one-image.sh +++ b/scripts/build-all-in-one-image.sh @@ -11,7 +11,6 @@ GOARCH=${GOARCH:-$(go env GOARCH)} expected_version="v16" version=$(node --version) major_version=${version%.*.*} -SKIP_DEBUG=$SKIP_DEBUG if [ "$major_version" = "$expected_version" ] ; then echo "Node version is as expected: $version" @@ -48,7 +47,8 @@ run_integration_test localhost:5000/$repo bash scripts/build-upload-a-docker-image.sh -b -c all-in-one -d cmd/all-in-one -p "${platforms}" -t release -if [ "$SKIP_DEBUG" = true ] ; then +#do not run debug image build when it is pr-only +if ["$mode" != "pr-only"]; then make build-all-in-one-debug GOOS=linux GOARCH=$GOARCH repo=${repo}-debug #build all-in-one-debug image locally for integration test @@ -56,6 +56,4 @@ if [ "$SKIP_DEBUG" = true ] ; then run_integration_test localhost:5000/$repo #build all-in-one-debug image and upload to dockerhub/quay.io bash scripts/build-upload-a-docker-image.sh -b -c all-in-one-debug -d cmd/all-in-one -t debug -else - echo "Skipping debug commands" fi diff --git a/scripts/build-upload-docker-images.sh b/scripts/build-upload-docker-images.sh index ac73cba3559..e4cefef155e 100755 --- a/scripts/build-upload-docker-images.sh +++ b/scripts/build-upload-docker-images.sh @@ -23,7 +23,10 @@ fi for component in agent collector query ingester remote-storage do bash scripts/build-upload-a-docker-image.sh -b -c "jaeger-${component}" -d "cmd/${component}" -p "${platforms}" -t release - bash scripts/build-upload-a-docker-image.sh -b -c "jaeger-${component}-debug" -d "cmd/${component}" -t debug + if ["$mode" != "pr-only"]; then + #do not run debug image build when it is pr-only + bash scripts/build-upload-a-docker-image.sh -b -c "jaeger-${component}-debug" -d "cmd/${component}" -t debug + fi done bash scripts/build-upload-a-docker-image.sh -b -c jaeger-es-index-cleaner -d cmd/es-index-cleaner -p "${platforms}" -t release From ece620b212bc5be31165acb315f7e0f295acccb2 Mon Sep 17 00:00:00 2001 From: pushpak Date: Sun, 4 Jun 2023 07:41:54 +0530 Subject: [PATCH 3/3] feat(non release build): skip building debug images in non-release build Signed-off-by: pushpak --- scripts/build-all-in-one-image.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build-all-in-one-image.sh b/scripts/build-all-in-one-image.sh index 23f69f1c84a..ee64fe27225 100755 --- a/scripts/build-all-in-one-image.sh +++ b/scripts/build-all-in-one-image.sh @@ -7,7 +7,7 @@ BRANCH=${BRANCH:?'missing BRANCH env var'} # be overrided by passing architecture value to the script: # `GOARCH= ./scripts/build-all-in-one-image.sh`. GOARCH=${GOARCH:-$(go env GOARCH)} - +mode=${1-main} expected_version="v16" version=$(node --version) major_version=${version%.*.*}