X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Fsite_avenger%2Fstandup.sh;h=56684b9cefd8d3bbdc06bb433f6345cb05be7d71;hb=c589a3686d4508c9c5ea7841deb9be251460ddc3;hp=3bb327f20f87f61ccca2807e3ec0c9107fa084ff;hpb=d1413a80a384c0849c18466ff06d3054de7fc2f6;p=feisty_meow.git diff --git a/scripts/site_avenger/standup.sh b/scripts/site_avenger/standup.sh index 3bb327f2..56684b9c 100644 --- a/scripts/site_avenger/standup.sh +++ b/scripts/site_avenger/standup.sh @@ -7,8 +7,9 @@ # is much more powerful if the site is based on cakephp and site avenger. export WORKDIR="$( \cd "$(\dirname "$0")" && \pwd )" # obtain the script's working directory. +export FEISTY_MEOW_APEX="$( \cd "$WORKDIR/../.." && \pwd )" -source "$WORKDIR/shared_site_mgr.sh" +source "$FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh" ############################ @@ -18,6 +19,13 @@ function print_instructions() echo "$(basename $0 .sh) {app name}" echo echo " +$(basename $0 .sh) will completely set up a web site, including a domain +name and an apache configuration file. The site will be acquired from a +git repository and configured. At the end of this script, the result should +be an almost working website; you may need to fix the site configuration, +create databases and so forth. + +This script must be run as sudo or root; it makes changes to system files. app name: The app name parameter is mandatory. The configuration file for this script will be derived from the app name (e.g. if the app name is MyApp, then the config file will be 'MyApp.config'). The config files are by @@ -32,13 +40,20 @@ overridden by setting the SITE_MANAGEMENT_CONFIG_FILE environment variable." # check for parameters. app_dirname="$1"; shift -repo_name="$1"; shift -theme_name="$1"; shift if [ "$app_dirname" == "-help" -o "$app_dirname" == "--help" ]; then print_instructions +elif [ -z "$app_dirname" ]; then + print_instructions fi +if [[ $EUID != 0 ]]; then + echo "This script must be run as root or sudo." + exit 1 +fi + +source "$WORKDIR/shared_site_mgr.sh" + sep check_application_dir "$APPLICATION_DIR" @@ -51,36 +66,21 @@ else test_app_folder "$APPLICATION_DIR" "$app_dirname" fi -# where we expect to find our checkout folder underneath. -full_app_dir="$APPLICATION_DIR/$app_dirname" - -# use our default values for the repository and theme if they're not provided. -if [ -z "$repo_name" ]; then - repo_name="$app_dirname" -fi -if [ -z "$theme_name" ]; then - theme_name="$(capitalize_first_char ${app_dirname})" -fi +add_domain "$DOMAIN_NAME" +test_or_die "Setting up domain: $DOMAIN_NAME" -echo "Repository: $repo_name" -echo "Theme name: $theme_name" sep -# this should set the site_store_path variable if everything goes well. -update_repo "$full_app_dir" "$CHECKOUT_DIR_NAME" "$DEFAULT_REPOSITORY_ROOT" "$repo_name" -test_or_die "Updating the repository storage directory" - -# update the site to load dependencies. -sep -composer_repuff "$site_store_path" -test_or_die "Installing site dependencies with composer" +add_apache_site "$APPLICATION_NAME" "$DOMAIN_NAME" +test_or_die "Setting up apache site for: $APPLICATION_NAME" -# set up the symbolic links needed to achieve siteliness. sep -create_site_links "$site_store_path" "$theme_name" +powerup "$APPLICATION_NAME" "$REPO_NAME" "$THEME_NAME" sep -echo "Finished powering up the site in '${app_dirname}'." +echo " +Finished standing up the full domain and site in: +${app_dirname}"