[libcxx-commits] [libcxx] [llvm] [libc++][WIP] Move to Github hosted builders (PR #109720)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Sep 23 14:43:54 PDT 2024
https://github.com/ldionne updated https://github.com/llvm/llvm-project/pull/109720
>From 22b80131356cfc4252f9dc8bb4eeb15e85af921a Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2 at gmail.com>
Date: Mon, 23 Sep 2024 17:23:35 -0400
Subject: [PATCH 1/3] [libc++][WIP] Move to Github hosted builders
Libc++ experiences periodic outages of our Github actions builders,
which are quite disruptive. Unfortunately, the Github self-hosted
runner setup is very opaque. It works extremely well when it works,
but most contributors are unable to troubleshoot issues related to
the setup when they happen.
This patch attempts to move the libc++ builders to normal Github
hosted runners. This is primarily to evaluate the feasibility of
such a change, which would simplify our CI setup but may not scale
sufficiently for our needs.
---
.github/workflows/libcxx-build-and-test.yaml | 32 ++++++++++----------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-build-and-test.yaml
index b5e60781e00064..bdf4c1b74fdbaa 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-build-and-test.yaml
@@ -49,7 +49,13 @@ env:
jobs:
stage1:
if: github.repository_owner == 'llvm'
- runs-on: libcxx-runners-8-set
+ runs: &docker-image
+ using: 'docker'
+ image: 'libcxx/utils/ci/Dockerfile'
+ args:
+ - BASE_IMAGE: ghcr.io/actions/actions-runner:2.317.0
+ - GCC_LATEST_VERSION: 14
+ - LLVM_HEAD_VERSION: 20
continue-on-error: false
strategy:
fail-fast: false
@@ -84,7 +90,8 @@ jobs:
**/crash_diagnostics/*
stage2:
if: github.repository_owner == 'llvm'
- runs-on: libcxx-runners-8-set
+ runs:
+ <<: *docker-image
needs: [ stage1 ]
continue-on-error: false
strategy:
@@ -136,12 +143,15 @@ jobs:
matrix:
config: [
'generic-abi-unstable',
+ 'generic-asan',
+ 'generic-cxx26',
'generic-hardening-mode-debug',
'generic-hardening-mode-extensive',
'generic-hardening-mode-fast',
'generic-hardening-mode-fast-with-abi-breaks',
'generic-merged',
'generic-modules-lsv',
+ 'generic-msan',
'generic-no-exceptions',
'generic-no-experimental',
'generic-no-filesystem',
@@ -155,25 +165,15 @@ jobs:
'generic-no-rtti',
'generic-optimized-speed',
'generic-static',
+ 'generic-tsan',
+ 'generic-ubsan',
# TODO Find a better place for the benchmark and bootstrapping builds to live. They're either very expensive
# or don't provide much value since the benchmark run results are too noise on the bots.
'benchmarks',
'bootstrapping-build'
]
- machine: [ 'libcxx-runners-8-set' ]
- include:
- - config: 'generic-cxx26'
- machine: libcxx-runners-8-set
- - config: 'generic-asan'
- machine: libcxx-runners-8-set
- - config: 'generic-tsan'
- machine: libcxx-runners-8-set
- - config: 'generic-ubsan'
- machine: libcxx-runners-8-set
- # Use a larger machine for MSAN to avoid timeout and memory allocation issues.
- - config: 'generic-msan'
- machine: libcxx-runners-8-set
- runs-on: ${{ matrix.machine }}
+ runs:
+ <<: *docker-image
steps:
- uses: actions/checkout at v4
- name: ${{ matrix.config }}
>From 2fdbb387fd0109cd3d9b223c1e5b88b3f3b75e9b Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2 at gmail.com>
Date: Mon, 23 Sep 2024 17:36:33 -0400
Subject: [PATCH 2/3] Touch libc++ file to trigger CI
---
libcxx/foo | 0
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 libcxx/foo
diff --git a/libcxx/foo b/libcxx/foo
new file mode 100644
index 00000000000000..e69de29bb2d1d6
>From a494ba9c3ea9d5e20154c978f5d917e1b6877da2 Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2 at gmail.com>
Date: Mon, 23 Sep 2024 17:39:05 -0400
Subject: [PATCH 3/3] WIP: Try on ubuntu-latest
---
.github/workflows/libcxx-build-and-test.yaml | 21 ++++++++++----------
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-build-and-test.yaml
index bdf4c1b74fdbaa..55e8f7ba16ff56 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-build-and-test.yaml
@@ -49,13 +49,14 @@ env:
jobs:
stage1:
if: github.repository_owner == 'llvm'
- runs: &docker-image
- using: 'docker'
- image: 'libcxx/utils/ci/Dockerfile'
- args:
- - BASE_IMAGE: ghcr.io/actions/actions-runner:2.317.0
- - GCC_LATEST_VERSION: 14
- - LLVM_HEAD_VERSION: 20
+ runs-on: ubuntu-latest
+ # runs: &docker-image
+ # using: 'docker'
+ # image: 'libcxx/utils/ci/Dockerfile'
+ # args:
+ # - BASE_IMAGE: ghcr.io/actions/actions-runner:2.317.0
+ # - GCC_LATEST_VERSION: 14
+ # - LLVM_HEAD_VERSION: 20
continue-on-error: false
strategy:
fail-fast: false
@@ -90,8 +91,7 @@ jobs:
**/crash_diagnostics/*
stage2:
if: github.repository_owner == 'llvm'
- runs:
- <<: *docker-image
+ runs-on: ubuntu-latest
needs: [ stage1 ]
continue-on-error: false
strategy:
@@ -172,8 +172,7 @@ jobs:
'benchmarks',
'bootstrapping-build'
]
- runs:
- <<: *docker-image
+ runs-on: ubuntu-latest
steps:
- uses: actions/checkout at v4
- name: ${{ matrix.config }}
More information about the libcxx-commits
mailing list