set -o nounset
set -o pipefail
-# this function processes commit message to determine the impacted scenario
-# using the input provided by the committer.
-#
-# installer type and scenario should be placed at the beginning of lines
-# separately and the format of the entry in commit message is as below
-#
-# installer-type: <installer type>
-# deploy-scenario: <scenario name>
-#
-# example is
-#
-# installer-type: kubespray
-# deploy-scenario: k8-calico-nofeature
-function override_installer_scenario() {
- echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC to determine the installer and the scenario"
- cd $WORKSPACE
- COMMIT_MESSAGE=$(git show -s --format=%B)
-
- if [[ "$COMMIT_MESSAGE" =~ "deploy-scenario:" && "$COMMIT_MESSAGE" =~ "installer-type:" ]]; then
- export INSTALLER_TYPE=$(echo "$COMMIT_MESSAGE" | grep '^installer-type:' | cut -d":" -f2 | sed 's/\s*//g')
- export DEPLOY_SCENARIO=$(echo "$COMMIT_MESSAGE" | grep '^deploy-scenario:' | cut -d":" -f2 | sed 's/\s*//g')
- generate_temporary_sdf
- else
- echo "Installer type or deploy scenario is not specified."
- echo "Falling back to programmatically determining them."
- determine_scenario
- fi
-}
-
-# this function will process the changed files to determine the impacted scenario
-# if it is no specified by the committer. only one scenario per change should be
-# touched.
-# TODO: this is not implented yet.
-function determine_scenario() {
- echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
- cd $WORKSPACE
- COMMIT_MESSAGE=$(git show -s --format=%B)
- echo "Not implemented!"
- exit 1
-}
-
-# this function generates temporary sdf file with the details of the impacted
-# scenario.
-function generate_temporary_sdf() {
-echo "Generating temporary SDF to use for verification"
- cat << EOF > $WORKSPACE/sdf.yml
-scenario:
- $DEPLOY_SCENARIO:
- scm: git
- src: $PROJECT_GIT_URL
- version: $GERRIT_PATCHSET_REVISION
- refspec: $GERRIT_REFSPEC
- installers:
- $INSTALLER_TYPE:
- role: scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO
- distros:
- - ubuntu
-EOF
-}
-
-echo "Determining the impacted scenario"
-
-declare -a DEPLOY_SCENARIO
-
-override_installer_scenario
-generate_temporary_sdf
-
# determine PDF
if [[ $DEPLOY_TYPE == "baremetal" ]]; then
PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-pdf.yml"
fi
# clone infra/engine repository
-echo "Deploying scenario $DEPLOY_SCENARIO using $INSTALLER_TYPE"
-cd $WORKSPACE && git clone -q $ENGINE_REPO_URL
-cd engine
-./engine/deploy.sh -d kubespray -s $DEPLOY_SCENARIO -p $PDF -i $IDF -b $WORKSPACE/sdf.yml -c
+echo "Info: Deploying scenario $DEPLOY_SCENARIO using $INSTALLER_TYPE"
+cd $WORKSPACE
+./engine/deploy.sh -d $INSTALLER_TYPE -s $DEPLOY_SCENARIO -p $PDF -i $IDF -b file://$WORKSPACE/sdf.yml -c
# vim: set ts=2 sw=2 expandtab: