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

Github action for testing latest quarkus master with latest graal master #2349

Merged
merged 1 commit into from
Aug 19, 2020

Conversation

zakkak
Copy link
Collaborator

@zakkak zakkak commented Apr 16, 2020

This PR adds a github action for building the latest graal and then using it to build and test the latest quarkus.

The goal of this github action is to assist the graalvm team in detecting changes that break quarkus.

@zakkak
Copy link
Collaborator Author

zakkak commented Apr 16, 2020

This github action will be ultimately set to run nightly. It is currently set to run on push for testing purposes till it gets reviewed.

Comments on how to improve it are welcome :)

@zakkak zakkak marked this pull request as draft April 16, 2020 11:07
@graalvmbot
Copy link
Collaborator

Hello Foivos Zakkak, thanks for contributing a PR to our project!

We use the Oracle Contributor Agreement to make the copyright of contributions clear. We don't have a record of you having signed this yet, based on your email address fzakkak -(at)- redhat -(dot)- com. You can sign it at that link.

If you think you've already signed it, please comment below and we'll check.

@jerboaa
Copy link
Collaborator

jerboaa commented Apr 16, 2020

We use the Oracle Contributor Agreement to make the copyright of contributions clear. We don't have a record of you having signed this yet, based on your email address fzakkak -(at)- redhat -(dot)- com. You can sign it at that link.

If you think you've already signed it, please comment below and we'll check.

The @redhat.com email address was the clue. He should be covered by the Red Hat OCA as he works for Red Hat.

@graalvmbot
Copy link
Collaborator

Foivos Zakkak has signed the Oracle Contributor Agreement (based on email address fzakkak -(at)- redhat -(dot)- com) so can contribute to this repository.

@ansalond
Copy link
Member

Hi @zakkak, thanks for the PR. I'll add a couple of comments.

@zakkak zakkak force-pushed the quarkus-testing-opt branch 3 times, most recently from 0e234cc to 5599011 Compare April 21, 2020 18:54
@zakkak zakkak requested a review from ansalond April 21, 2020 19:40
@zakkak
Copy link
Collaborator Author

zakkak commented Apr 21, 2020

I have also tried building graalvm with
mx --exclude-components=nju,svml,polynative,lg,llp,poly,tflm,mjdksl build
(zakkak@ea254b9) and the result works fine for quarkus. Would you like me to integrate this in this workflow or do you prefer to test with the defaults (i.e. mx build)?

@ansalond
Copy link
Member

Would you like me to integrate this in this workflow or do you prefer to test with the defaults (i.e. mx build)?

I'm fine with running mx build from graal/substratevm. If you prefer to reduce the set of built components, I would specify an inclusion list based on component names rather than an exclusion list based on component short names. These things change often, and the inclusion list should be more stable.

Looking at your list of excluded components, I'd run:

mx --components="Native Image Configure Tool" build

Which includes:

$ mx --components="Native Image Configure Tool" graalvm-show
GraalVM distribution: GRAALVM_8BEC66804A_JAVA8
Version: 20.2.0-dev
Config name: None
Components:
 - Native Image Configure Tool ('nic', /svm)
 - Native Image ('ni', /svm)
 - SubstrateVM ('svm', /svm)
 - Native Image licence files ('nil', /svm)
 - GraalVM compiler ('cmp', /graal)
 - Truffle Macro ('tflm', /truffle)
 - Truffle NFI ('nfi', /nfi)
 - Truffle ('tfl', /truffle)
 - Graal SDK ('sdk', /graalvm)
Launchers:
 - native-image-configure (bash)
 - native-image (bash)
Libraries:
 - libnative-image-agent.so (skipped)
No installable
No standalone

However, this would be closer to what we ship (no native-image-configure and a native image for native-image):

$ mx --components="Native Image" --native-images=native-image build
$ mx --components="Native Image" --native-images=native-image graalvm-show
GraalVM distribution: GRAALVM_3E9B09AF6B_JAVA8
Version: 20.2.0-dev
Config name: None
Components:
 - Native Image ('ni', /svm)
 - SubstrateVM ('svm', /svm)
 - Native Image licence files ('nil', /svm)
 - GraalVM compiler ('cmp', /graal)
 - Truffle Macro ('tflm', /truffle)
 - Truffle NFI ('nfi', /nfi)
 - Truffle ('tfl', /truffle)
 - Graal SDK ('sdk', /graalvm)
Launchers:
 - native-image (native)
Libraries:
 - libnative-image-agent.so (skipped)
No installable
No standalone

@ansalond
Copy link
Member

I'm waiting for the confirmation that we can add GitHub actions to this repository. I'll keep you updated.

@ansalond
Copy link
Member

Good news: we can add GitHub actions to this repository. I'll work on integrating this PR.

Copy link
Member

@ansalond ansalond left a comment

Choose a reason for hiding this comment

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

@zakkak can you please update this action to run nightly and double-check that the test matrix is still up-to-date?

@zakkak zakkak force-pushed the quarkus-testing-opt branch from 2a5a646 to 3826faa Compare August 17, 2020 10:41
@zakkak
Copy link
Collaborator Author

zakkak commented Aug 17, 2020

Hi @ansalond I have updated the matrix, squashed the changes in a single commit and rebased on the latest master, let's see how it goes before merging (you can see it running here )

with:
java-version: 11
- name: Reclaim Disk Space
run: .github/ci-prerequisites.sh
Copy link
Member

Choose a reason for hiding this comment

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

@zakkak, please add .github/ci-prerequisites.sh or remove this step.

Run .github/ci-prerequisites.sh
/home/runner/work/_temp/cfae83e8-7803-4c08-9ef8-59de516c2f55.sh: line 1: .github/ci-prerequisites.sh: No such file or directory
##[error]Process completed with exit code 127.

https://github.com/zakkak/mandrel/runs/993279323?check_suite_focus=true

@zakkak zakkak force-pushed the quarkus-testing-opt branch 4 times, most recently from b8e94a3 to 1ad17f5 Compare August 17, 2020 17:19
@zakkak
Copy link
Collaborator Author

zakkak commented Aug 17, 2020

@ansalond
Copy link
Member

Thanks! I see some failures, should we open dedicated issues?

@zakkak zakkak force-pushed the quarkus-testing-opt branch from 1ad17f5 to 2bfac9c Compare August 17, 2020 20:44
@zakkak
Copy link
Collaborator Author

zakkak commented Aug 17, 2020

Yes, I think the right way to move forward is to open dedicated issues where the graal and the quarkus communities can work together.
Could we also have a quarkus label or similar for these issues to make it easy to track?

@ansalond
Copy link
Member

Perfect! I created the quarkus label, please open the required issues. Let me know when you want to merge this PR. We just need to change the conditions that trigger the action.

@ansalond ansalond added the quarkus quarkus related issue label Aug 18, 2020
@zakkak
Copy link
Collaborator Author

zakkak commented Aug 18, 2020

Great, thanks @ansalond !

I think the PR is ready to be merged. The conditions that trigger the action are already changed.
As mentioned in #2349 (comment) the action now runs nightly at 3am, and when changes to the workflow are pushed or a PR is created.
See https://github.com/oracle/graal/pull/2349/files#diff-dacc38c76a716b588c8615e697332287R3-R11

@graalvmbot graalvmbot merged commit 19a1421 into oracle:master Aug 19, 2020
@zakkak zakkak deleted the quarkus-testing-opt branch August 19, 2020 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
oca-signed quarkus quarkus related issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants