-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Emscripten CI does not work on ubuntu-latest #11218
Comments
This is the log:
|
My 2nd re-run had failed, haven't done a 3rd time. |
I think your account is (once again) one of the firsts to use Ubuntu 24.04 as ubuntu-latest instead of Ubuntu 22.04. Can you try pinning it to 22.04 until upstream resolves the issue? --- a/.github/workflows/create-test-plan.py
+++ b/.github/workflows/create-test-plan.py
@@ -125,7 +125,7 @@ JOB_SPECS = {
"android-cmake-lean": JobSpec(name="Android (CMake, lean)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Android, artifact="SDL-lean-android-arm64", android_abi="arm64-v8a", android_arch="aarch64", android_platform=23, lean=True, ),
"android-mk": JobSpec(name="Android (Android.mk)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Android, artifact=None, no_cmake=True, android_mk=True, ),
"android-gradle": JobSpec(name="Android (Gradle)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Android, artifact=None, no_cmake=True, android_gradle=True, ),
- "emscripten": JobSpec(name="Emscripten", os=JobOs.UbuntuLatest, platform=SdlPlatform.Emscripten, artifact="SDL-emscripten", ),
+ "emscripten": JobSpec(name="Emscripten", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Emscripten, artifact="SDL-emscripten", ),
"haiku": JobSpec(name="Haiku", os=JobOs.UbuntuLatest, platform=SdlPlatform.Haiku, artifact="SDL-haiku-x64", container="ghcr.io/haiku/cross-compiler:x86_64-r1beta5", ),
"loongarch64": JobSpec(name="LoongArch64", os=JobOs.UbuntuLatest, platform=SdlPlatform.LoongArch64, artifact="SDL-loongarch64", ),
"n3ds": JobSpec(name="Nintendo 3DS", os=JobOs.UbuntuLatest, platform=SdlPlatform.N3ds, artifact="SDL-n3ds", container="devkitpro/devkitarm:latest", ), |
Created a test-11218 branch in my fork with your change. |
It did not run on ubuntu 22.04: https://github.com/sezero/SDL/actions/runs/11350926022/job/31570527906#step:1:4 |
Oh, it's my screw-up: applied the patch but forgot committing it. Waiting for the actual result now. |
Yes, seems like emscripten builder is green now: https://github.com/sezero/SDL/actions/runs/11351284397/job/31571651376 |
Should we do anything about this here in upstream? |
I don't know where the issue is. |
Not something I can do. Leave this ticket open? |
Yes, perhaps rename the title to "Emscripten CI does not work on ubuntu-latest" |
OK, title renamed as suggested. |
That ubuntu being a debian derivative, maybe @smcv has an idea about python packaging things? |
I think this is an issue with Ubuntu's python3-selenium because of these bug reports: https://bugs.launchpad.net/ubuntu/+source/python-selenium/+bug/2032687 |
Curiously though, the emscripten builder hasn't failed today my fork of SDL after several syncs with mainstream... |
It seems that the python3-selenium in recent Debian and Ubuntu needs an external component (selenium-manager), which is not at all straightforward to package in a way that meets Debian's standards for preventing supply chain attacks, reproducibility, ensuring the presence of complete corresponding source and so on. See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1052460. If this CI is being run in a throwaway container with no privileged access to SDL stuff (no ability to push commits, tag releases, etc.), then the concern about supply chain attacks etc. isn't relevant, and it would be OK to get Selenium or selenium-manager some other way. |
Thanks for the explanation! @sezero ci on my fork (still on 22.04) |
https://github.com/sezero/SDL/actions/runs/11373028367/job/31638801915 Seems to be running or 22.04, no failures so far:
|
How should I make it to run under 24.04 to test ? |
--- a/.github/workflows/create-test-plan.py
+++ b/.github/workflows/create-test-plan.py
@@ -125,7 +125,7 @@ JOB_SPECS = {
"android-cmake-lean": JobSpec(name="Android (CMake, lean)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Android, artifact="SDL-lean-android-arm64", android_abi="arm64-v8a", android_arch="aarch64", android_platform=23, lean=True, ),
"android-mk": JobSpec(name="Android (Android.mk)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Android, artifact=None, no_cmake=True, android_mk=True, ),
"android-gradle": JobSpec(name="Android (Gradle)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Android, artifact=None, no_cmake=True, android_gradle=True, ),
- "emscripten": JobSpec(name="Emscripten", os=JobOs.UbuntuLatest, platform=SdlPlatform.Emscripten, artifact="SDL-emscripten", ),
+ "emscripten": JobSpec(name="Emscripten", os=JobOs.Ubuntu24_04, platform=SdlPlatform.Emscripten, artifact="SDL-emscripten", ),
"haiku": JobSpec(name="Haiku", os=JobOs.UbuntuLatest, platform=SdlPlatform.Haiku, artifact="SDL-haiku-x64", container="ghcr.io/haiku/cross-compiler:x86_64-r1beta5", ),
"loongarch64": JobSpec(name="LoongArch64", os=JobOs.UbuntuLatest, platform=SdlPlatform.LoongArch64, artifact="SDL-loongarch64", ),
"n3ds": JobSpec(name="Nintendo 3DS", os=JobOs.UbuntuLatest, platform=SdlPlatform.N3ds, artifact="SDL-n3ds", container="devkitpro/devkitarm:latest", ), |
https://github.com/sezero/SDL/actions/runs/11373966518/job/31641785710 Seems to have passed the 'Install PyPI packages' step. (Still running.) |
Running tests fails: https://github.com/sezero/SDL/actions/runs/11373966518/job/31641785710#step:27:49
|
I can reproduce. It works on 22.04, but doesn't at 24.04. |
See: https://github.com/sezero/SDL/actions/runs/11342398480/job/31542840236
Something about python, which I don't know anything about.
The text was updated successfully, but these errors were encountered: