diff --git a/.circleci/config.yml b/.circleci/config.yml index 2123b35a40..9575a04670 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,13 +1,33 @@ -version: 2 - +version: 2.1 jobs: - + build-multi-arch: + parameters: + platform: + type: string + environment: + _JAVA_OPTIONS: "-Xms512m -Xmx1g" + machine: + image: ubuntu-2004:202107-02 + steps: + - checkout + - run: | + export DOCKER_CLI_EXPERIMENTAL=enabled + docker run --rm --privileged tonistiigi/binfmt:latest --install all + sudo apt update + sudo apt install realpath -y + LOCAL_PATH=$(realpath ${CIRCLE_WORKING_DIRECTORY}) + docker run --rm \ + --platform << parameters.platform >> \ + --name qemu-cross-<< parameters.platform >> \ + --mount type=bind,source=${LOCAL_PATH},target=/github_workspace \ + --workdir /github_workspace \ + << parameters.platform >>/eclipse-temurin:11-jdk-focal uname -a; ./gradlew --no-daemon clean javadoc; ./gradlew --max-workers=1 --no-daemon analyze; ./gradlew --no-daemon -PmaxParallelForks=1 build build: environment: _JAVA_OPTIONS: "-Xms512m -Xmx1g" working_directory: ~/workspace docker: - - image: circleci/openjdk:11-jdk + - image: cimg/openjdk:11.0 steps: - checkout - restore_cache: @@ -34,10 +54,11 @@ jobs: - store_artifacts: path: build/libs + publish: working_directory: ~/workspace docker: - - image: circleci/openjdk:11-jdk + - image: cimg/openjdk:11.0 steps: - checkout - restore_cache: @@ -46,9 +67,16 @@ jobs: command: ./gradlew :artifactoryPublish :cruise-control:artifactoryPublish :cruise-control-core:artifactoryPublish :cruise-control-metrics-reporter:artifactoryPublish workflows: - version: 2 + version: 2.1 build-and-publish: jobs: + - build-multi-arch: + matrix: + parameters: + platform: ["s390x"] + filters: + tags: + only: /.*/ - build: filters: tags: