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

Mandrel Integration TS to tests images #289

Merged
merged 1 commit into from
Feb 28, 2025
Merged

Conversation

Karm
Copy link
Member

@Karm Karm commented Feb 12, 2025

fixes #287
soft dependency on Karm/mandrel-integration-tests#313

@Karm Karm requested review from cescoffier and zakkak February 12, 2025 23:00
@Karm Karm self-assigned this Feb 12, 2025
@Karm Karm force-pushed the push-gates branch 2 times, most recently from 582b958 to 3ce4a0b Compare February 13, 2025 00:47
@Karm Karm marked this pull request as draft February 13, 2025 01:41
@Karm
Copy link
Member Author

Karm commented Feb 13, 2025

[INFO] WARNING: No output specified with docker-container driver. Build result will only remain in the build cache. To push result image into registry use --push or to load image into docker use --load
[INFO] Command: docker run -u 1001:118 -t -v /home/runner/work/quarkus-images/quarkus-images/mandrel-integration-tests/apps/imageio:/work:z my-imageio-runner_amzn2 /work/target/imageio -Djava.home=. -Djava.awt.headless=true
[INFO] Unable to find image 'my-imageio-runner_amzn2:latest' locally
[INFO] docker: Error response from daemon: pull access denied for my-imageio-runner_amzn2, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.

Still narrowing down some docker mayhem... there ain't no --load for podman...

@Karm
Copy link
Member Author

Karm commented Feb 14, 2025

I carry on in my fork so as not to add even more noise here: Karm#3

Still don't know why it works with podman and fails here inside GHA runner with buildx enabled docker.

Copy link
Member

@cescoffier cescoffier left a comment

Choose a reason for hiding this comment

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

I'm wondering if we could replace some of the github workflow script into the "Test.java" script.

@Karm
Copy link
Member Author

Karm commented Feb 17, 2025

Oh:


Run PR_NUMBER=$(jq --raw-output .pull_request.number "$GITHUB_EVENT_PATH")
{
  "message": "Resource not accessible by integration",
  "documentation_url": "https://docs.github.com/rest/issues/comments#create-an-issue-comment",
  "status": "403"
}

It was supposed to create this:
Karm#3 (comment)

I think I recall reading somewhere here about posting like this from forks being impossible problematic. Gonna take another look.

EDIT: O.K., it's the permissions, I need pull_request_target to run the action with the main and not with the code from a random fork or to use a bot with access token...

@Karm
Copy link
Member Author

Karm commented Feb 18, 2025

I'm wondering if we could replace some of the github workflow script into the "Test.java" script.

Definitely. I am no fan of intertwined many segments of bash while we already have the jbang script there... This is a sketch of what it could be. So far I find the most cumbersome that the test runs in the same loop as builds. Perhaps they should be separate pipelines, but then I hit problem with sharing those built images context.

@quarkusio quarkusio deleted a comment from KarmBot Feb 19, 2025
@Karm Karm force-pushed the push-gates branch 4 times, most recently from 1e42ddc to 24ee126 Compare February 25, 2025 20:32
@Karm
Copy link
Member Author

Karm commented Feb 27, 2025

Aggregated Summary for builder images

═╡ SKIPPED: Testing base images
═╡ SKIPPED: Testing graalvm ce builder images (latest)
═╡ SKIPPED: Testing graalvm ce builder images 22.x
┌── Testing mandrel builder images (22.x)
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:22.3.5.0-Final-java17 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:22.3.5.0-Final-java17
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:22.3.5.0-Final-java17 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:22.3.5.0-Final-java17
└── Done with errors: mandrel builder images (22.x)
┌── Testing mandrel builder images (latest)
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.1.6.0-Final-java21 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.1.6.0-Final-java21
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.0.2.0-Final-java22 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.0.2.0-Final-java22
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.1.2.0-Final-java23 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.1.2.0-Final-java23
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:23.1.6.0-Final-java21 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:23.1.6.0-Final-java21
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.0.2.0-Final-java22 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.0.2.0-Final-java22
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.1.2.0-Final-java23 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.1.2.0-Final-java23
└── Done with errors: mandrel builder images (latest)
═╡ SKIPPED: Testing s2i binary images
═╡ SKIPPED: Testing s2i native images

