diff --git a/.semaphore/cp_dockerfile_build.yml b/.semaphore/cp_dockerfile_build.yml index 40c15a834e..34875725f5 100644 --- a/.semaphore/cp_dockerfile_build.yml +++ b/.semaphore/cp_dockerfile_build.yml @@ -106,6 +106,7 @@ global_job_config: - export DOCKER_DEV_TAG="dev-$BRANCH_TAG-$BUILD_NUMBER" - export AMD_ARCH=.amd64 - export ARM_ARCH=.arm64 + - export S390X_ARCH=.s390x blocks: - name: Validation dependencies: [] @@ -491,9 +492,214 @@ blocks: - export LATEST_PUSH_TAG=$LATEST_TAG$OS_TAG$ARM_ARCH - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$LATEST_PUSH_TAG - docker push $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - name: Build & Test S390X + dependencies: ["Validation"] + run: + # don't run the tests on non-functional changes... + when: "change_in('/', {exclude: ['/.deployed-versions/', '.github/', 'service.yml', 'README.md'], default_branch: 'master'})" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Build & Test ubi9 + commands: + # Setup QEMU for s390x emulation + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + - docker buildx create --name s390x-builder --use || docker buildx use s390x-builder + - docker buildx inspect --bootstrap + # Make buildx the default builder so 'docker build' uses buildx + - docker buildx install + # Set default platform for all docker commands + - export DOCKER_DEFAULT_PLATFORM=linux/s390x + - export OS_TAG="-ubi9" + - export DOCKER_DEV_FULL_IMAGES=$DOCKER_DEV_REGISTRY${DOCKER_REPOS// /:$DOCKER_DEV_TAG$OS_TAG $DOCKER_DEV_REGISTRY}:$DOCKER_DEV_TAG$OS_TAG + - export S390X_DOCKER_DEV_FULL_IMAGES=${DOCKER_DEV_FULL_IMAGES// /$S390X_ARCH }$S390X_ARCH + - export OS_PACKAGES_URL=$(echo "$PACKAGES_URL" | sed "s/PACKAGE_TYPE/rpm/g") + - export PACKAGING_BUILD_ARGS="$PACKAGING_BUILD_ARGS -DCONFLUENT_PACKAGES_REPO=$OS_PACKAGES_URL" + - ci-tools ci-update-version + - mvn -Dmaven.wagon.http.retryHandler.count=3 --batch-mode -P jenkins,docker clean install dependency:analyze validate -U -Ddocker.registry=$DOCKER_DEV_REGISTRY + -Ddocker.upstream-registry=$DOCKER_UPSTREAM_REGISTRY -DBUILD_NUMBER=$BUILD_NUMBER -DGIT_COMMIT=$GIT_COMMIT -Ddocker.tag=$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + -Ddocker.upstream-tag=$DOCKER_UPSTREAM_TAG$OS_TAG -Darch.type=$S390X_ARCH -Ddocker.os_type=ubi9 -Ddocker.platform=linux/s390x -Ddocker.skip-test=true $PACKAGING_BUILD_ARGS -Ddependency.check.skip=true $MAVEN_EXTRA_ARGS + - . cache-maven store + # Verify images are built for s390x architecture + - for image in $S390X_DOCKER_DEV_FULL_IMAGES; do echo "Checking architecture of $image:" && docker inspect --format='{{.Architecture}}' $image; done + - for image in $S390X_DOCKER_DEV_FULL_IMAGES; do echo "Pushing $image" && docker push $image; done + epilogue: + always: + commands: + - . publish-test-results + - artifact push workflow target/test-results + - artifact push workflow target --destination target-S390X + - name: Deploy S390X confluentinc/cp-base-java + dependencies: ["Build & Test S390X"] + run: + when: "branch = 'master' or branch =~ '^[0-9]+\\.[0-9]+\\.x$' or branch =~ '^[0-9]+\\.[0-9]+\\.[0-9]+(-cp[0-9]+)?(-rc[0-9]+)?$'" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Deploy S390X confluentinc/cp-base-java ubi9 + env_vars: + - name: DOCKER_IMAGE + value: confluentinc/cp-base-java + commands: + - export OS_TAG="-ubi9" + - export PROD_IMAGE_NAME=${DOCKER_PROD_REGISTRY}confluentinc/cp-base-java + - export GIT_COMMIT_TAG=$GIT_COMMIT$OS_TAG$S390X_ARCH + - export BRANCH_BUILD_TAG=$BRANCH_TAG-$BUILD_NUMBER$OS_TAG$S390X_ARCH + - export DEV_IMAGE_FULL=${DOCKER_DEV_REGISTRY}confluentinc/cp-base-java:$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + - docker pull $DEV_IMAGE_FULL + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - docker push $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker push $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - sign-images $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - sign-images $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - export PACKAGE_TAG=$BRANCH_TAG-$PACKAGING_BUILD_NUMBER$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$PACKAGE_TAG + - docker push $PROD_IMAGE_NAME:$PACKAGE_TAG + - sign-images $PROD_IMAGE_NAME:$PACKAGE_TAG + - export LATEST_PUSH_TAG=$LATEST_TAG$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - docker push $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - name: Deploy S390X confluentinc/cp-base-java-micro + dependencies: ["Build & Test S390X"] + run: + when: "branch = 'master' or branch =~ '^[0-9]+\\.[0-9]+\\.x$' or branch =~ '^[0-9]+\\.[0-9]+\\.[0-9]+(-cp[0-9]+)?(-rc[0-9]+)?$'" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Deploy S390X confluentinc/cp-base-java-micro ubi9 + env_vars: + - name: DOCKER_IMAGE + value: confluentinc/cp-base-java-micro + commands: + - export OS_TAG="-ubi9" + - export PROD_IMAGE_NAME=${DOCKER_PROD_REGISTRY}confluentinc/cp-base-java-micro + - export GIT_COMMIT_TAG=$GIT_COMMIT$OS_TAG$S390X_ARCH + - export BRANCH_BUILD_TAG=$BRANCH_TAG-$BUILD_NUMBER$OS_TAG$S390X_ARCH + - export DEV_IMAGE_FULL=${DOCKER_DEV_REGISTRY}confluentinc/cp-base-java-micro:$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + - docker pull $DEV_IMAGE_FULL + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - docker push $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker push $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - sign-images $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - sign-images $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - export PACKAGE_TAG=$BRANCH_TAG-$PACKAGING_BUILD_NUMBER$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$PACKAGE_TAG + - docker push $PROD_IMAGE_NAME:$PACKAGE_TAG + - sign-images $PROD_IMAGE_NAME:$PACKAGE_TAG + - export LATEST_PUSH_TAG=$LATEST_TAG$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - docker push $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - name: Deploy S390X confluentinc/cp-base-new + dependencies: ["Build & Test S390X"] + run: + when: "branch = 'master' or branch =~ '^[0-9]+\\.[0-9]+\\.x$' or branch =~ '^[0-9]+\\.[0-9]+\\.[0-9]+(-cp[0-9]+)?(-rc[0-9]+)?$'" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Deploy S390X confluentinc/cp-base-new ubi9 + env_vars: + - name: DOCKER_IMAGE + value: confluentinc/cp-base-new + commands: + - export OS_TAG="-ubi9" + - export PROD_IMAGE_NAME=${DOCKER_PROD_REGISTRY}confluentinc/cp-base-new + - export GIT_COMMIT_TAG=$GIT_COMMIT$OS_TAG$S390X_ARCH + - export BRANCH_BUILD_TAG=$BRANCH_TAG-$BUILD_NUMBER$OS_TAG$S390X_ARCH + - export DEV_IMAGE_FULL=${DOCKER_DEV_REGISTRY}confluentinc/cp-base-new:$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + - docker pull $DEV_IMAGE_FULL + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - docker push $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker push $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - sign-images $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - sign-images $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - export PACKAGE_TAG=$BRANCH_TAG-$PACKAGING_BUILD_NUMBER$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$PACKAGE_TAG + - docker push $PROD_IMAGE_NAME:$PACKAGE_TAG + - sign-images $PROD_IMAGE_NAME:$PACKAGE_TAG + - export LATEST_PUSH_TAG=$LATEST_TAG$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - docker push $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - name: Deploy S390X confluentinc/cp-base-lite + dependencies: ["Build & Test S390X"] + run: + when: "branch = 'master' or branch =~ '^[0-9]+\\.[0-9]+\\.x$' or branch =~ '^[0-9]+\\.[0-9]+\\.[0-9]+(-cp[0-9]+)?(-rc[0-9]+)?$'" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Deploy S390X confluentinc/cp-base-lite ubi9 + env_vars: + - name: DOCKER_IMAGE + value: confluentinc/cp-base-lite + commands: + - export OS_TAG="-ubi9" + - export PROD_IMAGE_NAME=${DOCKER_PROD_REGISTRY}confluentinc/cp-base-lite + - export GIT_COMMIT_TAG=$GIT_COMMIT$OS_TAG$S390X_ARCH + - export BRANCH_BUILD_TAG=$BRANCH_TAG-$BUILD_NUMBER$OS_TAG$S390X_ARCH + - export DEV_IMAGE_FULL=${DOCKER_DEV_REGISTRY}confluentinc/cp-base-lite:$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + - docker pull $DEV_IMAGE_FULL + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - docker push $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker push $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - sign-images $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - sign-images $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - export PACKAGE_TAG=$BRANCH_TAG-$PACKAGING_BUILD_NUMBER$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$PACKAGE_TAG + - docker push $PROD_IMAGE_NAME:$PACKAGE_TAG + - sign-images $PROD_IMAGE_NAME:$PACKAGE_TAG + - export LATEST_PUSH_TAG=$LATEST_TAG$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - docker push $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - name: Deploy S390X confluentinc/cp-jmxterm + dependencies: ["Build & Test S390X"] + run: + when: "branch = 'master' or branch =~ '^[0-9]+\\.[0-9]+\\.x$' or branch =~ '^[0-9]+\\.[0-9]+\\.[0-9]+(-cp[0-9]+)?(-rc[0-9]+)?$'" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Deploy S390X confluentinc/cp-jmxterm ubi9 + env_vars: + - name: DOCKER_IMAGE + value: confluentinc/cp-jmxterm + commands: + - export OS_TAG="-ubi9" + - export PROD_IMAGE_NAME=${DOCKER_PROD_REGISTRY}confluentinc/cp-jmxterm + - export GIT_COMMIT_TAG=$GIT_COMMIT$OS_TAG$S390X_ARCH + - export BRANCH_BUILD_TAG=$BRANCH_TAG-$BUILD_NUMBER$OS_TAG$S390X_ARCH + - export DEV_IMAGE_FULL=${DOCKER_DEV_REGISTRY}confluentinc/cp-jmxterm:$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + - docker pull $DEV_IMAGE_FULL + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - docker push $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - docker push $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - sign-images $PROD_IMAGE_NAME:$GIT_COMMIT_TAG + - sign-images $PROD_IMAGE_NAME:$BRANCH_BUILD_TAG + - export PACKAGE_TAG=$BRANCH_TAG-$PACKAGING_BUILD_NUMBER$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$PACKAGE_TAG + - docker push $PROD_IMAGE_NAME:$PACKAGE_TAG + - sign-images $PROD_IMAGE_NAME:$PACKAGE_TAG + - export LATEST_PUSH_TAG=$LATEST_TAG$OS_TAG$S390X_ARCH + - docker tag $DEV_IMAGE_FULL $PROD_IMAGE_NAME:$LATEST_PUSH_TAG + - docker push $PROD_IMAGE_NAME:$LATEST_PUSH_TAG - name: Create Manifest and Maven Deploy dependencies: ["Deploy AMD confluentinc/cp-base-java", "Deploy AMD confluentinc/cp-base-java-micro", "Deploy AMD confluentinc/cp-base-new", "Deploy AMD confluentinc/cp-base-lite", "Deploy AMD confluentinc/cp-jmxterm", - "Deploy ARM confluentinc/cp-base-java", "Deploy ARM confluentinc/cp-base-java-micro", "Deploy ARM confluentinc/cp-base-new", "Deploy ARM confluentinc/cp-base-lite", "Deploy ARM confluentinc/cp-jmxterm"] + "Deploy ARM confluentinc/cp-base-java", "Deploy ARM confluentinc/cp-base-java-micro", "Deploy ARM confluentinc/cp-base-new", "Deploy ARM confluentinc/cp-base-lite", "Deploy ARM confluentinc/cp-jmxterm", + "Deploy S390X confluentinc/cp-base-java", "Deploy S390X confluentinc/cp-base-java-micro", "Deploy S390X confluentinc/cp-base-new", "Deploy S390X confluentinc/cp-base-lite", "Deploy S390X confluentinc/cp-jmxterm"] run: when: "branch = 'master' or branch =~ '^[0-9]+\\.[0-9]+\\.x$' or branch =~ '^[0-9]+\\.[0-9]+\\.[0-9]+(-cp[0-9]+)?(-rc[0-9]+)?$'" task: @@ -513,20 +719,20 @@ blocks: do export OS_TAG="-ubi9" export GIT_TAG=$GIT_COMMIT$OS_TAG - docker manifest create $image:$GIT_TAG $image:$GIT_TAG$AMD_ARCH $image:$GIT_TAG$ARM_ARCH + docker manifest create $image:$GIT_TAG $image:$GIT_TAG$AMD_ARCH $image:$GIT_TAG$ARM_ARCH $image:$GIT_TAG$S390X_ARCH docker manifest push $image:$GIT_TAG docker pull $image:$GIT_TAG sign-images $image:$GIT_TAG export BRANCH_BUILD_TAG=$BRANCH_TAG-$BUILD_NUMBER$OS_TAG - docker manifest create $image:$BRANCH_BUILD_TAG $image:$BRANCH_BUILD_TAG$AMD_ARCH $image:$BRANCH_BUILD_TAG$ARM_ARCH + docker manifest create $image:$BRANCH_BUILD_TAG $image:$BRANCH_BUILD_TAG$AMD_ARCH $image:$BRANCH_BUILD_TAG$ARM_ARCH $image:$BRANCH_BUILD_TAG$S390X_ARCH docker manifest push $image:$BRANCH_BUILD_TAG docker pull $image:$BRANCH_BUILD_TAG sign-images $image:$BRANCH_BUILD_TAG export PACKAGE_TAG=$BRANCH_TAG-$PACKAGING_BUILD_NUMBER$OS_TAG - docker manifest create $image:$PACKAGE_TAG $image:$PACKAGE_TAG$AMD_ARCH $image:$PACKAGE_TAG$ARM_ARCH + docker manifest create $image:$PACKAGE_TAG $image:$PACKAGE_TAG$AMD_ARCH $image:$PACKAGE_TAG$ARM_ARCH $image:$PACKAGE_TAG$S390X_ARCH docker manifest push $image:$PACKAGE_TAG export LATEST_MANIFEST_TAG=$LATEST_TAG$OS_TAG - docker manifest create $image:$LATEST_MANIFEST_TAG $image:$LATEST_MANIFEST_TAG$AMD_ARCH $image:$LATEST_MANIFEST_TAG$ARM_ARCH + docker manifest create $image:$LATEST_MANIFEST_TAG $image:$LATEST_MANIFEST_TAG$AMD_ARCH $image:$LATEST_MANIFEST_TAG$ARM_ARCH $image:$LATEST_MANIFEST_TAG$S390X_ARCH docker manifest push $image:$LATEST_MANIFEST_TAG done after_pipeline: @@ -546,4 +752,5 @@ after_pipeline: - checkout - artifact pull workflow target-AMD - artifact pull workflow target-ARM + - artifact pull workflow target-S390X - emit-sonarqube-data --run_only_sonar_scan diff --git a/.semaphore/semaphore.yml b/.semaphore/semaphore.yml index cd1b0cb1c5..d7a9704828 100644 --- a/.semaphore/semaphore.yml +++ b/.semaphore/semaphore.yml @@ -99,6 +99,7 @@ global_job_config: - export DOCKER_DEV_TAG="dev-$BRANCH_TAG-$BUILD_NUMBER" - export AMD_ARCH=.amd64 - export ARM_ARCH=.arm64 + - export S390X_ARCH=.s390x blocks: - name: Validation dependencies: [] @@ -167,6 +168,44 @@ blocks: - . publish-test-results - artifact push workflow target/test-results - artifact push workflow target --destination target-ARM + - name: Build & Test S390X + dependencies: ["Validation"] + run: + when: "pull_request =~ '.*'" + task: + agent: + machine: + type: s1-prod-ubuntu24-04-amd64-1 + jobs: + - name: Build & Test ubi9 + commands: + # Setup QEMU for s390x emulation + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + - docker buildx create --name s390x-builder --use || docker buildx use s390x-builder + - docker buildx inspect --bootstrap + # Make buildx the default builder so 'docker build' uses buildx + - docker buildx install + # Set default platform for all docker commands + - export DOCKER_DEFAULT_PLATFORM=linux/s390x + - export OS_TAG="-ubi9" + - export DOCKER_DEV_FULL_IMAGES=$DOCKER_DEV_REGISTRY${DOCKER_REPOS// /:$DOCKER_DEV_TAG$OS_TAG $DOCKER_DEV_REGISTRY}:$DOCKER_DEV_TAG$OS_TAG + - export S390X_DOCKER_DEV_FULL_IMAGES=${DOCKER_DEV_FULL_IMAGES// /$S390X_ARCH }$S390X_ARCH + - export OS_PACKAGES_URL=$(echo "$PACKAGES_URL" | sed "s/PACKAGE_TYPE/rpm/g") + - export PACKAGING_BUILD_ARGS="$PACKAGING_BUILD_ARGS -DCONFLUENT_PACKAGES_REPO=$OS_PACKAGES_URL" + - ci-tools ci-update-version + - mvn -Dmaven.wagon.http.retryHandler.count=3 --batch-mode -P jenkins,docker clean install dependency:analyze validate -U -Ddocker.registry=$DOCKER_DEV_REGISTRY + -Ddocker.upstream-registry=$DOCKER_UPSTREAM_REGISTRY -DBUILD_NUMBER=$BUILD_NUMBER -DGIT_COMMIT=$GIT_COMMIT -Ddocker.tag=$DOCKER_DEV_TAG$OS_TAG$S390X_ARCH + -Ddocker.upstream-tag=$DOCKER_UPSTREAM_TAG$OS_TAG -Darch.type=$S390X_ARCH -Ddocker.os_type=ubi9 -Ddocker.platform=linux/s390x -Ddocker.skip-test=true $PACKAGING_BUILD_ARGS -Ddependency.check.skip=true $MAVEN_EXTRA_ARGS + - . cache-maven store + # Verify images are built for s390x architecture + - for image in $S390X_DOCKER_DEV_FULL_IMAGES; do echo "Checking architecture of $image:" && docker inspect --format='{{.Architecture}}' $image; done + - for image in $S390X_DOCKER_DEV_FULL_IMAGES; do echo "Pushing $image" && docker push $image; done + epilogue: + always: + commands: + - . publish-test-results + - artifact push workflow target/test-results + - artifact push workflow target --destination target-S390X after_pipeline: task: agent: @@ -184,4 +223,5 @@ after_pipeline: - checkout - artifact pull workflow target-AMD - artifact pull workflow target-ARM + - artifact pull workflow target-S390X - emit-sonarqube-data --run_only_sonar_scan diff --git a/base-java-micro/pom.xml b/base-java-micro/pom.xml index 820970d590..8f1dd43680 100644 --- a/base-java-micro/pom.xml +++ b/base-java-micro/pom.xml @@ -148,17 +148,27 @@ + ${docker.registry}confluentinc/${project.artifactId}:${docker.tag} + ${docker.file} + ${project.basedir} + + + ${docker.platform} + + + ${project.artifactId} + ${project.version} + ${GIT_COMMIT} + ${BUILD_NUMBER} ${app.uid} ${app.gid} ${ubi9-micro.image.version} ${ubi9.image.version} -${ubi9.temurin-21-jdk.version} -${ubi9.procps-ng.version} - - ${docker.skip-security-update-check} - + ${docker.skip-security-update-check} ${golang.image.version} -${ubi9.crypto-policies-scripts.version} -${ubi9.findutils.version} diff --git a/base-java/pom.xml b/base-java/pom.xml index a563cde830..10e25002ac 100644 --- a/base-java/pom.xml +++ b/base-java/pom.xml @@ -144,14 +144,24 @@ + ${docker.registry}confluentinc/${project.artifactId}:${docker.tag} + ${docker.file} + ${project.basedir} + + + ${docker.platform} + + + ${project.artifactId} + ${project.version} + ${GIT_COMMIT} + ${BUILD_NUMBER} ${ubi9-minimal.image.version} -${ubi9-minimal.temurin-21-jdk.version} -${ubi9-minimal.procps-ng.version} - - ${docker.skip-security-update-check} - + ${docker.skip-security-update-check} ${golang.image.version} -${ubi9-minimal.crypto-policies-scripts.version} -${ubi9-minimal.findutils.version} diff --git a/base-lite/pom.xml b/base-lite/pom.xml index 81c8051414..e75dd92efe 100644 --- a/base-lite/pom.xml +++ b/base-lite/pom.xml @@ -99,13 +99,23 @@ + ${docker.registry}confluentinc/${project.artifactId}:${docker.tag} + ${docker.file} + ${project.basedir} + + + ${docker.platform} + + + ${project.artifactId} + ${project.version} + ${GIT_COMMIT} + ${BUILD_NUMBER} ${ubi9-minimal.image.version} -${ubi9-minimal.temurin-21-jdk.version} - - ${docker.skip-security-update-check} - + ${docker.skip-security-update-check} ${golang.image.version} diff --git a/base/pom.xml b/base/pom.xml index 6ce60eeebb..8d1f6b20da 100644 --- a/base/pom.xml +++ b/base/pom.xml @@ -157,8 +157,20 @@ + ${docker.registry}confluentinc/${project.artifactId}:${docker.tag} + ${docker.file} + ${project.basedir} + + + ${docker.platform} + + + ${project.artifactId} + ${project.version} + ${GIT_COMMIT} + ${BUILD_NUMBER} ${ubi9-minimal.image.version} -${ubi9-minimal.openssl.version} -${ubi9-minimal.wget.version} @@ -166,8 +178,7 @@ -${ubi9-minimal.python3.version} -${ubi9-minimal.tar.version} -${ubi9-minimal.procps-ng.version} - -${ubi9-minimal.krb5-workstation.version} - + -${ubi9-minimal.krb5-workstation.version} -${ubi9-minimal.iputils.version} -${ubi9-minimal.hostname.version} -${ubi9-minimal.xz-libs.version} @@ -176,13 +187,9 @@ -${ubi9-minimal.crypto-policies-scripts.version} -${ubi9-minimal.temurin-21-jdk.version} -${ubi9-minimal.python3-pip.version} - ==${python.setuptools.version} - - - ${git-repo.confluent-docker-utils.tag} - - ${docker.skip-security-update-check} - + ==${python.setuptools.version} + ${git-repo.confluent-docker-utils.tag} + ${docker.skip-security-update-check} diff --git a/jmxterm/pom.xml b/jmxterm/pom.xml index d3ef9a36ea..2b815fb3ff 100644 --- a/jmxterm/pom.xml +++ b/jmxterm/pom.xml @@ -47,4 +47,37 @@ + + + + io.fabric8 + docker-maven-plugin + 0.43.4 + + + + ${docker.registry}confluentinc/${project.artifactId}:${docker.tag} + + ${docker.file} + ${project.basedir} + + + ${docker.platform} + + + + ${project.artifactId} + ${project.version} + ${GIT_COMMIT} + ${BUILD_NUMBER} + ${docker.registry} + ${docker.upstream-tag} + + + + + + + + diff --git a/pom.xml b/pom.xml index dc20e8aa6c..ea88c7a04d 100644 --- a/pom.xml +++ b/pom.xml @@ -35,6 +35,8 @@ Dockerfile.${docker.ubi9.os_type} ${io.confluent.common-docker.version}-${docker.ubi9.os_type} 8.3.0-0 + + @@ -137,4 +139,57 @@ `-Ddocker.skip-security-update-check=true` --> false + + + + + + buildx + + + docker.platform + + + + + + + + com.spotify + dockerfile-maven-plugin + + + default + none + + + package + none + + + tag + none + + + + + + io.fabric8 + docker-maven-plugin + 0.43.4 + + + build-image + package + + build + + + + + + + + +