adoptium / adoptium/TKG

support custom jtreg.jar and/or JTREG_HOME

Open
#690 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
22
Forks
114
Avg merge
4d 2h
Merged PRs (30d)
8

Description

Currently, jtregs are used like ` $(TEST_RESROOT)$(D)jtreg$(D)lib$(D)jtreg.jar` or `$(TEST_RESROOT)$(D)jtreg` , where correct jtreg is decideded by the whole aqavit.

Where I absolutely agree, that the jtreg binary must remain strictly in aqavit rule, it would be nice to allow users to set up custom jtregs without hacking (aka sedding the playlists or replacing it silently in TEST_RESROOT.

I was thinking to declare `JTREG_HOME` as` $(TEST_RESROOT)$(D)jtreg` and `JTREG_JAR` as ` $(JTREG_HOME)$(D)lib$(D)jtreg.jar`, however checking, that the JTREG_HOME and/or JTREG_JAR are not passed by user from outside. If so use passed values instead.

PoC PRs are:
https://github.com/adoptium/TKG/pull/688 and eempalr usage https://github.com/adoptium/aqa-tests/pull/6125

In similar implementation user can set custom jar, and remove duplicate usage of `$(TEST_RESROOT)$(D)jtreg$(D)lib...` and friends.

The motivations for custom jtregs are many. As a top one and most recent, I would like to highlight fast/slow debug testing, where you care only about failures which crashed JVM. We implemented it via https://github.com/openjdk/jtreg/pull/235#issuecomment-2713065800 however the effort was recently closed, and will need to start from fresh. Until then, we have to live from fork. And as we would like to continue with using aqavit, we woudld liek to set up custom jtregs without hacking.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the proposed implementation in TKG pull request 688 and the related usage in aqa-tests pull request 6125, then search for the existing TEST_RESROOT-based jtreg.jar and jtreg references. Done means custom JTREG_HOME and/or JTREG_JAR values can be supplied without playlist edits while preserving the current defaults.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.