This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 80d03cb296 CI: Split the RISC-V Build Jobs into smaller jobs
80d03cb296 is described below
commit 80d03cb296410b1d5197bebe92fe04d5f4fd8730
Author: Lup Yuen Lee <[email protected]>
AuthorDate: Wed Oct 9 22:00:12 2024 +0800
CI: Split the RISC-V Build Jobs into smaller jobs
To speed up the CI Workflow, this PR splits the CI Build Jobs for RISC-V
into smaller jobs. Each job will now complete within 1 hour.
Before the PR: There are 2 jobs for RISC-V, each requiring more than 1.5
hours
- `risc-v-01` (1 hour 42 mins): BL602, Ox64, ESP32-C3 / C6 / H2
- `risc-v-02` (1 hour 41 mins): K230, Icicle, QEMU, RV32M1-Vega
After the PR: The build is spread across 6 jobs for RISC-V, each job
completes within 1 hour
- `risc-v-01` (19 mins): BL602, Ox64
- `risc-v-02` (44 mins): ESP32-C3
- `risc-v-03` (45 mins): ESP32-C6, ESP32-H2
- `risc-v-04` (31 mins): K230, Icicle
- `risc-v-05` (41 mins): QEMU CITest
- `risc-v-06` (38 mins): Rest of QEMU, RV32M1-Vega
Following the same convention as the Arm32 Build Jobs, the above jobs are
sorted by Target Name. Performance of the RISC-V Build Jobs is discussed in
https://github.com/apache/nuttx/issues/13775
---
.github/workflows/build.yml | 6 +++++-
tools/ci/testlist/risc-v-01.dat | 3 ++-
tools/ci/testlist/risc-v-02.dat | 7 +------
tools/ci/testlist/risc-v-03.dat | 2 ++
tools/ci/testlist/risc-v-04.dat | 4 ++++
tools/ci/testlist/risc-v-05.dat | 1 +
tools/ci/testlist/risc-v-06.dat | 7 +++++++
7 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 8b7326686b..7817dd4112 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -127,7 +127,11 @@ jobs:
[
"arm-01", "other", "risc-v-01", "sim-01", "xtensa-01",
"arm-02", "risc-v-02", "sim-02", "xtensa-02",
- "arm-03", "arm-04", "arm-05", "arm-06", "arm-07", "arm-08",
"arm-09", "arm-10", "arm-11", "arm-12", "arm-13", "arm-14"
+ "arm-03", "risc-v-03",
+ "arm-04", "risc-v-04",
+ "arm-05", "risc-v-05",
+ "arm-06", "risc-v-06",
+ "arm-07", "arm-08", "arm-09", "arm-10", "arm-11", "arm-12",
"arm-13", "arm-14"
]
# Run the selected Linux Builds
diff --git a/tools/ci/testlist/risc-v-01.dat b/tools/ci/testlist/risc-v-01.dat
index e59070121f..8231e1f6f8 100644
--- a/tools/ci/testlist/risc-v-01.dat
+++ b/tools/ci/testlist/risc-v-01.dat
@@ -1 +1,2 @@
-/risc-v/[a-e]*
+/risc-v/[a-d]*
+/risc-v/e[0-r]*
diff --git a/tools/ci/testlist/risc-v-02.dat b/tools/ci/testlist/risc-v-02.dat
index 20783e8e12..91c1a0456f 100644
--- a/tools/ci/testlist/risc-v-02.dat
+++ b/tools/ci/testlist/risc-v-02.dat
@@ -1,6 +1 @@
-/risc-v/[f-s]*
--,arty_a7:.+
-
-# Boards build by CMake
-CMake,rv-virt:smp
-CMake,rv-virt:smp64
\ No newline at end of file
+/risc-v/esp32c[0-5]*
diff --git a/tools/ci/testlist/risc-v-03.dat b/tools/ci/testlist/risc-v-03.dat
new file mode 100644
index 0000000000..a229385a8b
--- /dev/null
+++ b/tools/ci/testlist/risc-v-03.dat
@@ -0,0 +1,2 @@
+/risc-v/esp32c[6-z]*
+/risc-v/esp32[d-z]*
diff --git a/tools/ci/testlist/risc-v-04.dat b/tools/ci/testlist/risc-v-04.dat
new file mode 100644
index 0000000000..4a8ae59e06
--- /dev/null
+++ b/tools/ci/testlist/risc-v-04.dat
@@ -0,0 +1,4 @@
+/risc-v/e[t-z]*
+/risc-v/[f-p]*
+/risc-v/q[0-d]*
+-,arty_a7:.+
diff --git a/tools/ci/testlist/risc-v-05.dat b/tools/ci/testlist/risc-v-05.dat
new file mode 100644
index 0000000000..084e31c678
--- /dev/null
+++ b/tools/ci/testlist/risc-v-05.dat
@@ -0,0 +1 @@
+/risc-v/qemu-rv/rv-virt/configs/[a-c]*
diff --git a/tools/ci/testlist/risc-v-06.dat b/tools/ci/testlist/risc-v-06.dat
new file mode 100644
index 0000000000..21b3406b5b
--- /dev/null
+++ b/tools/ci/testlist/risc-v-06.dat
@@ -0,0 +1,7 @@
+/risc-v/qemu-rv/rv-virt/configs/[d-z]*
+/risc-v/q[f-z]*
+/risc-v/[r-z]*
+
+# Boards build by CMake
+CMake,rv-virt:smp
+CMake,rv-virt:smp64