[libcxx-commits] [libcxx] [llvm] [libc++] [WIP] Add metrics collection for libc++ premerge testing. (PR #152801)

via libcxx-commits libcxx-commits at lists.llvm.org
Wed Aug 20 13:38:24 PDT 2025


https://github.com/cmtice updated https://github.com/llvm/llvm-project/pull/152801

>From 67142b91ab1cfb76de821852316a687e0303cd26 Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Fri, 8 Aug 2025 14:27:28 -0700
Subject: [PATCH 01/10] [libc++] [WIP] Add metrics collection for libc++
 premerge testing.

** DRAFT!! DO NOT REVIEW! DO NOT MERGE! **

Work-in-progress, playing around with adding metrics collection
and dashboard for libc++ premerge testing data.
---
 .github/workflows/libcxx-build-and-test.yaml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-build-and-test.yaml
index 4b29c9296bf9d..739e56e56f459 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-build-and-test.yaml
@@ -35,6 +35,7 @@ concurrency:
 
 jobs:
   stage1:
+    name: libc++ Stage1 Testing
     if: github.repository_owner == 'llvm'
     runs-on: llvm-premerge-libcxx-runners
     continue-on-error: false
@@ -72,6 +73,7 @@ jobs:
             **/CMakeOutput.log
             **/crash_diagnostics/*
   stage2:
+    name: libc++ Stage2 Testing
     if: github.repository_owner == 'llvm'
     runs-on: llvm-premerge-libcxx-runners
     needs: [ stage1 ]
@@ -117,6 +119,7 @@ jobs:
             **/CMakeOutput.log
             **/crash_diagnostics/*
   stage3:
+    name: libc++ Stage3 Testing
     if: github.repository_owner == 'llvm'
     needs: [ stage2 ]
     continue-on-error: false

>From 46114b04fe54f4b3c4c2e9b15dab64f8e4b95686 Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Fri, 8 Aug 2025 14:52:02 -0700
Subject: [PATCH 02/10] Update premerge metrics to collect metrics for libc++ 3
 stages.

---
 .ci/metrics/metrics.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/.ci/metrics/metrics.py b/.ci/metrics/metrics.py
index 26fdeef1913ab..ec762f65bf85c 100644
--- a/.ci/metrics/metrics.py
+++ b/.ci/metrics/metrics.py
@@ -28,7 +28,10 @@
 # Lists the Github workflows we want to track. Maps the Github job name to
 # the metric name prefix in grafana.
 # This metric name is also used as a key in the job->name map.
-GITHUB_WORKFLOW_TO_TRACK = {"CI Checks": "github_llvm_premerge_checks"}
+GITHUB_WORKFLOW_TO_TRACK = {
+    "CI Checks": "github_llvm_premerge_checks",
+    "Build and Test libc++": "github_libc++_premerge_checks",
+}
 
 # Lists the Github jobs to track for a given workflow. The key is the stable
 # name (metric name) of the workflow (see GITHUB_WORKFLOW_TO_TRACK).
@@ -39,6 +42,11 @@
         "Build and Test Linux": "premerge_linux",
         "Build and Test Windows": "premerge_windows",
     }
+    "github_libc++_premerge_checks": {
+        "libc++ Stage1 Testing": "premerge_libcxx_stage1",
+        "libc++ Stage2 Testing": "premerge_libcxx_stage2",
+        "libc++ Stage3 Testing": "premerge_libcxx_stage3",
+    }
 }
 
 # The number of workflows to pull when sampling Github workflows.

>From 95729ff959682292b882d179109b910229ba77fe Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Fri, 8 Aug 2025 15:03:30 -0700
Subject: [PATCH 03/10] Add missing commas.

---
 .ci/metrics/metrics.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/.ci/metrics/metrics.py b/.ci/metrics/metrics.py
index ec762f65bf85c..07f958f06f729 100644
--- a/.ci/metrics/metrics.py
+++ b/.ci/metrics/metrics.py
@@ -41,12 +41,12 @@
     "github_llvm_premerge_checks": {
         "Build and Test Linux": "premerge_linux",
         "Build and Test Windows": "premerge_windows",
-    }
+    },
     "github_libc++_premerge_checks": {
         "libc++ Stage1 Testing": "premerge_libcxx_stage1",
         "libc++ Stage2 Testing": "premerge_libcxx_stage2",
         "libc++ Stage3 Testing": "premerge_libcxx_stage3",
-    }
+    },
 }
 
 # The number of workflows to pull when sampling Github workflows.

>From f564525150fc80883dbc7cf8d53cebfddf3678fe Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Fri, 15 Aug 2025 10:21:11 -0700
Subject: [PATCH 04/10] Update PR to trigger premerge testing.

---
 libcxx/docs/CarolinesTestDoc.txt | 6 ++++++
 1 file changed, 6 insertions(+)
 create mode 100644 libcxx/docs/CarolinesTestDoc.txt

diff --git a/libcxx/docs/CarolinesTestDoc.txt b/libcxx/docs/CarolinesTestDoc.txt
new file mode 100644
index 0000000000000..0ee5b29d5c291
--- /dev/null
+++ b/libcxx/docs/CarolinesTestDoc.txt
@@ -0,0 +1,6 @@
+This is a nonsense document, created for the sole purpose of
+triggering libcxx premerge testing (so I can test metrics collection).
+
+
+This is NOT intended to ever be reviewed or merged or committed. If it gets
+accidentally committed, please remove it asap.

>From 6ddc381a6d00c818a243f1ac787eaec5914d99a1 Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Fri, 15 Aug 2025 15:04:50 -0700
Subject: [PATCH 05/10] Prod PR for testing.

---
 libcxx/docs/CarolinesTestDoc.txt | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libcxx/docs/CarolinesTestDoc.txt b/libcxx/docs/CarolinesTestDoc.txt
index 0ee5b29d5c291..8525f5c646c9d 100644
--- a/libcxx/docs/CarolinesTestDoc.txt
+++ b/libcxx/docs/CarolinesTestDoc.txt
@@ -1,6 +1,8 @@
 This is a nonsense document, created for the sole purpose of
 triggering libcxx premerge testing (so I can test metrics collection).
 
-
 This is NOT intended to ever be reviewed or merged or committed. If it gets
 accidentally committed, please remove it asap.
+
+Sample text.
+

>From 0bf2562b8313b4cbe82d4caf84b640bee13c686b Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Mon, 18 Aug 2025 11:15:49 -0700
Subject: [PATCH 06/10] Poke PR to kick off testing.

---
 libcxx/docs/CarolinesTestDoc.txt | 2 --
 1 file changed, 2 deletions(-)

diff --git a/libcxx/docs/CarolinesTestDoc.txt b/libcxx/docs/CarolinesTestDoc.txt
index 8525f5c646c9d..36b255be72237 100644
--- a/libcxx/docs/CarolinesTestDoc.txt
+++ b/libcxx/docs/CarolinesTestDoc.txt
@@ -4,5 +4,3 @@ triggering libcxx premerge testing (so I can test metrics collection).
 This is NOT intended to ever be reviewed or merged or committed. If it gets
 accidentally committed, please remove it asap.
 
-Sample text.
-

>From 65b0c06039c3bdffe357e8610f1f9bb8ff12b3c3 Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Mon, 18 Aug 2025 14:44:00 -0700
Subject: [PATCH 07/10] Poke PR.

---
 libcxx/docs/CarolinesTestDoc.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libcxx/docs/CarolinesTestDoc.txt b/libcxx/docs/CarolinesTestDoc.txt
index 36b255be72237..bf977fc515e2c 100644
--- a/libcxx/docs/CarolinesTestDoc.txt
+++ b/libcxx/docs/CarolinesTestDoc.txt
@@ -4,3 +4,4 @@ triggering libcxx premerge testing (so I can test metrics collection).
 This is NOT intended to ever be reviewed or merged or committed. If it gets
 accidentally committed, please remove it asap.
 
+Sample text goes here.

>From 09d22f42d876897e963229b3f63bf47110bbfba3 Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Wed, 20 Aug 2025 07:58:24 -0700
Subject: [PATCH 08/10] Remove unnecessary name change.

---
 .github/workflows/libcxx-build-and-test.yaml | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-build-and-test.yaml
index 739e56e56f459..4b29c9296bf9d 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-build-and-test.yaml
@@ -35,7 +35,6 @@ concurrency:
 
 jobs:
   stage1:
-    name: libc++ Stage1 Testing
     if: github.repository_owner == 'llvm'
     runs-on: llvm-premerge-libcxx-runners
     continue-on-error: false
@@ -73,7 +72,6 @@ jobs:
             **/CMakeOutput.log
             **/crash_diagnostics/*
   stage2:
-    name: libc++ Stage2 Testing
     if: github.repository_owner == 'llvm'
     runs-on: llvm-premerge-libcxx-runners
     needs: [ stage1 ]
@@ -119,7 +117,6 @@ jobs:
             **/CMakeOutput.log
             **/crash_diagnostics/*
   stage3:
-    name: libc++ Stage3 Testing
     if: github.repository_owner == 'llvm'
     needs: [ stage2 ]
     continue-on-error: false

>From 5a930115b0fee56a3be85ee1f1de7f4ca57e7034 Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Wed, 20 Aug 2025 10:57:02 -0700
Subject: [PATCH 09/10] Poke PR.

---
 libcxx/docs/CarolinesTestDoc.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libcxx/docs/CarolinesTestDoc.txt b/libcxx/docs/CarolinesTestDoc.txt
index bf977fc515e2c..e34bec83d623b 100644
--- a/libcxx/docs/CarolinesTestDoc.txt
+++ b/libcxx/docs/CarolinesTestDoc.txt
@@ -4,4 +4,4 @@ triggering libcxx premerge testing (so I can test metrics collection).
 This is NOT intended to ever be reviewed or merged or committed. If it gets
 accidentally committed, please remove it asap.
 
-Sample text goes here.
+Sample text goes here. And more sample text.

>From 1c405075ede64311181f5d12159b1fc4f16babad Mon Sep 17 00:00:00 2001
From: Caroline Tice <cmtice at google.com>
Date: Wed, 20 Aug 2025 13:37:42 -0700
Subject: [PATCH 10/10] Poke PR.

---
 libcxx/docs/CarolinesTestDoc.txt | 1 -
 1 file changed, 1 deletion(-)

diff --git a/libcxx/docs/CarolinesTestDoc.txt b/libcxx/docs/CarolinesTestDoc.txt
index e34bec83d623b..36b255be72237 100644
--- a/libcxx/docs/CarolinesTestDoc.txt
+++ b/libcxx/docs/CarolinesTestDoc.txt
@@ -4,4 +4,3 @@ triggering libcxx premerge testing (so I can test metrics collection).
 This is NOT intended to ever be reviewed or merged or committed. If it gets
 accidentally committed, please remove it asap.
 
-Sample text goes here. And more sample text.



More information about the libcxx-commits mailing list