Work to distribute engine dependencies across stacks started.
This change will move dependencies from engine core to stacks,
including openstack client. This requires cloud infra jobs'
delete-stack.sh script to be updated to install openstack clients
without using requirements file since the file will not contain
openstack clients anymore. This is also required to verify changes
coming to engine. Without it, stack deletion fails and change gets -1.
https: //jenkins.nordix.org/job/engine-verify-offline-deploy-test-ubuntu1804-city-cloud-master/50/console
Change-Id: Ic54b1b61047e833e2ee40f9eb860ab43115d73ad
-# NOTE (fdegir): offline installer removes /opt/engine so we prepare venv ourselves for openstack cli
-if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
- sudo /bin/rm -rf /opt/engine/.venv
- virtualenv --python python3 --never-download /opt/engine/.venv
- /bin/cp -f /opt/engine/offline/pip/pip.conf /opt/engine/.venv/
- set +u
- source /opt/engine/.venv/bin/activate
- set -u
- pip install --quiet --upgrade pip
- pip install --quiet -r /opt/engine/offline/git/engine/requirements.txt
- deactivate
-fi
-
+# NOTE (fdegir): install openstack clients
+sudo /bin/rm -rf /tmp/.engine_venv
+virtualenv --python python3 --never-download /tmp/.engine_venv
+# NOTE (fdegir): we need to use pip.conf pointing to local packages
+[[ "$EXECUTION_MODE" == "offline-deployment" ]] && /bin/cp -f /opt/engine/offline/pip/pip.conf /tmp/.engine_venv
-source /opt/engine/.venv/bin/activate
+source /tmp/.engine_venv/bin/activate
+pip install --quiet --upgrade pip
+# NOTE (fdegir): we only install what is needed rather than all dependencies
+pip install --quiet openstacksdk python-openstackclient python-heatclient
+# NOTE (fdegir): delete stack
echo "Info: Deleting stack $HEAT_STACK_NAME and keypair $KEYPAIR_NAME"
echo "-------------------------------------------------------------------------"
source /tmp/openrc && /bin/rm -f /tmp/openrc
echo "Info: Deleting stack $HEAT_STACK_NAME and keypair $KEYPAIR_NAME"
echo "-------------------------------------------------------------------------"
source /tmp/openrc && /bin/rm -f /tmp/openrc
-openstack stack delete $HEAT_STACK_NAME --wait --yes
+openstack stack delete --wait --yes $HEAT_STACK_NAME
openstack keypair delete $KEYPAIR_NAME
echo "-------------------------------------------------------------------------"
echo "Info: Stack $HEAT_STACK_NAME and keypair $KEYPAIR_NAME have been deleted!"
openstack keypair delete $KEYPAIR_NAME
echo "-------------------------------------------------------------------------"
echo "Info: Stack $HEAT_STACK_NAME and keypair $KEYPAIR_NAME have been deleted!"