# lib/oslo # # Functions to install oslo libraries from git # # We need this to handle the fact that projects would like to use # pre-released versions of oslo libraries. # Dependencies: # # - ``functions`` file # ``stack.sh`` calls the entry points in this order: # # - install_oslo # Save trace setting XTRACE=$(set +o | grep xtrace) set +o xtrace # Defaults # -------- CLIFF_DIR=$DEST/cliff OSLOCFG_DIR=$DEST/oslo.config OSLOMSG_DIR=$DEST/oslo.messaging OSLORWRAP_DIR=$DEST/oslo.rootwrap OSLOVMWARE_DIR=$DEST/oslo.vmware PYCADF_DIR=$DEST/pycadf STEVEDORE_DIR=$DEST/stevedore TASKFLOW_DIR=$DEST/taskflow # Entry Points # ------------ # install_oslo() - Collect source and prepare function install_oslo { # TODO(sdague): remove this once we get to Icehouse, this just makes # for a smoother transition of existing users. cleanup_oslo git_clone $CLIFF_REPO $CLIFF_DIR $CLIFF_BRANCH setup_install $CLIFF_DIR git_clone $OSLOCFG_REPO $OSLOCFG_DIR $OSLOCFG_BRANCH setup_install $OSLOCFG_DIR git_clone $OSLOMSG_REPO $OSLOMSG_DIR $OSLOMSG_BRANCH setup_install $OSLOMSG_DIR git_clone $OSLORWRAP_REPO $OSLORWRAP_DIR $OSLORWRAP_BRANCH setup_install $OSLORWRAP_DIR git_clone $OSLOVMWARE_REPO $OSLOVMWARE_DIR $OSLOVMWARE_BRANCH setup_install $OSLOVMWARE_DIR git_clone $PYCADF_REPO $PYCADF_DIR $PYCADF_BRANCH setup_install $PYCADF_DIR git_clone $STEVEDORE_REPO $STEVEDORE_DIR $STEVEDORE_BRANCH setup_install $STEVEDORE_DIR git_clone $TASKFLOW_REPO $TASKFLOW_DIR $TASKFLOW_BRANCH setup_install $TASKFLOW_DIR } # cleanup_oslo() - purge possibly old versions of oslo function cleanup_oslo { # this means we've got an old oslo installed, lets get rid of it if ! python -c 'import oslo.config' 2>/dev/null; then echo "Found old oslo.config... removing to ensure consistency" local PIP_CMD=$(get_pip_command) pip_install oslo.config sudo $PIP_CMD uninstall -y oslo.config fi } # Restore xtrace $XTRACE # Tell emacs to use shell-script-mode ## Local variables: ## mode: shell-script ## End: