engine: Implement change dependency handling
[infra/cicd.git] / jjb / engine / scripts / package.sh
index 11700a957da2e89dc8933ea9ae1f052c5f789faa..bcebb6cde7c08135f17eb2b5dbdf1d2a13a70f7b 100755 (executable)
@@ -22,10 +22,26 @@ set -o nounset
 set -o errexit
 set -o pipefail
 
-source "$WORKSPACE/change.properties"
-echo "Info  : Packaging stack $STACK_TO_PACKAGE"
+# NOTE (fdegir): we need to remove $WORKSPACE and clone infra/engine repository
+# as infra/engine is what drives the deployment
+if [[ "$GERRIT_PROJECT" != "infra/engine" ]]; then
+  cd "$HOME" && /bin/rm -rf "$WORKSPACE"
+  echo "Info : Cloning infra/engine repository"
+  git clone -q https://gerrit.nordix.org/infra/engine.git "$WORKSPACE"
+  cd "$WORKSPACE"
+fi
+
+# NOTE (fdegir): this variable is set by generate-change-metadata.sh script
+# if a dependency to engine repo is determined so we check out that refspec
+# to ensure we respect the dependency
+if [[ ! -z "${NORDIX_ENGINE_REFSPEC+x}" ]]; then
+  echo "Info  : Fetching dependent change ${NORDIX_ENGINE_REFSPEC} infra/engine"
+  git fetch "https://gerrit.nordix.org/infra/engine" ${NORDIX_ENGINE_REFSPEC} && git checkout FETCH_HEAD
+fi
+
+echo "Info  : Packaging stack $STACK_TYPE"
 
 cd "$WORKSPACE/engine"
-./package.sh -s "$STACK_TO_PACKAGE" -d
+./package.sh -s "$STACK_TYPE" -b "$STACK_VERSION" -d "$DISTRO" -v
 
 # vim: set ts=2 sw=2 expandtab: