lib/stackforge
6832272a
 # lib/stackforge
 #
 # Functions to install stackforge libraries that we depend on so
 # that we can try their git versions during devstack gate.
 #
 # This is appropriate for python libraries that release to pypi and are
 # expected to be used beyond OpenStack like, but are requirements
 # for core services in global-requirements.
d8864fea
 #
 #     * wsme
 #     * pecan
6832272a
 #
 # This is not appropriate for stackforge projects which are early stage
 # OpenStack tools
 
 # Dependencies:
 # ``functions`` file
 
 # ``stack.sh`` calls the entry points in this order:
 #
 # install_stackforge
 
 # Save trace setting
 XTRACE=$(set +o | grep xtrace)
 set +o xtrace
 
 
 # Defaults
 # --------
 WSME_DIR=$DEST/wsme
 PECAN_DIR=$DEST/pecan
 
 # Entry Points
 # ------------
 
 # install_stackforge() - Collect source and prepare
aee18c74
 function install_stackforge {
6832272a
     # TODO(sdague): remove this once we get to Icehouse, this just makes
     # for a smoother transition of existing users.
     cleanup_stackforge
 
     git_clone $WSME_REPO $WSME_DIR $WSME_BRANCH
099e5e3f
     setup_package $WSME_DIR
6832272a
 
     git_clone $PECAN_REPO $PECAN_DIR $PECAN_BRANCH
099e5e3f
     setup_package $PECAN_DIR
6832272a
 }
 
 # cleanup_stackforge() - purge possibly old versions of stackforge libraries
aee18c74
 function cleanup_stackforge {
6832272a
     # this means we've got an old version installed, lets get rid of it
     # otherwise python hates itself
     for lib in wsme pecan; do
         if ! python -c "import $lib" 2>/dev/null; then
             echo "Found old $lib... removing to ensure consistency"
             local PIP_CMD=$(get_pip_command)
             pip_install $lib
             sudo $PIP_CMD uninstall -y $lib
         fi
     done
 }
 
 # Restore xtrace
 $XTRACE
 
 # Local variables:
 # mode: shell-script
 # End: