The Wayback Machine - https://web.archive.org/web/20210911061722/https://github.com/rabbitmq/rabbitmq-server/pull/3200
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mixed version testing in bazel #3200

Merged
merged 12 commits into from Jul 19, 2021
Merged

Mixed version testing in bazel #3200

merged 12 commits into from Jul 19, 2021

Conversation

@pjk25
Copy link
Contributor

@pjk25 pjk25 commented Jul 19, 2021

Proposed Changes

Adds the mechanisms and a new github actions workflow to perform mixed version testing with bazel. Unlike the gnu make mechanism, this fetches a prior release of rabbit rather than building the secondary from source.

Types of Changes

What types of changes does your code introduce to this project?
Put an x in the boxes that apply

  • Bug fix (non-breaking change which fixes issue #NNNN)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause an observable behavior change in existing systems)
  • Documentation improvements (corrections, new content, etc)
  • Cosmetic change (whitespace, formatting, etc)
  • CI

Checklist

Put an x in the boxes that apply. You can also fill these out after creating
the PR. If you're unsure about any of them, don't hesitate to ask on the
mailing list. We're here to help! This is simply a reminder of what we are
going to look for before merging your code.

  • I have read the CONTRIBUTING.md document
  • I have signed the CA (see https://cla.pivotal.io/sign/rabbitmq)
  • All tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)
  • Any dependent changes have been merged and published in related repositories

Further Comments

In its current form, this will block the release pipeline in cases where mixed version tests fail. That has not been historically the case.

@pjk25 pjk25 merged commit d6399bb into master Jul 19, 2021
11 of 13 checks passed
11 of 13 checks passed
@github-actions
build-publish-dev (23.2) build-publish-dev (23.2)
Details
@github-actions
Integration Test (24)
Details
@github-actions
Test (23)
Details
@github-actions
Test (Mixed Version Cluster) (23)
Details
@github-actions
Test (Mixed Version Cluster) (24) Test (Mixed Version Cluster) (24)
Details
@github-actions
build-publish-dev (24.0.3) build-publish-dev (24.0.3)
Details
@github-actions
Test (24)
Details
@github-actions
Test (Exclusive Tests) (23) Test (Exclusive Tests) (23)
Details
@github-actions
Test (Exclusive Tests with Mixed Version Cluster) (23) Test (Exclusive Tests with Mixed Version Cluster) (23)
Details
@github-actions
Test (Exclusive Tests) (24) Test (Exclusive Tests) (24)
Details
@github-actions
Test (Exclusive Tests with Mixed Version Cluster) (24) Test (Exclusive Tests with Mixed Version Cluster) (24)
Details
bazel test //... Disconnected
Details
bazel test //deps/rabbit:feature_flags_SUITE-mixed Success in 1m
Details
@pjk25 pjk25 deleted the mixed-version-testing-bazel branch Jul 19, 2021
pjk25 added a commit that referenced this pull request Jul 19, 2021
Unlike with gnu make, mixed version testing with bazel uses a package-generic-unix for the secondary umbrella rather than the source. This brings the benefit of being able to mixed version test releases built with older erlang versions (even though all nodes will run under the single version given to bazel)

This introduces new test labels, adding a `-mixed` suffix for every existing test. They can be skipped if necessary with `--test_tag_filters` (see the github actions workflow for an example)

As part of the change, it is now possible to run an old release of rabbit with rabbitmq_run rule, such as:

`bazel run @rabbitmq-server-generic-unix-3.8.17//:rabbitmq-run run-broker`

(cherry picked from commit d6399bb)
pjk25 added a commit that referenced this pull request Jul 20, 2021
Unlike with gnu make, mixed version testing with bazel uses a package-generic-unix for the secondary umbrella rather than the source. This brings the benefit of being able to mixed version test releases built with older erlang versions (even though all nodes will run under the single version given to bazel)

This introduces new test labels, adding a `-mixed` suffix for every existing test. They can be skipped if necessary with `--test_tag_filters` (see the github actions workflow for an example)

As part of the change, it is now possible to run an old release of rabbit with rabbitmq_run rule, such as:

`bazel run @rabbitmq-server-generic-unix-3.8.17//:rabbitmq-run run-broker`

(cherry picked from commit d6399bb)
(cherry picked from commit 6f24943)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

1 participant