-
Notifications
You must be signed in to change notification settings - Fork 456
Migrate EVG task coverage to latest Debian, Ubuntu, and RHEL distros #2044
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
Conversation
|
Assigned |
kevinAlbs
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The test matrix organization improvements are much appreciated. LGTM with a tweak to the CSFLE/QE matrices.
| ('rhel8-latest', 'clang', None, ['cyrus']), | ||
| ] | ||
|
|
||
| # Tests for Queryable Encryption (6.0+), which does not support the single server topology, are skipped with 7.0+. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suggest consolidating and revising comment:
# Client-Side Field-Level Encryption requires server 4.2+. Queryable Encryption requires server 7.0+ and is skipped on the single server topology.
TEST_MATRIX = [
# rhel8-latest provides 4.2 through latest.
('rhel8-latest', 'clang', None, 'cyrus', ['auth'], ['server', 'replica'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
]| ] | ||
|
|
||
| # TODO (CDRIVER-3789): test cse with the 'sharded' topology. | ||
| # Tests for Queryable Encryption (6.0+), which does not support the single server topology, are skipped with 7.0+. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suggest consolidating and revising comment:
# Client-Side Field-Level Encryption requires server 4.2+. Queryable Encryption requires server 7.0+ and is skipped on the single server topology.
TEST_MATRIX = [
# rhel8-latest provides 4.2+.
('rhel8-latest', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
# windows-vsCurrent provides 4.2+.
('windows-vsCurrent', 'vs2017x64', None, 'cyrus', ['auth'], ['server', 'replica'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
# ubuntu2004-arm64 provides 4.4+.
('ubuntu2004-arm64', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica'], ['4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
# rhel8-zseries provides 5.0+.
('rhel8-zseries', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica'], ['5.0', '6.0', '7.0', '8.0', 'latest']),
]…ongodb#2044) * CDRIVER-5873 Drop Debian 9 * CDRIVER-5874 Drop Debian 10 * Tidy up distros.py * Extend Ubuntu/Debian task coverage to latest releases * Migrate primary server coverage tasks to latest RHEL distros * Simplify matrices and update CSFLE vs. QE comments
…ongodb#2044) * CDRIVER-5873 Drop Debian 9 * CDRIVER-5874 Drop Debian 10 * Tidy up distros.py * Extend Ubuntu/Debian task coverage to latest releases * Migrate primary server coverage tasks to latest RHEL distros * Simplify matrices and update CSFLE vs. QE comments
* CDRIVER-5891 address implicit bool-to-null conversion in return statements (#1888) * CDRIVER-5891 extend C standard coverage up to C23 (#1890) * CDRIVER-5959 sync change streams unified spec tests with 0aee4aad (#1971) * CDRIVER-5304 set cluster time in test sessions (#2008) * Ignore -Wpre-c11-compat warnings when building public-header-warnings (#2027) * CDRIVER-6042 Migrate Python scripts from Poetry to Astral UV (#2039) * Migrate EVG task coverage to latest Debian, Ubuntu, and RHEL distros (#2044) * CDRIVER-6010 use `ec2.assume_role` for Azure KMS task (#2051) * CDRIVER-5971 Use Amazon ECR to obtain OCI images in EVG (#2058) * update Earthly version from 0.8.3 to 0.8.16 (#2072) --------- Co-authored-by: Kevin Albertson <[email protected]>
…ongodb#2044) * CDRIVER-5873 Drop Debian 9 * CDRIVER-5874 Drop Debian 10 * Tidy up distros.py * Extend Ubuntu/Debian task coverage to latest releases * Migrate primary server coverage tasks to latest RHEL distros * Simplify matrices and update CSFLE vs. QE comments
* CDRIVER-5959 temporarily restrict updateDescription tests to 8.1 or older (#1970) * CDRIVER-5959 sync change streams unified spec tests with 0aee4aad (#1971) * CDRIVER-5304 set cluster time in test sessions (#2008) * CDRIVER-6010 use `ec2.assume_role` for mongohouse task (#2025) * Ignore -Wpre-c11-compat warnings when building public-header-warnings (#2027) * CDRIVER-6042 Migrate Python scripts from Poetry to Astral UV (#2039) * Migrate EVG task coverage to latest Debian, Ubuntu, and RHEL distros (#2044) * CDRIVER-6010 use `ec2.assume_role` for Azure KMS task (#2051) * CDRIVER-5971 Use Amazon ECR to obtain OCI images in EVG (#2058) * CDRIVER-5874 Drop Debian 10 EVG task coverage (#2062) * update Earthly version from 0.8.3 to 0.8.16 (#2072) --------- Co-authored-by: Kevin Albertson <[email protected]>
Resolves CDRIVER-5873 and CDRIVER-5874.
Followup to several PRs such as #1760 and #1839. Applies similar changes to those in mongodb/mongo-cxx-driver#1328.
Summary of changes include:
debian9anddebian10, replacing with equivalents ondebian11anddebian12when not already present.ubuntu2004with equivalents onubuntu2204andubuntu2404when not already present.rhel8-latestdistro (analogous torhel80in CXX-2665 audit and refactor EVG matrices to use supported distros and extended coverage mongo-cxx-driver#1328) per EVG Distro Guidelines.distros.pyby removing unused distros.Support for Debian 9 and Debian 10 were deprecated in #1839. This PR applies the followup removal from the EVG config, as both distros are EOL. For every task matrix where either distro is removed, an equivalent replacement is added for
debian11anddebian12, e.g. a "compile with GCC on Debian 9" task now has a "compile with GCC on Debian 12" equivalent task. This is to preserve basic OS-specific coverage.Most x86_64 server version coverage tasks are moved onto the
rhel8-latestdistro similar to howrhel80is used as the primary x86_64 distro in mongodb/mongo-cxx-driver#1328. This allows for wider coverage of server versions with fewer special-casing. Similar distro selection improvements for other architectures (i.e. for arm64, which is likely to be move toamazon2023-latestdistro rather than anubuntu*-arm64distro) is deferred for now.As a drive-by improvement(?), the following comment is (re)applied with better accuracy:
# Test 7.0+ with a replica set since Queryable Encryption does not support the 'server' topology. Queryable Encryption tests require 7.0+.CSE tasks running with server 7.0+ no longer include the
singletopology. Instead, the single topology is only tested with server versions 4.2 through 6.0. This can be reverted if preferable.