# lib/template # Functions to control the configuration and operation of the XXXX service # # Dependencies: # ``functions`` file # ``SERVICE_{TENANT_NAME|PASSWORD}`` must be defined # # ``stack.sh`` calls the entry points in this order: # # install_XXXX # configure_XXXX # init_XXXX # start_XXXX # stop_XXXX # cleanup_XXXX # Save trace setting XTRACE=$(set +o | grep xtrace) set +o xtrace # Defaults # -------- # # Set up default directories XXXX_DIR=$DEST/XXXX XXX_CONF_DIR=/etc/XXXX # Entry Points # ------------ # cleanup_XXXX() - Remove residual data files, anything left over from previous # runs that a clean run would need to clean up function cleanup_XXXX() { # kill instances (nova) # delete image files (glance) # This function intentionally left blank : } # configure_XXXX() - Set config files, create data dirs, etc function configure_XXXX() { # sudo python setup.py deploy # iniset $XXXX_CONF ... # This function intentionally left blank : } # init_XXXX() - Initialize databases, etc. function init_XXXX() { # clean up from previous (possibly aborted) runs # create required data files : } # install_XXXX() - Collect source and prepare function install_XXXX() { # git clone xxx : } # start_XXXX() - Start running processes, including screen function start_XXXX() { # screen_it XXXX "cd $XXXX_DIR && $XXXX_DIR/bin/XXXX-bin" : } # stop_XXXX() - Stop running processes (non-screen) function stop_XXXX() { # FIXME(dtroyer): stop only our screen screen window? : } # Restore xtrace $XTRACE # Local variables: # mode: shell-script # End: