summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFatih Degirmenci <fdegir@gmail.com>2018-03-17 11:30:55 +0100
committerFatih Degirmenci <fdegir@gmail.com>2018-03-17 22:56:58 +0100
commit1ea49c012c2de38312a6572ef47125af29a8b917 (patch)
tree5aaacd6770fceba005dc8d66fb491286a3adfd11
parent2f32671b8a98612a3a595590addf758f6e457d7c (diff)
xci: Adjust the recorded scenario metadata for promotion
PROJECT_NAME is added into scenario metadata to use for promotion and xci dashboard. Also, the metadata collected is aligned across different type of patches including the skipped ones. Change-Id: I3751884b48f5d9306d0cae35c757b976484b26a3 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
-rwxr-xr-xjjb/xci/xci-set-scenario.sh36
1 files changed, 21 insertions, 15 deletions
diff --git a/jjb/xci/xci-set-scenario.sh b/jjb/xci/xci-set-scenario.sh
index c602957a9..c3012cd88 100755
--- a/jjb/xci/xci-set-scenario.sh
+++ b/jjb/xci/xci-set-scenario.sh
@@ -42,20 +42,22 @@ set -o pipefail
function override_generic_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
+ # ensure the metadata we record is consistent for all types of patches including skipped ones
+ # extract releng-xci sha
+ XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
+
+ # extract scenario sha which is same as releng-xci sha for generic scenarios
+ SCENARIO_SHA=$XCI_SHA
+
# process topic branch names
- if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then
- # skip the real verification
- echo "Skipping verify!"
- echo "INSTALLER_TYPE=osa" > $WORK_DIRECTORY/scenario.properties
- echo "DEPLOY_SCENARIO=os-nosdn-nofeature" >> $WORK_DIRECTORY/scenario.properties
- exit 0
- elif [[ "$GERRIT_TOPIC" =~ 'force-verify' ]]; then
- # Run the deployment with default installer and scenario when multiple things change
- # and we want to force that.
- echo "Recording the installer 'osa' and scenario 'os-nosdn-nofeature' for downstream jobs"
- echo "Forcing CI verification of default scenario and installer!"
+ if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment|force-verify ]]; then
+ [[ "$GERRIT_TOPIC" =~ force-verify ]] && echo "Forcing CI verification using default scenario and installer!"
+ [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]] && echo "Skipping verification!"
echo "INSTALLER_TYPE=osa" > $WORK_DIRECTORY/scenario.properties
echo "DEPLOY_SCENARIO=os-nosdn-nofeature" >> $WORK_DIRECTORY/scenario.properties
+ echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
+ echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties
+ echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties
exit 0
fi
@@ -70,6 +72,9 @@ function override_generic_scenario() {
echo "Recording the installer '$INSTALLER_TYPE' and scenario '$DEPLOY_SCENARIO' for downstream jobs"
echo "INSTALLER_TYPE=$INSTALLER_TYPE" > $WORK_DIRECTORY/scenario.properties
echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> $WORK_DIRECTORY/scenario.properties
+ echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
+ echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties
+ echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties
exit 0
fi
else
@@ -110,10 +115,10 @@ function determine_generic_scenario() {
done
# extract releng-xci sha
- RELENG_XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
+ XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
# extract scenario sha which is same as releng-xci sha for generic scenarios
- SCENARIO_SHA=$RELENG_XCI_SHA
+ SCENARIO_SHA=$XCI_SHA
}
# This function determines the impacted external scenario by processing the Gerrit
@@ -142,7 +147,7 @@ function determine_external_scenario() {
DEPLOY_SCENARIO+=$(git diff HEAD^..HEAD --name-only | grep scenarios | awk -F '[/|/]' '{print $2}' | uniq)
# extract releng-xci sha
- RELENG_XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
+ XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
# extract scenario sha
SCENARIO_SHA=$(cd $WORK_DIRECTORY/$GERRIT_PROJECT && git rev-parse HEAD)
@@ -194,8 +199,9 @@ esac
echo "Recording the installer '$INSTALLER_TYPE' and scenario '${DEPLOY_SCENARIO[0]}' and SHAs for downstream jobs"
echo "INSTALLER_TYPE=$INSTALLER_TYPE" > $WORK_DIRECTORY/scenario.properties
echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> $WORK_DIRECTORY/scenario.properties
-echo "RELENG_XCI_SHA=$RELENG_XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
+echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties
+echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties
# skip scenario support check if the job is promotion job
if [[ "$JOB_NAME" =~ (os|k8) ]]; then