Skip to content
Snippets Groups Projects
Commit e6b7547f authored by Chase Qi's avatar Chase Qi Committed by Stevan Radaković
Browse files

.oniro-ci: only run gcc tests when gcc version is changed


Signed-off-by: default avatarChase Qi <chase.qi@linaro.org>
parent bdc90785
No related branches found
No related tags found
No related merge requests found
This commit is part of merge request !252. Comments created here will be created in the context of that merge request.
......@@ -679,6 +679,7 @@ oe-selftest-report:
python3 $CI_PROJECT_DIR/gcc-result-parser.py $sum_file
done
# Upload result to squad.
gcc_version="$(cat gcc_version)"
for result_file in $(ls result_*.json); do
component="$(basename $result_file .json | cut -d'_' -f2-)"
job_id="$job-$component"
......@@ -686,7 +687,7 @@ oe-selftest-report:
--header "Auth-Token: $CI_SQUAD_TOKEN" \
https://squadp.svc.ostc-eu.dev/api/submit/oniro-core/gcc-test/$CI_PIPELINE_ID/$test_env \
--form tests=@$result_file \
--form metadata='{"job_id": "'$job_id'"}'
--form "metadata={\"job_id\": \"$job_id\", \"gcc_version\": \"$gcc_version\"}"
done
)
done
......
......@@ -485,6 +485,7 @@
CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu"
CI_ONIRO_OE_SELFTESTS: ""
CI_ONIRO_OE_SEFLTEST_SKIPS: ""
CI_SQUAD_INSTANCE: "https://squadp.svc.ostc-eu.dev"
# The USER variable is required by oe-selftest but missing in env.
USER: "builder"
ARTIFACTS_DIR: "$CI_PROJECT_DIR/artifacts/$CI_JOB_NAME"
......@@ -493,6 +494,19 @@
echo "nothing to test - CI_ONIRO_OE_SELFTESTS is empty"
&& exit 1 )
- !reference [.bitbake-workspace, script]
# Only run tests when gcc version changed.
- gcc_version="$(bitbake -s | grep '^gcc-runtime' | awk -F':' '{print $NF}' | head -1 | awk '{$1=$1;print}')"
- echo "Current GCC version $gcc_version"
- last_build_id="$(curl --silent $CI_SQUAD_INSTANCE/api/projects/5/builds/ | jq -r '.results | .[] | .id' | head -1)"
- last_tested_gcc_version="$(curl --silent $CI_SQUAD_INSTANCE/api/builds/$last_build_id/metadata/ | jq -r '.gcc_version')"
- echo "The last tested GCC version $last_tested_gcc_version"
- |
if [ "$gcc_version" != "$last_tested_gcc_version" ]; then
echo "GCC verion changed, about to test the new version ..."
else
echo "GCC verion not changed, skipping gcc tests ..."
exit 0
fi
# oe-selftest inherits the current 'build/conf/local.conf' to create
# '../build-st/conf/local.conf' for qemu image building. Adding the
# MACHINE variable to the current local conf allows test job to customize
......@@ -504,6 +518,7 @@
- find ../build-st \( -name "*.sum" -o -name "*.log" \) \( -path "*/gcc-runtime/*testsuite*" \)
-exec cp --verbose {} "$ARTIFACTS_DIR" \;
- for file in $(find "$ARTIFACTS_DIR" -type f); do xz $file; done
- echo "$gcc_version" > $ARTIFACTS_DIR/gcc_version
- rm -rf ../build-st
artifacts:
paths:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment