[libcxx] [llvm] Add libc++ github actions workflow to replace buildkite (PR #71836)

Tom Stellard via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 16 13:53:27 PST 2023


================
@@ -0,0 +1,112 @@
+name: Build and Test libc++
+
+on: pull_request
+concurrency:
+  group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
+  cancel-in-progress: true
+
+
+env:
+  CMAKE: "/opt/bin/cmake"
+
+# Comment
+jobs:
+  stage1:
+    runs-on: libcxx-runners-16
+    continue-on-error: false
+    strategy:
+      fail-fast: true
+      matrix:
+        config: [ 'generic-cxx26', 'generic-cxx03', 'generic-modules' ]
+        cc: [ 'clang-18' ]
----------------
tstellar wrote:

You can't reference environment variables at the point in the job definition.  One solution I've used is to add a 'variable' job at the very beginning of the workflow that collects all the global variables and outputs them for the other jobs to use.  We do this in the [release binaries workflow](https://github.com/llvm/llvm-project/blob/main/.github/workflows/release-binaries.yml#L23)

There is another option, that I haven't tried, but might work, which is to define repository-level [variables](https://docs.github.com/en/actions/learn-github-actions/variables).  The downside of this is that you would need an admin to change the settings although for something like LLVM_HEAD_VERSION, we may be able to add some automation that keeps it up-to-date at all times.


https://github.com/llvm/llvm-project/pull/71836


More information about the llvm-commits mailing list