adoptium / adoptium/TKG

Proposal: TKG PR builds

Open
#109 0 comments 2 reactions 0 assignees View on GitHub
canosp_w21 enhancement
Dominant language
Java
Stars
22
Forks
114
Avg merge
4d 2h
Merged PRs (30d)
8

Description

Currently, there are no TKG PR builds. All PRs need to be tested using Grinder by contributors/committers. Had a brief discussion with @renfeiw, we can leverage run-aqa GitHub action and setup workflow for TKG PR builds first. This can be the foundation for the workflow for openj9 PR builds, as TKG PR builds are much simpler (i.e., do not need to build the SDK). The major workflow should be similar to https://github.com/AdoptOpenJDK/openjdk-tests/pull/1977, but most values in the workflow need to be parameterized.

Details:
- users trigger the PR builds (in Github Actions) with comments (similar to auto PR for test exclusion). Triggering syntax should be similar to openj9 PR builds: `action `.

Our plan is to extend this and use it in openj9 PR builds in the future, so we do not want to create another syntax to complicate the user story. Thanks Shelley for the suggestion.

For example:
```
action nightly sanity.functional xlinuxlargeheap jdk11
action releases testA,testB xlinux,osx jdk8,jdk11 hotspot,openj9
```
`` - actions that the users want to do.

1. `compile`: compile only // currently available in openj9

2. `test`: compile and run test(s) // currently available in openj9

3. `nightly`: only run test(s) using SDK from nightly

4. `releases`: only run test(s) using SDK from releases

5. `:`: only run test(s) using SDK from

For TKG PR builds, we only need nightly/releases (case 3 and case 4). We just listed all the cases here.

`` can be omitted and the default value is `openj9`

- script is needed to translate trigger comment to parameters that can be passed used for run-aqa

1. a map is needed to map the platform to `os` (i.e., xlinux => ubuntu-16.04)

2. set version/impl/target/build_list, etc (maybe we should use the same names as the ones exist in TKG?)

3. default build_list can be `functional,system` for now.
Possible enhancement: set build_list value according to `` value. For example, if `` is sanity.openjdk, then the build_list to `openjdk`.

- run-aqa needs to be able to accept TKG_OWNER_BRANCH for TKG PR builds

Open this issue for discussion. FYI @smlambert @pshipton

Contributor guide

Open the contributing guide

Research direction

Start by reading the run-aqa GitHub Action and the workflow pattern in openjdk-tests PR 1977. Define the comment syntax and parameter translation for nightly/releases TKG builds, including platform mapping and TKG_OWNER_BRANCH; done means a PR comment can trigger the intended TKG build and tests without Grinder.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions
Domain
ci-cd, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.