@Karm Karm marked this pull request as ready for review February 27, 2025 06:02
@Karm
Copy link
Member Author

Karm commented Feb 27, 2025

Hello @cescoffier,

I consider this bike shed painted enough and ready for review & comments.

I didn't want to reinvent the wheel, I just wanted to use a curl oneliner that posts a comment, no apps, no bots, one minute work. I forgot that secrets ain't accessible from PR workflows triggered from forks. So I whipped up a dummy token used by my own "service" that just posts comments. Then I realized vars ain't exposed either...so I ended up writing a bot just like everybody else anyway. You can delete the NOT_GITHUB_TOKEN and I am sorry I bothered you with it.

My Mechanical Turk, https://github.com/KarmBot, doesn't have access to quarkusio/quarkus-images, so for the sake of demonstration, the service uses a PAT generated by user Karm. We can use some Quarkus bot account PAT instead...

It lives here: https://comment.canitrunquarkus.org/ and it scans quarkusio/quarkus-images and some of my Karm/* repos too every minute and if it finds open pull requests with a workflow called "Build" that is completed, either 'successful' or 'failed' and if it finds uploaded artifact called comment-data-<PR_NUMBER>, it downloads it and uses it to post a comment just like this one it did some hours ago: #289 (comment)

The PAT it uses is limited to read_write on comments.

The server where it runs is my own private system where Foivos and one other person from Red Hat has access. The native image process runs under a limited dedicated user and it is controlled by systemd.

I'll manually trigger a re-run of the workflow now...

@Karm
Copy link
Member Author

Karm commented Feb 27, 2025

Aggregated Summary for builder images

═╡ SKIPPED: Testing base images
═╡ SKIPPED: Testing graalvm ce builder images (latest)
═╡ SKIPPED: Testing graalvm ce builder images 22.x
┌── Testing mandrel builder images (22.x)
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:22.3.5.0-Final-java17 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:22.3.5.0-Final-java17
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:22.3.5.0-Final-java17 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:22.3.5.0-Final-java17
└── Done with errors: mandrel builder images (22.x)
┌── Testing mandrel builder images (23.0.x)
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.0.6.0-Final-java17 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.0.6.0-Final-java17
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:23.0.6.0-Final-java17 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:23.0.6.0-Final-java17
└── Done with errors: mandrel builder images (23.0.x)
┌── Testing mandrel builder images (latest)
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.1.6.0-Final-java21 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.1.6.0-Final-java21
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.0.2.0-Final-java22 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.0.2.0-Final-java22
│ ├─ Testing builder image quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.1.2.0-Final-java23 begins:
│ │ ✅ ubi8 based runtime image test succeeded
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ✅ amzn2 based runtime image test succeeded
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed: quay.io/quarkus/ubi-quarkus-mandrel-builder-image:24.1.2.0-Final-java23
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:23.1.6.0-Final-java21 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:23.1.6.0-Final-java21
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.0.2.0-Final-java22 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.0.2.0-Final-java22
│ ├─ Testing builder image quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.1.2.0-Final-java23 begins:
│ │ ❌ ubi8 based runtime image test failed
│ │ ✅ ubi9 based runtime image test succeeded
│ │ ✅ cnts10 based runtime image test succeeded
│ │ ❌ amzn2 based runtime image test failed
│ │ ✅ amzn2023 based runtime image test succeeded
│ │ ✅ ubnt2204 based runtime image test succeeded
│ │ ✅ ubnt2404 based runtime image test succeeded
│ └─ Completed with errors: quay.io/quarkus/ubi9-quarkus-mandrel-builder-image:24.1.2.0-Final-java23
└── Done with errors: mandrel builder images (latest)
═╡ SKIPPED: Testing s2i binary images
═╡ SKIPPED: Testing s2i native images

Comment posted by a robot. Responsible human: Karm.

@Karm Karm requested a review from cescoffier February 27, 2025 10:38
@Karm
Copy link
Member Author

Karm commented Feb 28, 2025

@cescoffier In our Mandrel testsuite, I'll filter the ubi8 and amzn2 runtime images for ubi9 builder image and report
⬛ skipped
instead of
❌ failed.

@Karm Karm merged commit da69316 into quarkusio:main Feb 28, 2025
6 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Code a smoke test gate after Build
2 participants