summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Alfonsi <laurent.alfonsi@linaro.org>2022-08-11 17:03:16 +0200
committerLaurent Alfonsi <laurent.alfonsi@linaro.org>2022-08-11 22:22:51 +0200
commit42b5d81f3a22b5b39ac91a2defc2984725d4df8a (patch)
tree654baaaf96e369c7bca2173fdc6516a1ef4a1b84
parent8d0783f72d656f3b9995f1113f01ce70a8b982f2 (diff)
tcwg-wip/push-results-to-squad.sh: fix date, improve readability
Change-Id: I0fbfd9b45fb32935ae32f302831525858b918388
-rwxr-xr-xtcwg-wip/push-all-projects.sh2
-rwxr-xr-xtcwg-wip/push-results-to-squad.sh69
2 files changed, 43 insertions, 28 deletions
diff --git a/tcwg-wip/push-all-projects.sh b/tcwg-wip/push-all-projects.sh
index b3f5a25d..c67ea99b 100755
--- a/tcwg-wip/push-all-projects.sh
+++ b/tcwg-wip/push-all-projects.sh
@@ -1,4 +1,4 @@
-#!/bin/bash -fx
+#!/bin/bash -fxe
# https://qa-reports.linaro.org/~laurent.alfonsi/tcwg_bmk_ci_gnu-build-tcwg_bmk_apm-gnu-master-aarch64-spec2k6-Os_LTO
./jenkins-scripts/tcwg-wip/push-results-to-squad.sh --branch linaro-local/ci/tcwg_bmk_gnu_apm/gnu-master-aarch64-spec2k6-Os_LTO
diff --git a/tcwg-wip/push-results-to-squad.sh b/tcwg-wip/push-results-to-squad.sh
index 7ec11d5e..7734520a 100755
--- a/tcwg-wip/push-results-to-squad.sh
+++ b/tcwg-wip/push-results-to-squad.sh
@@ -34,6 +34,14 @@ verbose()
fi
}
+error()
+{
+ echo ""
+ echo "ERROR : $*"
+ echo ""
+ exit 1
+}
+
first_time=true
clean_squad_project_if_first_time()
{
@@ -54,14 +62,14 @@ get_infos_from_artifacts ()
git -C $artifact_dir reset -q --hard
git -C $artifact_dir checkout -q -f $artifacts_sha1
- local fn=manifest.sh
- if [ ! -f $fn ]; then
- fn=jenkins/manifest.sh
- fi
+ local manifest
+ [ -f "$artifacts_dir/manifest.sh" ] && manifest=manifest.sh
+ [ -f "$artifacts_dir/jenkins/manifest.sh" ] && manifest=jenkins/manifest.sh
+ [ x"$manifest" == x"" ] && error "Manifest not found"
declare -A rr
# shellcheck disable=SC1090
- source $artifacts_dir/$fn
+ source $artifacts_dir/$manifest
if [ -d $artifacts_dir/dashboard ]; then
# Use dashboard directory
@@ -75,30 +83,37 @@ get_infos_from_artifacts ()
project_run['url']="$BUILD_URL"
# tool versions
- set -x
project_run['version_binutils']=${rr[binutils_rev]}
project_run['version_gcc']=${rr[gcc_rev]}
- set +x
project_run['version_glibc']=${rr[glibc_rev]}
project_run['version_linux']=${rr[linux_rev]}
[ -v "rr[llvm_rev]" ] && project_run['version_llvm']=${rr[llvm_rev]}
# url
- project_run['artifacts_baseurl']="https://git.linaro.org/toolchain/ci/base-artifacts.git/tree"
- project_run['artifacts_branch_and_version']="h=$artifacts_branch&id=$artifacts_sha1"
- project_run['artifacts_results']="${project_run['artifacts_baseurl']}/?${project_run['artifacts_branch_and_version']}"
+ project_run['artifacts_url_base']="https://git.linaro.org/toolchain/ci/base-artifacts.git/tree"
+ project_run['artifacts_url_branch_and_version']="h=$artifacts_branch&id=$artifacts_sha1"
+ project_run['artifacts_url_results']="${project_run['artifacts_url_base']}/?${project_run['artifacts_url_branch_and_version']}"
# relative to artifact topdir
benchmark_dir=$(cd $artifacts_dir && find . -maxdepth 2 -name "*-benchmark")
+ [ x"$benchmark_dir" == x"" ] && error "Benchmark dir not found"
+
check_regression_dir=$(cd $artifacts_dir && find . -maxdepth 2 -name "*-check_regression")
- project_run['manifest']="manifest.sh"
- if [ ! -f $artifacts_dir/${project_run['manifest']} ]; then
- project_run['manifest']="jenkins/manifest.sh"
- fi
+ [ x"$check_regression_dir" == x"" ] && error "Regression dir not found"
- project_run['benchmark_log']="$benchmark_dir/benchmark-build.log"
- project_run['results_csv']="$check_regression_dir/csv-results-1/results.csv"
- project_run['datetime']=$(date --iso-8601=seconds -r $artifacts_dir/${project_run['manifest']})
+ [ -f "$artifacts_dir/manifest.sh" ] && project_run['manifest']="manifest.sh"
+ [ -f "$artifacts_dir/jenkins/manifest.sh" ] && project_run['manifest']="jenkins/manifest.sh"
+ [ x"${project_run['manifest']}" == x"" ] && error "Manifest not found"
+
+ [ -f "$artifacts_dir/$benchmark_dir/benchmark-build.log" ] && project_run['benchmark_log']="$benchmark_dir/benchmark-build.log"
+ [ -f "$artifacts_dir/$benchmark_dir/benchmark.log" ] && project_run['benchmark_log']="$benchmark_dir/benchmark.log"
+ [ x"${project_run['benchmark_log']}" == x"" ] && error "Benchmark log not found"
+
+ [ -f "$artifacts_dir/$check_regression_dir/csv-results-1/results.csv" ] && project_run['results_csv']="$check_regression_dir/csv-results-1/results.csv"
+ [ -f "$artifacts_dir/$check_regression_dir/results-1.csv" ] && project_run['results_csv']="$check_regression_dir/results-1.csv"
+ [ x"${project_run['results_csv']}" == x"" ] && error "results.csv log not found"
+
+ project_run['datetime']=$(git -C $artifact_dir show --no-patch --format=%cI)
fi
}
@@ -129,14 +144,14 @@ parse_results_csv_files()
;;
888888888)
project_results["func:$bench"]="run_fail"
- [ $size != "-1" ] && project_results["size:$bench"]="$size"
[ $vect != "-1" ] && project_results["vect:$bench"]="$vect"
+ [ $size != "-1" ] && project_results["size:$bench"]="$size"
# project_results["perf:$bench"]=""
;;
*)
project_results["func:$bench"]="pass"
- [ $size != "-1" ] && project_results["size:$bench"]="$size"
[ $vect != "-1" ] && project_results["vect:$bench"]="$vect"
+ [ $size != "-1" ] && project_results["size:$bench"]="$size"
[ $perf != "-1" ] && project_results["perf:$bench"]="$perf"
;;
esac
@@ -205,8 +220,8 @@ dump_json_for_squad()
resfile=$outdir/$bench/results-metrics.json
echo "{" >> $resfile
[ -v project_results["perf:$bench"] ] && echo " \"perf\" : \"${project_results["perf:$bench"]}\"," >> $resfile
- [ -v project_results["vect:$bench"] ] && echo " \"vect\" : \"${project_results["vect:$bench"]}\"," >> $resfile
- [ -v project_results["size:$bench"] ] && echo " \"size\" : \"${project_results["size:$bench"]}\"" >> $resfile
+ [ -v project_results["size:$bench"] ] && echo " \"size\" : \"${project_results["size:$bench"]}\"," >> $resfile
+ [ -v project_results["vect:$bench"] ] && echo " \"vect\" : \"${project_results["vect:$bench"]}\"" >> $resfile
echo "}" >> $resfile
resfile=$outdir/$bench/results-metadata.json
@@ -225,12 +240,12 @@ dump_json_for_squad()
[ -v project_run['version_llvm'] ] && echo " \"version_llvm\": \"${project_run['version_llvm']}\"," >> $resfile
# links to base-artifacts
- echo " \"artifact_results\": " \
- "\"${project_run['artifacts_baseurl']}/?${project_run['artifacts_branch_and_version']}\"," >> $resfile
- echo " \"build_manifest\": "\
- "\"${project_run['artifacts_baseurl']}/${project_run['manifest']}?${project_run['artifacts_branch_and_version']}\"," >> $resfile
- echo " \"benchmark_log\": "\
- "\"${project_run['artifacts_baseurl']}/${project_run['benchmark_log']}?${project_run['artifacts_branch_and_version']}\"" >> $resfile
+ echo " \"artifact_results\": \"${project_run['artifacts_url_base']}/" \
+ "?${project_run['artifacts_url_branch_and_version']}\"," >> $resfile
+ echo " \"build_manifest\": \"${project_run['artifacts_url_base']}/" \
+ "${project_run['manifest']}?${project_run['artifacts_url_branch_and_version']}\"," >> $resfile
+ echo " \"benchmark_log\": \"${project_run['artifacts_url_base']}/"\
+ "${project_run['benchmark_log']}?${project_run['artifacts_url_branch_and_version']}\"" >> $resfile
echo "}" >> $resfile