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

8253424: Add support for running pre-submit testing using GitHub Actions #3

Closed
wants to merge 6 commits into from

Conversation

gnu-andrew
Copy link
Member

@gnu-andrew gnu-andrew commented Apr 17, 2022

Hi all,

This pull request contains a backport of commit 10029f78 from the openjdk/jdk8u-dev repository, which enables GitHub Actions for the Shenandoah 8u fork.

The commit being backported was authored by Andrew John Hughes on 6 Apr 2022 and was reviewed by Severin Gehwolf.

Thanks!


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed (1 review required, with at least 1 Committer)

Issues

  • JDK-8253424: Add support for running pre-submit testing using GitHub Actions
  • JDK-8253865: Pre-submit testing using GitHub Actions does not detect failures reliably
  • JDK-8254054: Pre-submit testing using GitHub Actions should not use the deprecated set-env command
  • JDK-8254173: Add Zero, Minimal hotspot targets to submit workflow
  • JDK-8254175: Build no-pch configuration in debug mode for submit checks
  • JDK-8254282: Add Linux x86_32 builds to submit workflow
  • JDK-8255373: Submit workflow artifact name is always "test-results_.zip"
  • JDK-8255895: Submit workflow artifacts miss hs_errs/replays due to ZIP include mismatch
  • JDK-8256127: Add cross-compiled foreign architectures builds to submit workflow
  • JDK-8256277: Github Action build on macOS should define OS and Xcode versions
  • JDK-8256354: Github Action build on Windows should define OS and MSVC versions
  • JDK-8256414: add optimized build to submit workflow
  • JDK-8256393: Github Actions build on Linux should define OS and GCC versions
  • JDK-8256747: GitHub Actions: decouple the hotspot build-only jobs from Linux x64 testing
  • JDK-8257056: Submit workflow should apt-get update to avoid package installation errors
  • JDK-8259924: GitHub actions fail on Linux x86_32 with "Could not configure libc6:i386"
  • JDK-8260460: GitHub actions still fail on Linux x86_32 with "Could not configure libc6:i386"
  • JDK-8263667: Avoid running GitHub actions on branches named pr/*
  • JDK-8255305: Add Linux x86_32 tier1 to submit workflow
  • JDK-8255352: Archive important test outputs in submit workflow
  • JDK-8282225: GHA: Allow one concurrent run per PR only
  • JDK-8241768: git needs .gitattributes
  • JDK-8284772: 8u GHA: Use GCC Major Version Dependencies Only

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/shenandoah-jdk8u pull/3/head:pull/3
$ git checkout pull/3

Update a local copy of the PR:
$ git checkout pull/3
$ git pull https://git.openjdk.org/shenandoah-jdk8u pull/3/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 3

View PR using the GUI difftool:
$ git pr show -t 3

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/shenandoah-jdk8u/pull/3.diff

@gnu-andrew gnu-andrew marked this pull request as draft April 17, 2022 15:13
@bridgekeeper
Copy link

bridgekeeper bot commented Apr 17, 2022

👋 Welcome back andrew! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk openjdk bot changed the title Backport 10029f784ef7be458a7b6ff3cc21649ff0abb6f3 8253424: Add support for running pre-submit testing using GitHub Actions Apr 25, 2022
@openjdk
Copy link

openjdk bot commented Apr 25, 2022

This backport pull request has now been updated with issues from the original commit.

@openjdk openjdk bot added the backport label Apr 25, 2022
@erikj79
Copy link
Member

erikj79 commented Apr 25, 2022

The .jcheck/conf file is still broken in this repo. Please run git jcheck in locally in the repo to see the exception.

@gnu-andrew
Copy link
Member Author

The .jcheck/conf file is still broken in this repo. Please run git jcheck in locally in the repo to see the exception.

I have. I've fixed it locally and in this PR, but jcheck only picks it up when it's applied to the master branch. I guess I'll have to do another direct push with it. I'm waiting on ops to add shenandoah8u332 to the list of JBS versions.

@gnu-andrew
Copy link
Member Author

/issue 8241768
/issue 8284772

@gnu-andrew
Copy link
Member Author

git jcheck is now passing locally. Will it re-run on this PR?

@gnu-andrew gnu-andrew marked this pull request as ready for review May 4, 2022 02:45
@openjdk openjdk bot added the rfr Pull request is ready for review label May 4, 2022
@openjdk
Copy link

openjdk bot commented May 4, 2022

@gnu-andrew
Adding additional issue to issue list: 8241768: git needs .gitattributes.

@mlbridge
Copy link

mlbridge bot commented May 4, 2022

Webrevs

@openjdk
Copy link

openjdk bot commented May 4, 2022

@gnu-andrew
Adding additional issue to issue list: 8284772: 8u GHA: Use GCC Major Version Dependencies Only.

@gnu-andrew
Copy link
Member Author

gnu-andrew commented Jul 26, 2022

@rkennke @shipilev could one of you review this please? It's a pretty straight-forward backport of the 8u changes to setup GitHub Actions so we can run build tests on merges of 8u332 & 8u342. Thanks.

Copy link
Member

@shipilev shipilev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, I don't see it running cleanly, so there seems to be no point in pushing it just yet. Was that intermittent? Can we run the GHA again for this PR?

There is also .github/workflows/freetype.vcxproj file in this PR, which seems superfluous.

@gnu-andrew
Copy link
Member Author

Well, I don't see it running cleanly, so there seems to be no point in pushing it just yet. Was that intermittent? Can we run the GHA again for this PR?

Thanks for looking.

The Windows failure seems to be an intermittent failure in downloading Visual Studio and indeed it failed only for release and not debug. It passed on an earlier run: https://github.com/gnu-andrew/shenandoah-jdk8u/actions/runs/2267320655 and the only recent changes have been to the .jcheck configuration.

The MacOS failure is a genuine failure in the Shenandoah 8u code on MacOS. I guess it's never been built there before. I think fixing that is either something to be done in a separate fix (not this backport) or we can decide to just exclude MacOS on Shenandoah 8u.

Failure is:

/Users/runner/work/shenandoah-jdk8u/shenandoah-jdk8u/jdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahControlThread.cpp:357:25: error: no matching function for call to 'load_acquire'
  size_t new_soft_max = OrderAccess::load_acquire(&ShenandoahSoftMaxHeapSize);

There is also .github/workflows/freetype.vcxproj file in this PR, which seems superfluous.

This is used to build FreeType on Windows. It's not part of the JDK tree for 8u (something I may look at changing). Everything here is the same as in jdk8u, where all builds pass. My intention with this change was to bring the GHA changes down early so we could test the 8u332 Shenandoah merge, but these same changes will also come in when we merge in 8u342. Of course, when I opened this originally, there was no 8u342 :)

@openjdk
Copy link

openjdk bot commented Aug 2, 2022

@gnu-andrew This change now passes all automated pre-integration checks.

After integration, the commit message for the final commit will be:

8253424: Add support for running pre-submit testing using GitHub Actions
8253865: Pre-submit testing using GitHub Actions does not detect failures reliably
8254054: Pre-submit testing using GitHub Actions should not use the deprecated set-env command
8254173: Add Zero, Minimal hotspot targets to submit workflow
8254175: Build no-pch configuration in debug mode for submit checks
8254282: Add Linux x86_32 builds to submit workflow
8255373: Submit workflow artifact name is always "test-results_.zip"
8255895: Submit workflow artifacts miss hs_errs/replays due to ZIP include mismatch
8256127: Add cross-compiled foreign architectures builds to submit workflow
8256277: Github Action build on macOS should define OS and Xcode versions
8256354: Github Action build on Windows should define OS and MSVC versions
8256414: add optimized build to submit workflow
8256393: Github Actions build on Linux should define OS and GCC versions
8256747: GitHub Actions: decouple the hotspot build-only jobs from Linux x64 testing
8257056: Submit workflow should apt-get update to avoid package installation errors
8259924: GitHub actions fail on Linux x86_32 with "Could not configure libc6:i386"
8260460: GitHub actions still fail on Linux x86_32 with "Could not configure libc6:i386"
8263667: Avoid running GitHub actions on branches named pr/*
8255305: Add Linux x86_32 tier1 to submit workflow
8255352: Archive important test outputs in submit workflow
8282225: GHA: Allow one concurrent run per PR only
8241768: git needs .gitattributes
8284772: 8u GHA: Use GCC Major Version Dependencies Only

Reviewed-by: shade

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been no new commits pushed to the master branch. If another commit should be pushed before you perform the /integrate command, your PR will be automatically rebased. If you prefer to avoid any potential automatic rebasing, please check the documentation for the /integrate command for further details.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

@openjdk openjdk bot added the ready Pull request is ready to be integrated label Aug 2, 2022
@gnu-andrew
Copy link
Member Author

/integrate

@openjdk
Copy link

openjdk bot commented Aug 3, 2022

Going to push as commit 6305c6f.

@openjdk openjdk bot added the integrated Pull request has been integrated label Aug 3, 2022
@openjdk openjdk bot closed this Aug 3, 2022
@openjdk openjdk bot removed ready Pull request is ready to be integrated rfr Pull request is ready for review labels Aug 3, 2022
@openjdk
Copy link

openjdk bot commented Aug 3, 2022

@gnu-andrew Pushed as commit 6305c6f.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport integrated Pull request has been integrated
4 participants