-
Notifications
You must be signed in to change notification settings - Fork 791
[CI] Workflow to create docker with pre-built E2E tests #19715
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
Conversation
To be used for compatibility testing, i.e. running tests built with the latest released toolchain using trunk SYCL RT.
sparse-checkout: | | ||
devops/ | ||
- uses: actions/checkout@v4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: can we name some of these steps so it looks better in the log?
ghcr.io/${{ github.repository }}/sycl_prebuilt_tests:${{ inputs.ref || github.ref }} | ||
run-e2e: | ||
runs-on: [Linux, pvc] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
name would help here too since its PVC only
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I think I need to provide some explanation here, not sure where it should go.
I'm not that interested in this task for the sake of it. What's happening here instead, is that I'll be using those pre-built E2E tests in trunk pre-commit, so I'm trying to show that they could be run successfully with the "original" toolchain the tests were built with.
With that context, any more detailed suggestions? Is PVC
even the right runner to target here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry maybe i'm too tired but i have absolutely no idea what you mean :)
Can't test the new workflow to full extent because manual trigger needs a workflow at I don't think I will be cherry-picking this to For |
Need to call this script to bypass Trivy: llvm/devops/containers/ubuntu2404_build.Dockerfile Lines 41 to 42 in 824692b
|
Didn't seem to help... Also, why would it be necessary? That was already done as part of the base image... |
Can you give one more try?
Trivy report:
|
https://github.com/intel/llvm/actions/runs/16756327505 is the new workflow task, passed. I think I've addressed all comments. @sarnex , @KornevNikita , can I ask for another (final? 😉) look? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just nits
ghcr.io/${{ github.repository }}/sycl_prebuilt_tests:${{ inputs.ref || github.ref_name }} | ||
run-e2e: | ||
# Ensure those test can actually pass with the toolchain they were built |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Ensure those test can actually pass with the toolchain they were built | |
# Ensure those tests can actually pass with the toolchain they were built |
sycl-ls | ||
- name: Run E2E tests | ||
uses: ./devops/actions/run-tests/e2e | ||
timeout-minutes: 60 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: we're using prebuilt tests so we can probably be more conservative, probably 30 is enough
using: "composite" | ||
steps: | ||
- name: Checkout E2E tests | ||
if: ${{ inputs.testing_mode != 'run-only' || inputs.binaries_artifact }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: can we unify how we are checking inputs.binaries_artifact
? here we just rely on non-empty being true but below we explicitly check it like inputs.binaries_artifact != ''
, i have no opinion which one we do but would be a bit cleaner to always do the same thing
To be used for compatibility testing, i.e. running tests built with the latest released toolchain using trunk SYCL RT.