fix(ci):add covetrace.so plugin on local ci run
Fix for run_config fragments to prevent covetrace plugin
errors. When running on local ci, the covtrace plugin will be
downloaded from tfa/downloads and set as bmcov plugin path to
mitigate the past errors of the plugin not being present.
The covetrace plugin is downloaded as the warehouse does not
host the plugin.
Signed-off-by: Thaddeus Gonzalez-Serna <Thaddeus.Gonzalez-Serna@arm.com>
Change-Id: Ie776d24079d787cd2331f1ac4acb6181ed38ba24
diff --git a/fvp_utils.sh b/fvp_utils.sh
index 1702869..0e186b0 100644
--- a/fvp_utils.sh
+++ b/fvp_utils.sh
@@ -348,7 +348,7 @@
[cactus_primary]="$(gen_bin_url cactus-primary.pkg)"
[cactus_secondary]="$(gen_bin_url cactus-secondary.pkg)"
[cactus_tertiary]="$(gen_bin_url cactus-tertiary.pkg)"
- [coverage_trace_plugin]="${coverage_trace_plugin}"
+ [coverage_trace_plugin]="$(gen_cc_url)"
[dtb]="$(gen_bin_url ${model_dtb})"
[el3_payload]="$(gen_bin_url el3_payload.bin)"
[etm_trace]="${tfa_downloads}/FastModelsPortfolio_${model_version}/plugins/${model_flavour}/ETMv4ExamplePlugin.so"
diff --git a/model/base-aemv8a.sh b/model/base-aemv8a.sh
index 6f52278..61a5533 100644
--- a/model/base-aemv8a.sh
+++ b/model/base-aemv8a.sh
@@ -10,6 +10,8 @@
set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_RevC-2xAEMvA"
default_var etm_plugin_path "$warehouse/SysGen/PVModelLib/$model_version/$model_build/external/plugins/$model_flavour/ETMv4ExamplePlugin.so"
+
+ default_var bmcov_plugin_path "$workspace/artefacts/${bin_mode:?}/coverage_trace.so"
else
# OpenCI enviroment
source "$ci_root/fvp_utils.sh"
diff --git a/utils.sh b/utils.sh
index 00f4797..b154773 100644
--- a/utils.sh
+++ b/utils.sh
@@ -187,6 +187,26 @@
fi
}
+# Generate link for code coverage plugin
+gen_cc_url(){
+ local filename="coverage_trace.so"
+
+ if upon "$jenkins_run"; then
+ echo "${coverage_trace_plugin}"
+ else
+
+ local url="https://downloads.trustedfirmware.org/coverage-plugin/qa-tools/coverage-tool/coverage-plugin/${filename}"
+ local local_path="$workspace/artefacts/${bin_mode:?}/${filename}"
+
+ mkdir -p "$(dirname "$local_path")"
+ url="$url" saveas="$local_path" fetch_file
+ coverage_trace_plugin=$local_path
+
+ echo $coverage_trace_plugin
+ fi
+
+}
+
get_boot_image() {
local image=${image:?}
local type=${type:?}