This is an automated email from the ASF dual-hosted git repository.

tqchen pushed a commit to branch ci
in repository https://gitbox.apache.org/repos/asf/tvm.git


The following commit(s) were added to refs/heads/ci by this push:
     new 979fca1d23 Update to use explicit params
979fca1d23 is described below

commit 979fca1d23a666b090fd910f65614348010838c6
Author: tqchen <[email protected]>
AuthorDate: Fri Feb 7 09:50:28 2025 -0500

    Update to use explicit params
---
 ci/jenkins/generated/arm_jenkinsfile.groovy        | 90 ++++++++--------------
 ci/jenkins/generated/cpu_jenkinsfile.groovy        | 68 ++++++----------
 ci/jenkins/generated/gpu_jenkinsfile.groovy        | 79 +++++++------------
 ci/jenkins/generated/hexagon_jenkinsfile.groovy    | 90 ++++++++--------------
 ci/jenkins/generated/i386_jenkinsfile.groovy       | 35 ++++-----
 ci/jenkins/templates/arm_jenkinsfile.groovy.j2     |  5 +-
 ci/jenkins/templates/cpu_jenkinsfile.groovy.j2     |  5 +-
 ci/jenkins/templates/gpu_jenkinsfile.groovy.j2     |  5 +-
 ci/jenkins/templates/hexagon_jenkinsfile.groovy.j2 |  3 +-
 ci/jenkins/templates/i386_jenkinsfile.groovy.j2    |  3 +-
 ci/jenkins/templates/utils/macros.j2               | 15 ++--
 11 files changed, 144 insertions(+), 254 deletions(-)

diff --git a/ci/jenkins/generated/arm_jenkinsfile.groovy 
b/ci/jenkins/generated/arm_jenkinsfile.groovy
index 1a9beede99..95b1bb24a6 100644
--- a/ci/jenkins/generated/arm_jenkinsfile.groovy
+++ b/ci/jenkins/generated/arm_jenkinsfile.groovy
@@ -60,7 +60,7 @@
 // 'python3 jenkins/generate.py'
 // Note: This timestamp is here to ensure that updates to the Jenkinsfile are
 // always rebased on main before merging:
-// Generated at 2025-02-06T22:42:27.004474
+// Generated at 2025-02-07T09:50:07.174590
 
 import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
 // These are set at runtime from data in ci/jenkins/docker-images.yml, update
@@ -562,12 +562,9 @@ build()
 
 
 
-def shard_run_integration_aarch64_1_of_4(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_integration_aarch64_1_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -612,12 +609,9 @@ def shard_run_integration_aarch64_1_of_4(on_demand=false, 
node_type='ARM-GRAVITO
   }
 }
 
-def shard_run_integration_aarch64_2_of_4(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_integration_aarch64_2_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -662,12 +656,9 @@ def shard_run_integration_aarch64_2_of_4(on_demand=false, 
node_type='ARM-GRAVITO
   }
 }
 
-def shard_run_integration_aarch64_3_of_4(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_integration_aarch64_3_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -712,12 +703,9 @@ def shard_run_integration_aarch64_3_of_4(on_demand=false, 
node_type='ARM-GRAVITO
   }
 }
 
