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] Fix LLVM Project Tests Workflow on Linux #122221

Conversation

boomanaiden154
Copy link
Contributor

@boomanaiden154 boomanaiden154 commented Jan 9, 2025

This patch fixes the LLVM project tests workflow on Linux. Two changes were needed. Firstly, some commands need to be performed with sudo now that the container executes as a non-root user. Second, we needed to change from ubuntu-latest to ubuntu-22.04 as ubuntu-latest not defaults to ubuntu-24.04 which causes setup-python to install a python executable linked against a newer version of glibc that is not found on ubuntu 22.04, which causes failures when CMake cannot execute the python interpreter that it finds.

@boomanaiden154 boomanaiden154 force-pushed the users/boomanaiden154/fix-permissions-llvm-project-tests-1-8-25 branch 6 times, most recently from 074fa10 to b6a6510 Compare January 9, 2025 06:13
@boomanaiden154 boomanaiden154 changed the title Testing [Github] Fix LLVM Project Tests Workflow on Linux Jan 9, 2025
@boomanaiden154 boomanaiden154 marked this pull request as ready for review January 9, 2025 06:15
@llvmbot
Copy link
Member

llvmbot commented Jan 9, 2025

@llvm/pr-subscribers-github-workflow

Author: Aiden Grossman (boomanaiden154)

Changes

This patch fixes the LLVM project tests workflow on Linux. Two changes were needed. Firstly, some commands need to be performed with sudo now that the container executes as a non-root user. Second, we needed to change from ubuntu-latest to ubuntu-22.04 as ubuntu-latest not defaults to ubuntu-24.04 which causes setup-python to install a python executable linked against a newer version of glibc that is not found on ubuntu 22.04, which causes failures when CMake cannot execute the python interpreter that it finds.


Full diff: https://github.com/llvm/llvm-project/pull/122221.diff

1 Files Affected:

  • (modified) .github/workflows/llvm-project-tests.yml (+8-2)
diff --git a/.github/workflows/llvm-project-tests.yml b/.github/workflows/llvm-project-tests.yml
index 95a3890c0d2dc7..4ff84c511250fb 100644
--- a/.github/workflows/llvm-project-tests.yml
+++ b/.github/workflows/llvm-project-tests.yml
@@ -39,7 +39,12 @@ on:
         type: string
         # Use windows-2019 due to:
         # https://developercommunity.visualstudio.com/t/Prev-Issue---with-__assume-isnan-/1597317
-        default: '["ubuntu-latest", "windows-2019", "macOS-13"]'
+        # Use ubuntu-22.04 rather than ubuntu-latest to match the ubuntu
+        # version in the CI container. Without this, setup-python tries
+        # to install a python version linked against a newer version of glibc.
+        # TODO(boomanaiden154): Bump the Ubuntu version once the version in the
+        # container is bumped.
+        default: '["ubuntu-22.04", "windows-2019", "macOS-13"]'
 
       python_version:
         required: false
@@ -113,7 +118,8 @@ jobs:
         run: |
           if [ "${{ runner.os }}" == "Linux" ]; then
             builddir="/mnt/build/"
-            mkdir -p $builddir
+            sudo mkdir -p $builddir
+            sudo chown gha $builddir
             extra_cmake_args="-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang"
           else
             builddir="$(pwd)"/build

@boomanaiden154 boomanaiden154 force-pushed the users/boomanaiden154/fix-permissions-llvm-project-tests-1-8-25 branch from b6a6510 to 34a0ad8 Compare January 9, 2025 06:28
@boomanaiden154 boomanaiden154 merged commit a759176 into main Jan 9, 2025
10 of 11 checks passed
@boomanaiden154 boomanaiden154 deleted the users/boomanaiden154/fix-permissions-llvm-project-tests-1-8-25 branch January 9, 2025 15:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants