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

Add a new test group called vendor #618

Closed
sophia-guo opened this issue Sep 27, 2024 · 3 comments
Closed

Add a new test group called vendor #618

sophia-guo opened this issue Sep 27, 2024 · 3 comments

Comments

@sophia-guo
Copy link
Contributor

sophia-guo commented Sep 27, 2024

Currently tests have openjdk, system, functional, external categories (aka test group). Vendor's tests or feature tests can also be specified by JDK_VENDOR and TEST_FLAG combined with playlist tag <feature> or <vendor> .

There are cases where vendors are not able to open-source their tests, or the tests are not suited for inclusion to the main AQAvit set of tests. For those cases, new test targets may be included into a test run via VENDOR_TEST_REPO, VENDOR_TEST_BRANCH, VENDOR_TEST_SHA, VENDOR_TEST_DIR parameters.

However for vendors there are still some special requirements which can't be satisfied by those categories. For example, Temurin reproducible comparing tests on linux platforms requires docker installed. Temurin reproducible comparing tests on mac-x64 requires tests running on mac-aarch64 as Temurin cross compiles for mac-x64. Those are special requirement per vendors.

Current test category doesn't provide the ability to set the platform requirements (or label requirements) based on the vendor or test itself. Maybe we could easily done this by adding one category? So vendor can set special platform requirements.

@smlambert
Copy link
Contributor

I updated the description above to refer to the VENDOR_TEST_REPO, VENDOR_TEST_BRANCH, VENDOR_TEST_SHA, VENDOR_TEST_DIR parameters.

AQAvit documentation refers to [openjdk|system|functional|external] as test 'groups'

Additional benefits of creating a new group called "vendor":

  • easier to distinguish between the required AQAvit targets that need to be run for AQAvit verification versus additional/optional tests that vendors may wish also run as part of their release process
  • separate test jobs for vendor tests to allow for special handling and platform requirements (such as the reproducibility test example described above
  • less concern around accidental sharing of private or proprietary test results if separate jobs (no need to include TAP files from vendor test jobs if intended to be kept private)

@smlambert smlambert changed the title Add vendor category? Add a new test group called vendor Sep 28, 2024
@smlambert
Copy link
Contributor

After some more discussions, perhaps consider adding a new level versus a new group, given each group has varying dependencies, and vendor tests may be scattered across functional, perf, system, etc.

@sophia-guo
Copy link
Contributor Author

Close it for now. Currently sepcial.system works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

2 participants