summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkos Chandras <mchandras@suse.de>2018-04-04 17:19:43 +0100
committerMarkos Chandras <mchandras@suse.de>2018-04-06 09:28:21 +0100
commitb2a1fdfe53c03b730544d714da1547cb29b25ae2 (patch)
treea26776e97fbd4dce3f3f9a90abe850f7a58974f9
parentfb96fbe53f53dd044281e944daf6b7f892c11c8d (diff)
jjb: xci: xci-set-scenario: Allow automatic detection of generic scenarios
The list of supported scenarios is hardcoded and this makes it difficult to test new scenarios. As such, lets determine the scenario and the installer based on the actual files that have been changed on every patchset. Change-Id: I4868a1da08d58cd6ff37347a0c0bc5c5e28b15bb Signed-off-by: Markos Chandras <mchandras@suse.de>
-rwxr-xr-xjjb/xci/xci-set-scenario.sh20
1 files changed, 10 insertions, 10 deletions
diff --git a/jjb/xci/xci-set-scenario.sh b/jjb/xci/xci-set-scenario.sh
index c3012cd88..3e64ab140 100755
--- a/jjb/xci/xci-set-scenario.sh
+++ b/jjb/xci/xci-set-scenario.sh
@@ -96,22 +96,22 @@ function determine_generic_scenario() {
# get the changeset
cd $WORKSPACE
- CHANGESET=$(git diff HEAD^..HEAD --name-only)
- for CHANGED_FILE in $CHANGESET; do
+ SCENARIOS=$(git diff HEAD^..HEAD --name-only -- 'xci/scenarios' | cut -d "/" -f 3 | uniq)
+ # We need to set default scenario for changes that do not mess with scenarios
+ NO_SCENARIOS=$(git diff HEAD^..HEAD --name-only | grep -v 'xci/scenarios' | cut -d "/" -f 3 | uniq)
+ for CHANGED_SCENARIO in $SCENARIOS; do
+ [[ ${DEPLOY_SCENARIO[@]} =~ $CHANGED_SCENARIO ]] || DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]=$CHANGED_SCENARIO
+ done
+ for CHANGED_FILE in $NO_SCENARIOS; do
case $CHANGED_FILE in
- *k8-nosdn*|*kubespray*)
+ kubespray)
[[ ${DEPLOY_SCENARIO[@]} =~ "k8-nosdn-nofeature" ]] || DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='k8-nosdn-nofeature'
;;
- *os-odl*)
- [[ ${DEPLOY_SCENARIO[@]} =~ "os-odl-nofeature" ]] || DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-odl-nofeature'
- ;;
- *os-nosdn*|*osa*)
- [[ ${DEPLOY_SCENARIO[@]} =~ "os-nosdn-nofeature" ]] || DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-nosdn-nofeature'
- ;;
+ # Default case (including OSA changes)
*)
[[ ${DEPLOY_SCENARIO[@]} =~ "os-nosdn-nofeature" ]] || DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-nosdn-nofeature'
;;
- esac
+ esac
done
# extract releng-xci sha