A few days ago I posted an initial version of the necessary configuration 
required to run pre-submit build and tests
for JDK main-line contributions using GitHub Actions [2] and the free tier [3] 
available to everyone working with open
source repositories. I've incorporated the feedback into an updated version 
that I believe is ready to be integrated.

If this is integrated into the `master` branch, future branches created and 
updated in personal forks will build and
run the basic tier 1 tests as described in this configuration, on Linux, 
Windows and macOS (all on x64). It's of course
possible for any contributor to opt out fully or partially of these automatic 
runs in a few different ways.

To opt out completely, a contributor can simply disable GitHub Actions on their 
personal fork, and no further jobs will
be executed. Another option is to add a repository secret [4] with the name 
`JDK_SUBMIT_FILTER` set to any value. If
this is set, only branches prefixed with `submit/` will be subject to automatic 
build and test. This can also be
further refined by adding a repository secret named `JDK_SUBMIT_PLATFORMS` with 
a value such as `Linux x64, Windows
x64` to limit automatic build and test to these two platforms. It will still be 
possible to run the tests on any branch
and/or platform by manually triggering the workflow.

To see what this looks like in practice, an example run can be found here:
https://github.com/rwestberg/jdk/actions/runs/265131985 (note that there is 
currently a failing test on Windows which
is tracked by JDK-8249095, which should probably be resolved before this change 
is integrated).

Best regards,
Robin

[1] https://mail.openjdk.java.net/pipermail/jdk-dev/2020-September/004736.html
[2] https://github.com/features/actions
[3] 
https://docs.github.com/en/actions/getting-started-with-github-actions/about-github-actions#usage-limits
[4] https://docs.github.com/en/actions/reference/encrypted-secrets

-------------

Commit messages:
 - Updates after initial preview
 - Initial version

Changes: https://git.openjdk.java.net/jdk/pull/284/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=284&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8253424
  Stats: 739 lines in 1 file changed: 739 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/284.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/284/head:pull/284

PR: https://git.openjdk.java.net/jdk/pull/284

Reply via email to