-def shard_run_integration_aarch64_4_of_4(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_integration_aarch64_4_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -764,12 +752,9 @@ def shard_run_integration_aarch64_4_of_4(on_demand=false, 
node_type='ARM-GRAVITO
 
 
 
-def shard_run_topi_aarch64_1_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_topi_aarch64_1_of_2(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -818,12 +803,9 @@ def shard_run_topi_aarch64_1_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT
   }
 }
 
-def shard_run_topi_aarch64_2_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_topi_aarch64_2_of_2(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -873,12 +855,9 @@ def shard_run_topi_aarch64_2_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT
 
 
 
-def shard_run_frontend_aarch64_1_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_frontend_aarch64_1_of_2(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/frontend-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -922,12 +901,9 @@ def shard_run_frontend_aarch64_1_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-
   }
 }
 
-def shard_run_frontend_aarch64_2_of_2(on_demand=false, 
node_type='ARM-GRAVITON3-SPOT') {
+def shard_run_frontend_aarch64_2_of_2(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'ARM-GRAVITON3'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/frontend-python-arm") {
         // NOTE: if exception happens, it will be caught outside
@@ -980,90 +956,90 @@ def test() {
     parallel(
     'integration: aarch64 1 of 4': {
       try {
-      shard_run_integration_aarch64_1_of_4()
+      shard_run_integration_aarch64_1_of_4('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_aarch64_1_of_4(on_demand: true)
+        shard_run_integration_aarch64_1_of_4('ARM-GRAVITON3')
       }
     },
     'integration: aarch64 2 of 4': {
       try {
-      shard_run_integration_aarch64_2_of_4()
+      shard_run_integration_aarch64_2_of_4('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_aarch64_2_of_4(on_demand: true)
+        shard_run_integration_aarch64_2_of_4('ARM-GRAVITON3')
       }
     },
     'integration: aarch64 3 of 4': {
       try {
-      shard_run_integration_aarch64_3_of_4()
+      shard_run_integration_aarch64_3_of_4('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_aarch64_3_of_4(on_demand: true)
+        shard_run_integration_aarch64_3_of_4('ARM-GRAVITON3')
       }
     },
     'integration: aarch64 4 of 4': {
       try {
-      shard_run_integration_aarch64_4_of_4()
+      shard_run_integration_aarch64_4_of_4('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_aarch64_4_of_4(on_demand: true)
+        shard_run_integration_aarch64_4_of_4('ARM-GRAVITON3')
       }
     },
     'topi: aarch64 1 of 2': {
       try {
-      shard_run_topi_aarch64_1_of_2()
+      shard_run_topi_aarch64_1_of_2('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_topi_aarch64_1_of_2(on_demand: true)
+        shard_run_topi_aarch64_1_of_2('ARM-GRAVITON3')
       }
     },
     'topi: aarch64 2 of 2': {
       try {
-      shard_run_topi_aarch64_2_of_2()
+      shard_run_topi_aarch64_2_of_2('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_topi_aarch64_2_of_2(on_demand: true)
+        shard_run_topi_aarch64_2_of_2('ARM-GRAVITON3')
       }
     },
     'frontend: aarch64 1 of 2': {
       try {
-      shard_run_frontend_aarch64_1_of_2()
+      shard_run_frontend_aarch64_1_of_2('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_frontend_aarch64_1_of_2(on_demand: true)
+        shard_run_frontend_aarch64_1_of_2('ARM-GRAVITON3')
       }
     },
     'frontend: aarch64 2 of 2': {
       try {
-      shard_run_frontend_aarch64_2_of_2()
+      shard_run_frontend_aarch64_2_of_2('ARM-GRAVITON3-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_frontend_aarch64_2_of_2(on_demand: true)
+        shard_run_frontend_aarch64_2_of_2('ARM-GRAVITON3')
       }
     },
     )
diff --git a/ci/jenkins/generated/cpu_jenkinsfile.groovy 
b/ci/jenkins/generated/cpu_jenkinsfile.groovy
index bde3acb5e8..2b2a17d951 100644
--- a/ci/jenkins/generated/cpu_jenkinsfile.groovy
+++ b/ci/jenkins/generated/cpu_jenkinsfile.groovy
@@ -60,7 +60,7 @@
 // 'python3 jenkins/generate.py'
 // Note: This timestamp is here to ensure that updates to the Jenkinsfile are
 // always rebased on main before merging:
-// Generated at 2025-02-06T22:42:27.021129
+// Generated at 2025-02-07T09:50:07.191497
 
 import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
 // These are set at runtime from data in ci/jenkins/docker-images.yml, update
@@ -567,12 +567,9 @@ build()
 
 
 
-def shard_run_integration_CPU_1_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
+def shard_run_integration_CPU_1_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-cpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -616,12 +613,9 @@ def shard_run_integration_CPU_1_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT'
   }
 }
 
-def shard_run_integration_CPU_2_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
+def shard_run_integration_CPU_2_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-cpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -665,12 +659,9 @@ def shard_run_integration_CPU_2_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT'
   }
 }
 
-def shard_run_integration_CPU_3_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
+def shard_run_integration_CPU_3_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-cpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -714,12 +705,9 @@ def shard_run_integration_CPU_3_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT'
   }
 }
 
-def shard_run_integration_CPU_4_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
+def shard_run_integration_CPU_4_of_4(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-cpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -765,12 +753,9 @@ def shard_run_integration_CPU_4_of_4(on_demand=false, 
node_type='CPU-SMALL-SPOT'
 
 
 
-def shard_run_unittest_CPU_1_of_1(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_unittest_CPU_1_of_1(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-cpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -813,12 +798,9 @@ def shard_run_unittest_CPU_1_of_1(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
 }
 
 
-def shard_run_frontend_CPU_1_of_1(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_frontend_CPU_1_of_1(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/frontend-python-cpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -871,68 +853,68 @@ def test() {
     parallel(
     'integration: CPU 1 of 4': {
       try {
-      shard_run_integration_CPU_1_of_4()
+      shard_run_integration_CPU_1_of_4('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_CPU_1_of_4(on_demand: true)
+        shard_run_integration_CPU_1_of_4('CPU-SMALL')
       }
     },
     'integration: CPU 2 of 4': {
       try {
-      shard_run_integration_CPU_2_of_4()
+      shard_run_integration_CPU_2_of_4('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_CPU_2_of_4(on_demand: true)
+        shard_run_integration_CPU_2_of_4('CPU-SMALL')
       }
     },
     'integration: CPU 3 of 4': {
       try {
-      shard_run_integration_CPU_3_of_4()
+      shard_run_integration_CPU_3_of_4('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_CPU_3_of_4(on_demand: true)
+        shard_run_integration_CPU_3_of_4('CPU-SMALL')
       }
     },
     'integration: CPU 4 of 4': {
       try {
-      shard_run_integration_CPU_4_of_4()
+      shard_run_integration_CPU_4_of_4('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_integration_CPU_4_of_4(on_demand: true)
+        shard_run_integration_CPU_4_of_4('CPU-SMALL')
       }
     },
     'unittest: CPU 1 of 1': {
       try {
-      shard_run_unittest_CPU_1_of_1()
+      shard_run_unittest_CPU_1_of_1('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_unittest_CPU_1_of_1(on_demand: true)
+        shard_run_unittest_CPU_1_of_1('CPU-SMALL')
       }
     },
     'frontend: CPU 1 of 1': {
       try {
-      shard_run_frontend_CPU_1_of_1()
+      shard_run_frontend_CPU_1_of_1('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_frontend_CPU_1_of_1(on_demand: true)
+        shard_run_frontend_CPU_1_of_1('CPU-SMALL')
       }
     },
     )
diff --git a/ci/jenkins/generated/gpu_jenkinsfile.groovy 
b/ci/jenkins/generated/gpu_jenkinsfile.groovy
index eddeffa96c..63e68cb072 100644
--- a/ci/jenkins/generated/gpu_jenkinsfile.groovy
+++ b/ci/jenkins/generated/gpu_jenkinsfile.groovy
@@ -60,7 +60,7 @@
 // 'python3 jenkins/generate.py'
 // Note: This timestamp is here to ensure that updates to the Jenkinsfile are
 // always rebased on main before merging:
-// Generated at 2025-02-06T22:42:27.046569
+// Generated at 2025-02-07T09:50:07.217941
 
 import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
 // These are set at runtime from data in ci/jenkins/docker-images.yml, update
@@ -568,12 +568,9 @@ build()
 
 
 
-def shard_run_unittest_GPU_1_of_3(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_unittest_GPU_1_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -643,12 +640,9 @@ def shard_run_unittest_GPU_1_of_3(on_demand=false, 
node_type='GPU-SPOT') {
   }
 }
 
-def shard_run_unittest_GPU_2_of_3(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_unittest_GPU_2_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -700,12 +694,9 @@ def shard_run_unittest_GPU_2_of_3(on_demand=false, 
node_type='GPU-SPOT') {
   }
 }
 
-def shard_run_unittest_GPU_3_of_3(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_unittest_GPU_3_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/ut-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -755,12 +746,9 @@ def shard_run_unittest_GPU_3_of_3(on_demand=false, 
node_type='GPU-SPOT') {
 
 
 
-def shard_run_topi_GPU_1_of_3(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_topi_GPU_1_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/topi-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -804,12 +792,9 @@ def shard_run_topi_GPU_1_of_3(on_demand=false, 
node_type='GPU-SPOT') {
   }
 }
 
-def shard_run_topi_GPU_2_of_3(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_topi_GPU_2_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/topi-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -853,12 +838,9 @@ def shard_run_topi_GPU_2_of_3(on_demand=false, 
node_type='GPU-SPOT') {
   }
 }
 
-def shard_run_topi_GPU_3_of_3(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_topi_GPU_3_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/topi-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -904,12 +886,9 @@ def shard_run_topi_GPU_3_of_3(on_demand=false, 
node_type='GPU-SPOT') {
 
 
 
-def shard_run_docs_GPU_1_of_1(on_demand=false, node_type='GPU-SPOT') {
+def shard_run_docs_GPU_1_of_1(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'GPU'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/docs-python-gpu") {
         // NOTE: if exception happens, it will be caught outside
@@ -972,79 +951,79 @@ def test() {
     parallel(
     'unittest: GPU 1 of 3': {
       try {
-      shard_run_unittest_GPU_1_of_3()
+      shard_run_unittest_GPU_1_of_3('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_unittest_GPU_1_of_3(on_demand: true)
+        shard_run_unittest_GPU_1_of_3('GPU')
       }
     },
     'unittest: GPU 2 of 3': {
       try {
-      shard_run_unittest_GPU_2_of_3()
+      shard_run_unittest_GPU_2_of_3('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_unittest_GPU_2_of_3(on_demand: true)
+        shard_run_unittest_GPU_2_of_3('GPU')
       }
     },
     'unittest: GPU 3 of 3': {
       try {
-      shard_run_unittest_GPU_3_of_3()
+      shard_run_unittest_GPU_3_of_3('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_unittest_GPU_3_of_3(on_demand: true)
+        shard_run_unittest_GPU_3_of_3('GPU')
       }
     },
     'topi: GPU 1 of 3': {
       try {
-      shard_run_topi_GPU_1_of_3()
+      shard_run_topi_GPU_1_of_3('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_topi_GPU_1_of_3(on_demand: true)
+        shard_run_topi_GPU_1_of_3('GPU')
       }
     },
     'topi: GPU 2 of 3': {
       try {
-      shard_run_topi_GPU_2_of_3()
+      shard_run_topi_GPU_2_of_3('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_topi_GPU_2_of_3(on_demand: true)
+        shard_run_topi_GPU_2_of_3('GPU')
       }
     },
     'topi: GPU 3 of 3': {
       try {
-      shard_run_topi_GPU_3_of_3()
+      shard_run_topi_GPU_3_of_3('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_topi_GPU_3_of_3(on_demand: true)
+        shard_run_topi_GPU_3_of_3('GPU')
       }
     },
     'docs: GPU 1 of 1': {
       try {
-      shard_run_docs_GPU_1_of_1()
+      shard_run_docs_GPU_1_of_1('GPU-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_docs_GPU_1_of_1(on_demand: true)
+        shard_run_docs_GPU_1_of_1('GPU')
       }
     },
     )
diff --git a/ci/jenkins/generated/hexagon_jenkinsfile.groovy 
b/ci/jenkins/generated/hexagon_jenkinsfile.groovy
index 920403f8f9..75331a6718 100644
--- a/ci/jenkins/generated/hexagon_jenkinsfile.groovy
+++ b/ci/jenkins/generated/hexagon_jenkinsfile.groovy
@@ -60,7 +60,7 @@
 // 'python3 jenkins/generate.py'
 // Note: This timestamp is here to ensure that updates to the Jenkinsfile are
 // always rebased on main before merging:
-// Generated at 2025-02-06T22:42:26.990110
+// Generated at 2025-02-07T09:50:07.160234
 
 import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
 // These are set at runtime from data in ci/jenkins/docker-images.yml, update
@@ -567,12 +567,9 @@ build()
 
 
 
-def shard_run_test_Hexagon_1_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_1_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -617,12 +614,9 @@ def shard_run_test_Hexagon_1_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_2_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_2_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -666,12 +660,9 @@ def shard_run_test_Hexagon_2_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_3_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_3_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -715,12 +706,9 @@ def shard_run_test_Hexagon_3_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_4_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_4_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -764,12 +752,9 @@ def shard_run_test_Hexagon_4_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_5_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_5_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -813,12 +798,9 @@ def shard_run_test_Hexagon_5_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_6_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_6_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -862,12 +844,9 @@ def shard_run_test_Hexagon_6_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_7_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_7_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -911,12 +890,9 @@ def shard_run_test_Hexagon_7_of_8(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_test_Hexagon_8_of_8(on_demand=false, node_type='CPU-SMALL-SPOT') 
{
+def shard_run_test_Hexagon_8_of_8(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/test-hexagon") {
         // NOTE: if exception happens, it will be caught outside
@@ -969,90 +945,90 @@ def test() {
     parallel(
     'test: Hexagon 1 of 8': {
       try {
-      shard_run_test_Hexagon_1_of_8()
+      shard_run_test_Hexagon_1_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_1_of_8(on_demand: true)
+        shard_run_test_Hexagon_1_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 2 of 8': {
       try {
-      shard_run_test_Hexagon_2_of_8()
+      shard_run_test_Hexagon_2_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_2_of_8(on_demand: true)
+        shard_run_test_Hexagon_2_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 3 of 8': {
       try {
-      shard_run_test_Hexagon_3_of_8()
+      shard_run_test_Hexagon_3_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_3_of_8(on_demand: true)
+        shard_run_test_Hexagon_3_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 4 of 8': {
       try {
-      shard_run_test_Hexagon_4_of_8()
+      shard_run_test_Hexagon_4_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_4_of_8(on_demand: true)
+        shard_run_test_Hexagon_4_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 5 of 8': {
       try {
-      shard_run_test_Hexagon_5_of_8()
+      shard_run_test_Hexagon_5_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_5_of_8(on_demand: true)
+        shard_run_test_Hexagon_5_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 6 of 8': {
       try {
-      shard_run_test_Hexagon_6_of_8()
+      shard_run_test_Hexagon_6_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_6_of_8(on_demand: true)
+        shard_run_test_Hexagon_6_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 7 of 8': {
       try {
-      shard_run_test_Hexagon_7_of_8()
+      shard_run_test_Hexagon_7_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_7_of_8(on_demand: true)
+        shard_run_test_Hexagon_7_of_8('CPU-SMALL')
       }
     },
     'test: Hexagon 8 of 8': {
       try {
-      shard_run_test_Hexagon_8_of_8()
+      shard_run_test_Hexagon_8_of_8('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_test_Hexagon_8_of_8(on_demand: true)
+        shard_run_test_Hexagon_8_of_8('CPU-SMALL')
       }
     },
     )
diff --git a/ci/jenkins/generated/i386_jenkinsfile.groovy 
b/ci/jenkins/generated/i386_jenkinsfile.groovy
index 9bfd7ffcbe..183245838c 100644
--- a/ci/jenkins/generated/i386_jenkinsfile.groovy
+++ b/ci/jenkins/generated/i386_jenkinsfile.groovy
@@ -60,7 +60,7 @@
 // 'python3 jenkins/generate.py'
 // Note: This timestamp is here to ensure that updates to the Jenkinsfile are
 // always rebased on main before merging:
-// Generated at 2025-02-06T22:42:26.964267
+// Generated at 2025-02-07T09:50:07.135264
 
 import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
 // These are set at runtime from data in ci/jenkins/docker-images.yml, update
@@ -563,12 +563,9 @@ build()
 
 
 
-def shard_run_python_i386_1_of_3(on_demand=false, node_type='CPU-SMALL-SPOT') {
+def shard_run_python_i386_1_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-i386") {
         // NOTE: if exception happens, it will be caught outside
@@ -614,12 +611,9 @@ def shard_run_python_i386_1_of_3(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_python_i386_2_of_3(on_demand=false, node_type='CPU-SMALL-SPOT') {
+def shard_run_python_i386_2_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-i386") {
         // NOTE: if exception happens, it will be caught outside
@@ -664,12 +658,9 @@ def shard_run_python_i386_2_of_3(on_demand=false, 
node_type='CPU-SMALL-SPOT') {
   }
 }
 
-def shard_run_python_i386_3_of_3(on_demand=false, node_type='CPU-SMALL-SPOT') {
+def shard_run_python_i386_3_of_3(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if (!skip_ci && is_docs_only_build != 1) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = 'CPU-SMALL'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws("workspace/exec_${env.EXECUTOR_NUMBER}/tvm/integration-python-i386") {
         // NOTE: if exception happens, it will be caught outside
@@ -723,35 +714,35 @@ def test() {
     parallel(
     'python: i386 1 of 3': {
       try {
-      shard_run_python_i386_1_of_3()
+      shard_run_python_i386_1_of_3('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_python_i386_1_of_3(on_demand: true)
+        shard_run_python_i386_1_of_3('CPU-SMALL')
       }
     },
     'python: i386 2 of 3': {
       try {
-      shard_run_python_i386_2_of_3()
+      shard_run_python_i386_2_of_3('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_python_i386_2_of_3(on_demand: true)
+        shard_run_python_i386_2_of_3('CPU-SMALL')
       }
     },
     'python: i386 3 of 3': {
       try {
-      shard_run_python_i386_3_of_3()
+      shard_run_python_i386_3_of_3('CPU-SMALL-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        shard_run_python_i386_3_of_3(on_demand: true)
+        shard_run_python_i386_3_of_3('CPU-SMALL')
       }
     },
     )
diff --git a/ci/jenkins/templates/arm_jenkinsfile.groovy.j2 
b/ci/jenkins/templates/arm_jenkinsfile.groovy.j2
index e9a5bde25e..418f786743 100644
--- a/ci/jenkins/templates/arm_jenkinsfile.groovy.j2
+++ b/ci/jenkins/templates/arm_jenkinsfile.groovy.j2
@@ -39,7 +39,6 @@
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="integration: aarch64",
   num_shards=4,
-  node="ARM-GRAVITON3",
   ws="tvm/ut-python-arm",
   platform="arm",
   docker_image="ci_arm",
@@ -56,7 +55,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="topi: aarch64",
-  node="ARM-GRAVITON3",
   ws="tvm/ut-python-arm",
   platform="arm",
   docker_image="ci_arm",
@@ -80,7 +78,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="frontend: aarch64",
-  node="ARM-GRAVITON3",
   ws="tvm/frontend-python-arm",
   platform="arm",
   docker_image="ci_arm",
@@ -95,4 +92,4 @@
   )
 {% endcall %}
 
-{{ m.invoke_tests(test_method_names) -}}
+{{ m.invoke_tests(node="ARM-GRAVITON3", test_method_names=test_method_names) 
-}}
diff --git a/ci/jenkins/templates/cpu_jenkinsfile.groovy.j2 
b/ci/jenkins/templates/cpu_jenkinsfile.groovy.j2
index f522196939..7e578884f8 100644
--- a/ci/jenkins/templates/cpu_jenkinsfile.groovy.j2
+++ b/ci/jenkins/templates/cpu_jenkinsfile.groovy.j2
@@ -42,7 +42,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="integration: CPU",
-  node="CPU-SMALL",
   num_shards=4,
   ws="tvm/integration-python-cpu",
   platform="cpu",
@@ -59,7 +58,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="unittest: CPU",
-  node="CPU-SMALL",
   ws="tvm/ut-python-cpu",
   platform="cpu",
   num_shards=1,
@@ -73,7 +71,6 @@
 {% endcall %}
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="frontend: CPU",
-  node="CPU-SMALL",
   ws="tvm/frontend-python-cpu",
   platform="cpu",
   num_shards=1,
@@ -88,4 +85,4 @@
   )
 {% endcall %}
 
-{{ m.invoke_tests(test_method_names) -}}
+{{ m.invoke_tests(node="CPU-SMALL", test_method_names=test_method_names) -}}
diff --git a/ci/jenkins/templates/gpu_jenkinsfile.groovy.j2 
b/ci/jenkins/templates/gpu_jenkinsfile.groovy.j2
index 194555f37c..fdef5c96e6 100644
--- a/ci/jenkins/templates/gpu_jenkinsfile.groovy.j2
+++ b/ci/jenkins/templates/gpu_jenkinsfile.groovy.j2
@@ -41,7 +41,6 @@
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="unittest: GPU",
   num_shards=3,
-  node="GPU",
   ws="tvm/ut-python-gpu",
   platform="gpu",
   docker_image="ci_gpu",
@@ -90,7 +89,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="topi: GPU",
-  node="GPU",
   num_shards=3,
   ws="tvm/topi-python-gpu",
   platform="gpu",
@@ -107,7 +105,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="docs: GPU",
-  node="GPU",
   num_shards=1,
   ws="tvm/docs-python-gpu",
   platform="gpu",
@@ -129,7 +126,7 @@
 {% endcall %}
 
 
-{{ m.invoke_tests(test_method_names) }}
+{{ m.invoke_tests(node="GPU", test_method_names=test_method_names) }}
 
 
 def deploy_docs() {
diff --git a/ci/jenkins/templates/hexagon_jenkinsfile.groovy.j2 
b/ci/jenkins/templates/hexagon_jenkinsfile.groovy.j2
index 94ea7dba04..1d3f37131c 100644
--- a/ci/jenkins/templates/hexagon_jenkinsfile.groovy.j2
+++ b/ci/jenkins/templates/hexagon_jenkinsfile.groovy.j2
@@ -43,7 +43,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="test: Hexagon",
-  node="CPU-SMALL",
   ws="tvm/test-hexagon",
   platform="hexagon",
   docker_image="ci_hexagon",
@@ -61,4 +60,4 @@
   )
 {% endcall %}
 
-{{ m.invoke_tests(test_method_names) -}}
+{{ m.invoke_tests(node="CPU-SMALL", test_method_names=test_method_names) -}}
diff --git a/ci/jenkins/templates/i386_jenkinsfile.groovy.j2 
b/ci/jenkins/templates/i386_jenkinsfile.groovy.j2
index 617c3f75e7..382e3bfbe6 100644
--- a/ci/jenkins/templates/i386_jenkinsfile.groovy.j2
+++ b/ci/jenkins/templates/i386_jenkinsfile.groovy.j2
@@ -39,7 +39,6 @@
 
 {% call(shard_index, num_shards) m.sharded_test_step(
   name="python: i386",
-  node="CPU-SMALL",
   num_shards=3,
   ws="tvm/integration-python-i386",
   platform="i386",
@@ -58,4 +57,4 @@
   )
 {% endcall %}
 
-{{ m.invoke_tests(test_method_names) -}}
+{{ m.invoke_tests(node="CPU-SMALL", test_method_names=test_method_names) -}}
diff --git a/ci/jenkins/templates/utils/macros.j2 
b/ci/jenkins/templates/utils/macros.j2
index e95e77c6dc..81eeaa1fdf 100644
--- a/ci/jenkins/templates/utils/macros.j2
+++ b/ci/jenkins/templates/utils/macros.j2
@@ -26,17 +26,14 @@ sh(
           )
 {% endmacro %}
 
-{% macro sharded_test_step(name, num_shards, node, ws, docker_image, platform, 
test_method_names, condition="!skip_ci && is_docs_only_build != 1") %}
+{% macro sharded_test_step(name, num_shards, ws, docker_image, platform, 
test_method_names, condition="!skip_ci && is_docs_only_build != 1") %}
 
 {% for shard_index in range(1, num_shards + 1) %}
 {% set method_name = "shard_run_" + name.replace(":", "").replace(" ", 
"-").replace("-", "_") + "_" + shard_index|string + "_of_" + num_shards|string 
%}
 {% set test_dir_name = name.replace(":", "").replace(" ", "-").replace("-", 
"_")|string %}
-def {{ method_name }}(on_demand=false, node_type='{{ node }}-SPOT') {
+def {{ method_name }}(node_type) {
+  echo 'Begin running on node_type ' + node_type
   if ({{ condition }}) {
-    if (on_demand==true || node_type.contains('ARM')) {
-        node_type = '{{ node }}'
-    }
-    echo 'Begin running on node_type ' + node_type
     node(node_type) {
       ws({{ per_exec_ws(ws) }}) {
         // NOTE: if exception happens, it will be caught outside
@@ -110,7 +107,7 @@ def build() {
 build()
 {% endmacro %}
 
-{% macro invoke_tests(test_method_names) %}
+{% macro invoke_tests(node, test_method_names) %}
 def test() {
   stage('Test') {
     environment {
@@ -120,13 +117,13 @@ def test() {
     {% for stage_name, method_name in test_method_names %}
     '{{ stage_name }}': {
       try {
-      {{ method_name }}()
+      {{ method_name }}('{{ node }}-SPOT')
       } catch (Throwable ex) {
         // mark the current stage as success
         // and try again via on demand node
         echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
         currentBuild.result = 'SUCCESS'
-        {{ method_name }}(on_demand: true)
+        {{ method_name }}('{{ node }}')
       }
     },
     {% endfor %}


Reply via email to