[libcxx-commits] [libcxx] [llvm] [libc++] Rename pre-commit CI workflows (PR #211844)
via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Jul 24 09:29:51 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Louis Dionne (ldionne)
<details>
<summary>Changes</summary>
Since we're expanding libc++'s pre-commit CI to add other types of tests, (e.g. tools tests, performance tests, etc), it makes sense to be a bit more precise about what each workflow does, and to use a consistent pattern across workflow names.
Also, update stale references to old names in the documentation and in some infrastructure scripts.
---
Full diff: https://github.com/llvm/llvm-project/pull/211844.diff
10 Files Affected:
- (modified) .ci/metrics/metrics.py (+3-3)
- (modified) .ci/metrics/metrics_test.py (+16-16)
- (modified) .github/workflows/libcxx-benchmark-commit.yml (+1-1)
- (modified) .github/workflows/libcxx-build-containers.yml (+1-1)
- (modified) .github/workflows/libcxx-pr-benchmark.yml (+1-1)
- (renamed) .github/workflows/libcxx-pr-check-generated-files.yml (+1-1)
- (renamed) .github/workflows/libcxx-pr-conformance-tests.yaml (+4-3)
- (modified) README.md (+1-1)
- (modified) libcxx/docs/Contributing.rst (+1-1)
- (modified) libcxx/docs/index.rst (+1-1)
``````````diff
diff --git a/.ci/metrics/metrics.py b/.ci/metrics/metrics.py
index ac39a47d43c07..3785e205d8360 100644
--- a/.ci/metrics/metrics.py
+++ b/.ci/metrics/metrics.py
@@ -30,7 +30,7 @@
# This metric name is also used as a key in the job->name map.
GITHUB_WORKFLOW_TO_TRACK = {
"CI Checks": "github_llvm_premerge_checks",
- "Build and Test libc++": "github_libcxx_premerge_checks",
+ "[libc++] Conformance tests": "github_libcxx_premerge_checks",
}
# Lists the Github jobs to track for a given workflow. The key is the stable
@@ -175,7 +175,7 @@ def create_and_append_libcxx_aggregates(workflow_metrics: list[JobMetrics]):
if not isinstance(job, JobMetrics):
continue
# Only want libc++ jobs.
- if job.workflow_name != "Build and Test libc++":
+ if job.workflow_name != "[libc++] Conformance tests":
continue
if job.workflow_id not in aggregate_data.keys():
aggregate_data[job.workflow_id] = [job]
@@ -312,7 +312,7 @@ def github_get_metrics(
continue
libcxx_testing = False
- if task.name == "Build and Test libc++":
+ if task.name == "[libc++] Conformance tests":
libcxx_testing = True
if task.status == "completed":
diff --git a/.ci/metrics/metrics_test.py b/.ci/metrics/metrics_test.py
index 3004c367f96ff..727bdbfa87cda 100644
--- a/.ci/metrics/metrics_test.py
+++ b/.ci/metrics/metrics_test.py
@@ -100,7 +100,7 @@ def test_create_and_append_aggregate_metric_1_stage(self):
started_at_ns=1755697961000000000,
completed_at_ns=1755698349000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage1_test2",
@@ -111,7 +111,7 @@ def test_create_and_append_aggregate_metric_1_stage(self):
started_at_ns=1755698060000000000,
completed_at_ns=1755698417000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage1_test3",
@@ -122,7 +122,7 @@ def test_create_and_append_aggregate_metric_1_stage(self):
started_at_ns=1755697961000000000,
completed_at_ns=1755698785000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
]
metrics.create_and_append_libcxx_aggregates(test_metrics)
@@ -150,7 +150,7 @@ def test_create_and_append_aggregate_metric_multiple_workflow_ids(self):
started_at_ns=1755697961000000000,
completed_at_ns=1755698349000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage1_test2",
@@ -161,7 +161,7 @@ def test_create_and_append_aggregate_metric_multiple_workflow_ids(self):
started_at_ns=1755698060000000000,
completed_at_ns=1755698417000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage1_test3",
@@ -172,7 +172,7 @@ def test_create_and_append_aggregate_metric_multiple_workflow_ids(self):
started_at_ns=1755697961000000000,
completed_at_ns=1755698785000000000,
workflow_id=25,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
]
metrics.create_and_append_libcxx_aggregates(test_metrics)
@@ -211,7 +211,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755697053000000000,
completed_at_ns=1755698507000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage1_test2",
@@ -222,7 +222,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755697058000000000,
completed_at_ns=1755697885000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage2_test1",
@@ -233,7 +233,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755698513000000000,
completed_at_ns=1755699093000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage2_test2",
@@ -244,7 +244,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755698514000000000,
completed_at_ns=1755698987000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage2_test3",
@@ -255,7 +255,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755698514000000000,
completed_at_ns=1755699334000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage3_test1",
@@ -266,7 +266,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755709012000000000,
completed_at_ns=1755709931000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage3_test2",
@@ -277,7 +277,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755709146000000000,
completed_at_ns=1755709980000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"libcxx_stage3_test3",
@@ -288,7 +288,7 @@ def test_create_and_append_aggregate_metric_3_stages(self):
started_at_ns=1755709136000000000,
completed_at_ns=1755709514000000000,
workflow_id=17,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
]
metrics.create_and_append_libcxx_aggregates(test_metrics)
@@ -341,7 +341,7 @@ def test_create_and_append_aggregate_metric_mixed_job_types(self):
started_at_ns=1755697961000000000,
completed_at_ns=1755698349000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"ci_test2", 3, 20, 1, 2000, 2200, 2400, 37, "premerge_test"
@@ -355,7 +355,7 @@ def test_create_and_append_aggregate_metric_mixed_job_types(self):
started_at_ns=1755698060000000000,
completed_at_ns=1755698417000000000,
workflow_id=3,
- workflow_name="Build and Test libc++",
+ workflow_name="[libc++] Conformance tests",
),
metrics.JobMetrics(
"ci_test3", 7, 35, 1, 3000, 3200, 3400, 85, "premerge_test"
diff --git a/.github/workflows/libcxx-benchmark-commit.yml b/.github/workflows/libcxx-benchmark-commit.yml
index 683ff141d060e..90ade6c45cf21 100644
--- a/.github/workflows/libcxx-benchmark-commit.yml
+++ b/.github/workflows/libcxx-benchmark-commit.yml
@@ -2,7 +2,7 @@
# This workflow is intended to be triggered manually or via the Github API. As such,
# it requires several inputs that allow customizing its behavior.
-name: Benchmark libc++ commit
+name: "[libc++] Run benchmark suite against commit"
permissions:
contents: read
diff --git a/.github/workflows/libcxx-build-containers.yml b/.github/workflows/libcxx-build-containers.yml
index 814de39a5e0a9..2789851da391b 100644
--- a/.github/workflows/libcxx-build-containers.yml
+++ b/.github/workflows/libcxx-build-containers.yml
@@ -5,7 +5,7 @@
# and tagged appropriately. The selection of which Docker image version is used by the libc++
# CI nodes at any given point is controlled from the workflow files themselves.
-name: Build Docker images for libc++ CI
+name: "[libc++] Build CI Docker images"
permissions:
contents: read
diff --git a/.github/workflows/libcxx-pr-benchmark.yml b/.github/workflows/libcxx-pr-benchmark.yml
index 31bf6ffb224b6..92668a2f79f6c 100644
--- a/.github/workflows/libcxx-pr-benchmark.yml
+++ b/.github/workflows/libcxx-pr-benchmark.yml
@@ -7,7 +7,7 @@
# That will cause the specified benchmarks to be run on the PR and on the pull-request target, and
# their results to be compared.
-name: Benchmark libc++ PR
+name: "[libc++] Benchmark PR"
permissions:
contents: read
diff --git a/.github/workflows/libcxx-check-generated-files.yml b/.github/workflows/libcxx-pr-check-generated-files.yml
similarity index 94%
rename from .github/workflows/libcxx-check-generated-files.yml
rename to .github/workflows/libcxx-pr-check-generated-files.yml
index d66d1da22f2ad..66f2735b08eab 100644
--- a/.github/workflows/libcxx-check-generated-files.yml
+++ b/.github/workflows/libcxx-pr-check-generated-files.yml
@@ -1,4 +1,4 @@
-name: "Check libc++ generated files"
+name: "[libc++] Check generated files"
on:
pull_request:
paths:
diff --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-pr-conformance-tests.yaml
similarity index 98%
rename from .github/workflows/libcxx-build-and-test.yaml
rename to .github/workflows/libcxx-pr-conformance-tests.yaml
index b95230b725a88..a7a93a110428c 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-pr-conformance-tests.yaml
@@ -1,4 +1,5 @@
-# This file defines pre-commit CI for libc++, libc++abi, and libunwind (on Github).
+# This file defines a workflow that runs conformance tests for libc++, libc++abi and libunwind when
+# a PR is created or updated.
#
# We split the configurations in multiple stages with the intent of saving compute time
# when a job fails early in the pipeline. This is why the jobs are marked as `continue-on-error: false`.
@@ -12,7 +13,7 @@
# under the assumption that if the "smoke tests" fail, then the other configurations will likely fail in the same way.
# However, stage 3 does not fail fast, as it's more likely that any one job failing is a flake or a configuration-specific
#
-name: Build and Test libc++
+name: "[libc++] Conformance tests"
on:
pull_request:
paths:
@@ -21,7 +22,7 @@ on:
- 'libunwind/**'
- 'runtimes/**'
- 'cmake/**'
- - '.github/workflows/libcxx-build-and-test.yaml'
+ - '.github/workflows/libcxx-pr-conformance-tests.yaml'
schedule:
# Run nightly at 08:00 UTC (aka 00:00 Pacific, aka 03:00 Eastern)
- cron: '0 8 * * *'
diff --git a/README.md b/README.md
index a9b29ecbc1a3a..55425f05c9879 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
[](https://securityscorecards.dev/viewer/?uri=github.com/llvm/llvm-project)
[](https://www.bestpractices.dev/projects/8273)
-[](https://github.com/llvm/llvm-project/actions/workflows/libcxx-build-and-test.yaml?query=event%3Aschedule)
+[](https://github.com/llvm/llvm-project/actions/workflows/libcxx-pr-conformance-tests.yaml?query=event%3Aschedule)
Welcome to the LLVM project!
diff --git a/libcxx/docs/Contributing.rst b/libcxx/docs/Contributing.rst
index 465bf9d0542c8..3c4d45dd17ce0 100644
--- a/libcxx/docs/Contributing.rst
+++ b/libcxx/docs/Contributing.rst
@@ -272,7 +272,7 @@ The libcxx linux premerge testing can run on one of three sets of runner
groups. The three runner group names are ``llvm-premerge-libcxx-runners``,
``llvm-premerge-libcxx-release-runners`` and ``llvm-premerge-libcxx-next-runners``.
The runner set currently in use is controlled by the contents of
-https://github.com/llvm/llvm-project/blob/main/.github/workflows/libcxx-build-and-test.yaml.
+https://github.com/llvm/llvm-project/blob/main/.github/workflows/libcxx-pr-conformance-tests.yaml.
By default, it uses ``llvm-premerge-libcxx-runners``. To switch to one of the
other runner sets, just replace all uses of ``llvm-premerge-libcxx-runners`` in
the yaml file with the desired runner set.
diff --git a/libcxx/docs/index.rst b/libcxx/docs/index.rst
index 13aa481b1f9b7..d6bbc771f0e6b 100644
--- a/libcxx/docs/index.rst
+++ b/libcxx/docs/index.rst
@@ -237,7 +237,7 @@ Design Documents
Build Bots and Test Coverage
============================
-* `Github Actions CI pipeline <https://github.com/llvm/llvm-project/actions/workflows/libcxx-build-and-test.yaml>`_
+* `Github Actions CI pipeline <https://github.com/llvm/llvm-project/actions/workflows/libcxx-pr-conformance-tests.yaml>`_
* `Buildkite CI pipeline <https://buildkite.com/llvm-project/libcxx-ci>`_
* `LLVM Buildbot Builders <https://lab.llvm.org/buildbot>`_
* :ref:`Adding New CI Jobs <AddingNewCIJobs>`
``````````
</details>
https://github.com/llvm/llvm-project/pull/211844
More information about the libcxx-commits
mailing list