Build: Do not generate NSPE CMake commands for NSOFF configs
When TF-M config disables NS applications, NSPE CMake commands should
not be generated and run in CI job.
Also, when NSPE build is skipped, build folder "nspe" should not be
archived.
Signed-off-by: Xinyu Zhang <xinyu.zhang@arm.com>
Change-Id: I35b2394c4cce1245d30bcdb7c03c6afd289f648e
diff --git a/jenkins/build-config.jpl b/jenkins/build-config.jpl
index 8d6df40..98cc5ab 100644
--- a/jenkins/build-config.jpl
+++ b/jenkins/build-config.jpl
@@ -35,10 +35,12 @@
}
stage("Post") {
archiveArtifacts 'ci_build/spe/bin/**'
- archiveArtifacts 'ci_build/nspe/bin/**'
- archiveArtifacts 'ci_build/nspe/*.bin'
archiveArtifacts 'ci_build/spe/api_ns/bin/**'
archiveArtifacts 'ci_build/spe/api_ns/interface/**'
+ if (fileExists('ci_build/nspe')) {
+ archiveArtifacts 'ci_build/nspe/bin/**'
+ archiveArtifacts 'ci_build/nspe/*.bin'
+ }
def upstreamProject = getUpstreamJob()[0].upstreamProject
if (upstreamProject == "tf-m-build-and-test") {
archiveArtifacts 'ci_build/spe/build-spe/generated/**'
diff --git a/run-build.sh b/run-build.sh
index c220fad..7a9aec2 100755
--- a/run-build.sh
+++ b/run-build.sh
@@ -119,5 +119,9 @@
rm -rf ci_build/*
eval $spe_cmake_config_cmd
fi
+eval $spe_cmake_build_cmd
-eval "$spe_cmake_build_cmd; $nspe_cmake_config_cmd; $nspe_cmake_build_cmd; $post_build_cmd"
+eval $nspe_cmake_config_cmd
+eval $nspe_cmake_build_cmd
+
+eval $post_build_cmd
diff --git a/tfm_ci_pylib/tfm_build_manager.py b/tfm_ci_pylib/tfm_build_manager.py
index 7721a8c..75a2cd8 100644
--- a/tfm_ci_pylib/tfm_build_manager.py
+++ b/tfm_ci_pylib/tfm_build_manager.py
@@ -418,6 +418,11 @@
build_cfg["nspe_cmake_build"] %= overwrite_params
build_cfg["post_build"] %= overwrite_params
+ # Disable NSPE CMake commands when NS is OFF
+ if "NSOFF" in i.extra_params:
+ build_cfg["nspe_config_template"] = ""
+ build_cfg["nspe_cmake_build"] = ""
+
return build_cfg
def post_eval(self):