diff options
author | Philip Kuryloski <kuryloskip@vmware.com> | 2021-11-16 11:47:07 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-16 11:47:07 -0800 |
commit | 632a2721d93bf3e7417b2cfba151559799c9f3e9 (patch) | |
tree | 036103724a75ea8cf044ec6921669231803f7255 | |
parent | 68570f94d6d860c4fa9c662ca53310b453e68e4c (diff) | |
parent | 6afe9c146a922183aa7cc68a0559b867dda75b98 (diff) | |
download | rabbitmq-server-git-632a2721d93bf3e7417b2cfba151559799c9f3e9.tar.gz |
Merge pull request #3728 from rabbitmq/mergify/bp/v3.8.x/pr-3727
Use externailzed rbe config in bazel (backport #3722) (backport #3727)
-rw-r--r-- | .bazelrc | 44 | ||||
-rw-r--r-- | .github/workflows/rabbitmq_peer_discovery_aws.yaml | 1 | ||||
-rw-r--r-- | .github/workflows/update-rbe-images.yaml | 60 | ||||
-rw-r--r-- | BUILD.bazel | 28 | ||||
-rw-r--r-- | WORKSPACE.bazel | 17 | ||||
-rw-r--r-- | deps/rabbitmq_federation/BUILD.bazel | 1 | ||||
-rw-r--r-- | deps/rabbitmq_federation/test/exchange_SUITE.erl | 2 | ||||
-rw-r--r-- | user-template.bazelrc | 4 |
8 files changed, 107 insertions, 50 deletions
@@ -14,38 +14,42 @@ build:rbe --config=buildbuddy build:rbe --remote_executor=grpcs://remote.buildbuddy.io -build:rbe --crosstool_top=@buildbuddy_toolchain//:toolchain -build:rbe --extra_toolchains=@buildbuddy_toolchain//:cc_toolchain -build:rbe --javabase=@buildbuddy_toolchain//:javabase_jdk8 -build:rbe --host_javabase=@buildbuddy_toolchain//:javabase_jdk8 -build:rbe --java_toolchain=@buildbuddy_toolchain//:toolchain_jdk8 -build:rbe --host_java_toolchain=@buildbuddy_toolchain//:toolchain_jdk8 +build:rbe --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 +build:rbe --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 +build:rbe --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 build:rbe --@bazel-erlang//:erlang_home=/usr/lib/erlang build:rbe --//:elixir_home=/usr/local build:rbe --spawn_strategy=remote build:rbe --test_strategy="" -build:rbe --jobs=50 +build:rbe --jobs=100 build:rbe-23 --config=rbe -build:rbe-23 --host_platform=//:erlang_23_platform -build:rbe-23 --platforms=//:erlang_23_platform -build:rbe-23 --extra_execution_platforms=//:erlang_23_platform +build:rbe-23 --host_javabase=@rbe_23//java:jdk +build:rbe-23 --javabase=@rbe_23//java:jdk +build:rbe-23 --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 +build:rbe-23 --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 +build:rbe-23 --crosstool_top=@rbe_23//cc:toolchain +build:rbe-23 --extra_toolchains=@rbe_23//config:cc-toolchain + +build:rbe-23 --host_platform=@rbe_23//config:platform +build:rbe-23 --platforms=@rbe_23//config:platform +build:rbe-23 --extra_execution_platforms=@rbe_23//config:platform + build:rbe-23 --@bazel-erlang//:erlang_version=23 build:rbe-24 --config=rbe -build:rbe-24 --host_platform=//:erlang_24_platform -build:rbe-24 --platforms=//:erlang_24_platform -build:rbe-24 --extra_execution_platforms=//:erlang_24_platform -build:rbe-24 --@bazel-erlang//:erlang_version=24 +build:rbe-24 --host_javabase=@rbe_24//java:jdk +build:rbe-24 --javabase=@rbe_24//java:jdk +build:rbe-24 --crosstool_top=@rbe_24//cc:toolchain +build:rbe-24 --extra_toolchains=@rbe_24//config:cc-toolchain -build:rbe-git --config=rbe -build:rbe-git --host_platform=//:erlang_git_platform -build:rbe-git --platforms=//:erlang_git_platform -build:rbe-git --extra_execution_platforms=//:erlang_git_platform -build:rbe-git --@bazel-erlang//:erlang_home=/usr/local/lib/erlang -build:rbe-git --@bazel-erlang//:erlang_version=25 +build:rbe-24 --host_platform=@rbe_24//config:platform +build:rbe-24 --platforms=@rbe_24//config:platform +build:rbe-24 --extra_execution_platforms=@rbe_24//config:platform + +build:rbe-24 --@bazel-erlang//:erlang_version=24 # Try importing a user specific .bazelrc # You can create your own by copying and editing the template-user.bazelrc template: diff --git a/.github/workflows/rabbitmq_peer_discovery_aws.yaml b/.github/workflows/rabbitmq_peer_discovery_aws.yaml index a2fa56e481..ebb4b929c2 100644 --- a/.github/workflows/rabbitmq_peer_discovery_aws.yaml +++ b/.github/workflows/rabbitmq_peer_discovery_aws.yaml @@ -15,6 +15,7 @@ jobs: include: - image_tag_suffix: otp-max erlang_version: "24" + rbe_default_branch: linux-erlang-24.1 timeout-minutes: 45 steps: - name: CHECKOUT REPOSITORY diff --git a/.github/workflows/update-rbe-images.yaml b/.github/workflows/update-rbe-images.yaml new file mode 100644 index 0000000000..c2174fedbd --- /dev/null +++ b/.github/workflows/update-rbe-images.yaml @@ -0,0 +1,60 @@ +name: Update Bazel RBE Images +on: + schedule: + - cron: '0 3 * * *' + workflow_dispatch: +jobs: + update-rbe-images: + name: Update Bazel RBE Images + runs-on: ubuntu-latest + strategy: + max-parallel: 1 + matrix: + erlang_version: + - "23.3" + - "24.1" + include: + - erlang_version: "23.3" + short_version: "23" + - erlang_version: "24.1" + short_version: "24" + timeout-minutes: 10 + steps: + - name: CHECKOUT REPOSITORY + uses: actions/checkout@v2.4.0 + with: + path: rabbitmq-server + - name: CHECKOUT rbe-erlang-platform REPOSITORY + uses: actions/checkout@v2.4.0 + with: + path: rbe-erlang-platform + repository: rabbitmq/rbe-erlang-platform + branch: linux-erlang-${{ matrix.erlang_version }} + - name: DETERMINE LATEST COMMIT + id: find-commit + working-directory: rbe-erlang-platform + run: | + echo "::set-output name=SHA::$(git rev-parse HEAD)" + - name: UPDATE rbe-erlang-platform COMMIT + working-directory: rabbitmq-server + run: | + sudo npm install --global --silent @bazel/buildozer + echo "$(cat WORKSPACE.bazel | npx buildozer 'set commit "${{ steps.find-commit.outputs.SHA }}"' -:rbe_${{ matrix.short_version }})" > WORKSPACE.bazel + git diff + - name: CREATE PULL REQUEST + uses: peter-evans/create-pull-request@v3 + with: + token: ${{ secrets.REPO_SCOPED_TOKEN }} + committer: GitHub <noreply@github.com> + author: GitHub <noreply@github.com> + title: Adopt latest rabbitmq-server-buildenv:linux-erlang-${{ matrix.erlang_version }} for RBE + path: rabbitmq-server + commit-message: | + Use latest rbe-erlang-platform/linux-erlang-${{ matrix.erlang_version }} + + for remote build execution (RBE) with BuildBuddy + labels: | + backport-v3.9.x + backport-v3.8.x + branch: bump-rbe-${{ matrix.short_version }} + delete-branch: true diff --git a/BUILD.bazel b/BUILD.bazel index bc78732ec1..4c67f0db74 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -18,34 +18,6 @@ elixir_home( ) platform( - name = "erlang_23_platform", - constraint_values = [ - "@platforms//os:linux", - "@platforms//cpu:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - exec_properties = { - "OSFamily": "Linux", - # linux-erlang-23.3 - "container-image": "docker://pivotalrabbitmq/rabbitmq-server-buildenv@sha256:5de95518e8d5f3724839ad46e450b80d89cb0e7e546872a63b7ce4fd482a696e", - }, -) - -platform( - name = "erlang_24_platform", - constraint_values = [ - "@platforms//os:linux", - "@platforms//cpu:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - exec_properties = { - "OSFamily": "Linux", - # linux-erlang-24.0 - "container-image": "docker://pivotalrabbitmq/rabbitmq-server-buildenv@sha256:6d9871a3002bd61a09918f789cd5d9fc744a1d01182f010a7eeba66bce9689d2", - }, -) - -platform( name = "erlang_git_platform", constraint_values = [ "@platforms//os:linux", diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel index eb40973ec5..49b3e587f6 100644 --- a/WORKSPACE.bazel +++ b/WORKSPACE.bazel @@ -14,7 +14,22 @@ buildbuddy_deps() load("@io_buildbuddy_buildbuddy_toolchain//:rules.bzl", "buildbuddy") -buildbuddy(name = "buildbuddy_toolchain") +buildbuddy( + name = "buildbuddy_toolchain", + llvm = True, +) + +git_repository( + name = "rbe_23", + commit = "13b3045476b02aaaa2c91030fdaff91e7ab9bced", + remote = "https://github.com/rabbitmq/rbe-erlang-platform.git", +) + +git_repository( + name = "rbe_24", + commit = "41a52ed360537f6794f6e759dd7eec7bbf65445c", + remote = "https://github.com/rabbitmq/rbe-erlang-platform.git", +) http_archive( name = "rules_pkg", diff --git a/deps/rabbitmq_federation/BUILD.bazel b/deps/rabbitmq_federation/BUILD.bazel index f0cf06b0fa..532fc272f9 100644 --- a/deps/rabbitmq_federation/BUILD.bazel +++ b/deps/rabbitmq_federation/BUILD.bazel @@ -79,6 +79,7 @@ suites = [ rabbitmq_integration_suite( PACKAGE, name = "exchange_SUITE", + size = "large", additional_beam = [ ":rabbit_federation_test_util", ], diff --git a/deps/rabbitmq_federation/test/exchange_SUITE.erl b/deps/rabbitmq_federation/test/exchange_SUITE.erl index 302a70ad53..3921e22da9 100644 --- a/deps/rabbitmq_federation/test/exchange_SUITE.erl +++ b/deps/rabbitmq_federation/test/exchange_SUITE.erl @@ -94,7 +94,7 @@ groups() -> ]. suite() -> - [{timetrap, {minutes, 5}}]. + [{timetrap, {minutes, 3}}]. %% ------------------------------------------------------------------- %% Testsuite setup/teardown. diff --git a/user-template.bazelrc b/user-template.bazelrc index 15c514c2a2..f92ee3238a 100644 --- a/user-template.bazelrc +++ b/user-template.bazelrc @@ -11,3 +11,7 @@ build --spawn_strategy=local build --flaky_test_attempts=1 build:buildbuddy --remote_header=x-buildbuddy-api-key=YOUR_API_KEY + +# cross compile for linux (if on macOS) with rbe +build:rbe --host_cpu=k8 +build:rbe --cpu=k8 |