From bdfc9bb428189dd225d990975d92fe024168a7b6 Mon Sep 17 00:00:00 2001 From: gberl002 Date: Thu, 16 Dec 2021 16:06:23 -0500 Subject: [PATCH 1/3] Adjusted naming behavior of controller functions Renamed controller related files --- quickstart/docker/image/ziti-cli-functions.sh | 126 ++++++++---------- 1 file changed, 58 insertions(+), 68 deletions(-) diff --git a/quickstart/docker/image/ziti-cli-functions.sh b/quickstart/docker/image/ziti-cli-functions.sh index 0ce0d8b2b..bf04fc376 100755 --- a/quickstart/docker/image/ziti-cli-functions.sh +++ b/quickstart/docker/image/ziti-cli-functions.sh @@ -55,14 +55,14 @@ function cleanZitiController { initializeController } function initializeController { - "${ZITI_BIN_DIR-}/ziti-controller" edge init "${ZITI_HOME_OS_SPECIFIC}/controller.yaml" -u "${ZITI_USER-}" -p "${ZITI_PWD}" &> "${ZITI_HOME_OS_SPECIFIC}/controller-init.log" - echo -e "ziti-controller initialized. see $(BLUE "${ZITI_HOME-}/controller-init.log") for details" +"${ZITI_BIN_DIR-}/ziti-controller" edge init "${ZITI_HOME_OS_SPECIFIC}/${ZITI_EDGE_CONTROLLER_RAWNAME}.yaml" -u "${ZITI_USER-}" -p "${ZITI_PWD}" &> "${ZITI_HOME_OS_SPECIFIC}/controller-init.log" + echo -e "ziti-controller initialized. see $(BLUE "${ZITI_HOME-}/${ZITI_EDGE_CONTROLLER_RAWNAME}-init.log") for details" } function startZitiController { # shellcheck disable=SC2034 - ("${ZITI_BIN_DIR-}/ziti-controller" run "${ZITI_HOME_OS_SPECIFIC}/controller.yaml" > "${ZITI_HOME_OS_SPECIFIC}/ziti-edge-controller.log" 2>&1 &) + ("${ZITI_BIN_DIR-}/ziti-controller" run "${ZITI_HOME_OS_SPECIFIC}/${ZITI_EDGE_CONTROLLER_RAWNAME}.yaml" > "${ZITI_HOME_OS_SPECIFIC}/ziti-edge-controller.log" 2>&1 &) pid=$! - echo -e "ziti-controller started as process id: $pid. log located at: $(BLUE "${ZITI_HOME-}/ziti-edge-controller.log")" + echo -e "ziti-controller started as process id: $pid. log located at: $(BLUE "${ZITI_HOME-}/${ZITI_EDGE_CONTROLLER_RAWNAME}.log")" return $pid } @@ -356,15 +356,15 @@ function ziti_expressConfiguration { echo " ||| /--------" echo "-----------'''---------------------------------------'" echo "" - if [[ "${ZITI_CONTROLLER_RAWNAME-}" != "" ]]; then echo "ZITI_CONTROLLER_RAWNAME OVERIDDEN: $ZITI_CONTROLLER_RAWNAME"; fi - if [[ "${ZITI_CONTROLLER_HOSTNAME-}" != "" ]]; then echo "ZITI_CONTROLLER_HOSTNAME OVERIDDEN: $ZITI_CONTROLLER_HOSTNAME"; fi - if [[ "${ZITI_EDGE_CONTROLLER_RAWNAME-}" != "" ]]; then echo "ZITI_EDGE_CONTROLLER_RAWNAME OVERIDDEN: $ZITI_EDGE_CONTROLLER_RAWNAME"; fi - if [[ "${ZITI_EDGE_CONTROLLER_HOSTNAME-}" != "" ]]; then echo "ZITI_EDGE_CONTROLLER_HOSTNAME OVERIDDEN: $ZITI_EDGE_CONTROLLER_HOSTNAME"; fi - if [[ "${ZITI_ZAC_RAWNAME-}" != "" ]]; then echo "ZITI_ZAC_RAWNAME OVERIDDEN: $ZITI_ZAC_RAWNAME"; fi - if [[ "${ZITI_ZAC_HOSTNAME-}" != "" ]]; then echo "ZITI_ZAC_HOSTNAME OVERIDDEN: $ZITI_ZAC_HOSTNAME"; fi - if [[ "${ZITI_EDGE_ROUTER_RAWNAME-}" != "" ]]; then echo "ZITI_EDGE_ROUTER_RAWNAME OVERIDDEN: $ZITI_EDGE_ROUTER_RAWNAME"; fi - if [[ "${ZITI_EDGE_ROUTER_HOSTNAME-}" != "" ]]; then echo "ZITI_EDGE_ROUTER_HOSTNAME OVERIDDEN: $ZITI_EDGE_ROUTER_HOSTNAME"; fi - if [[ "${ZITI_EDGE_ROUTER_PORT-}" != "" ]]; then echo "ZITI_EDGE_ROUTER_PORT OVERIDDEN: $ZITI_EDGE_ROUTER_PORT"; fi + if [[ "${ZITI_CONTROLLER_RAWNAME-}" != "" ]]; then echo "ZITI_CONTROLLER_RAWNAME OVERRIDDEN: $ZITI_CONTROLLER_RAWNAME"; fi + if [[ "${ZITI_CONTROLLER_HOSTNAME-}" != "" ]]; then echo "ZITI_CONTROLLER_HOSTNAME OVERRIDDEN: $ZITI_CONTROLLER_HOSTNAME"; fi + if [[ "${ZITI_EDGE_CONTROLLER_RAWNAME-}" != "" ]]; then echo "ZITI_EDGE_CONTROLLER_RAWNAME OVERRIDDEN: $ZITI_EDGE_CONTROLLER_RAWNAME"; fi + if [[ "${ZITI_EDGE_CONTROLLER_HOSTNAME-}" != "" ]]; then echo "ZITI_EDGE_CONTROLLER_HOSTNAME OVERRIDDEN: $ZITI_EDGE_CONTROLLER_HOSTNAME"; fi + if [[ "${ZITI_ZAC_RAWNAME-}" != "" ]]; then echo "ZITI_ZAC_RAWNAME OVERRIDDEN: $ZITI_ZAC_RAWNAME"; fi + if [[ "${ZITI_ZAC_HOSTNAME-}" != "" ]]; then echo "ZITI_ZAC_HOSTNAME OVERRIDDEN: $ZITI_ZAC_HOSTNAME"; fi + if [[ "${ZITI_EDGE_ROUTER_RAWNAME-}" != "" ]]; then echo "ZITI_EDGE_ROUTER_RAWNAME OVERRIDDEN: $ZITI_EDGE_ROUTER_RAWNAME"; fi + if [[ "${ZITI_EDGE_ROUTER_HOSTNAME-}" != "" ]]; then echo "ZITI_EDGE_ROUTER_HOSTNAME OVERRIDDEN: $ZITI_EDGE_ROUTER_HOSTNAME"; fi + if [[ "${ZITI_EDGE_ROUTER_PORT-}" != "" ]]; then echo "ZITI_EDGE_ROUTER_PORT OVERRIDDEN: $ZITI_EDGE_ROUTER_PORT"; fi echo " " echo " " @@ -397,8 +397,8 @@ function ziti_expressConfiguration { echo " " echo " " echo -e "******** Setting Up Controller ********" - createControllerConfig "controller" - #createControllerSystemdFile controller + createControllerConfig + #createControllerSystemdFile initializeController startZitiController echo "waiting for the controller to come online to allow the edge router to enroll" @@ -765,7 +765,7 @@ function createFabricRouterConfig { if [[ "${router_name}" == "" ]]; then # If router name is not passed as arg, prompt user for input - echo -e "$(YELLOW "createEdgeRouterWssConfig requires a router name to be supplied") " + echo -e "$(YELLOW "createFabricRouterConfig requires a router name to be supplied") " default_router_name="${ZITI_EDGE_ROUTER_RAWNAME}" echo -en "Enter router name (${default_router_name}):" read -r router_name @@ -1082,27 +1082,24 @@ IdentitiesJsonHereDoc echo -e "identities file written to: $(BLUE "${output_file}")" } +# shellcheck disable=SC2120 function createControllerConfig { # Allow controller name to be passed in as arg controller_name="${1-}" - if [[ "${controller_name}" == "" ]]; then + # If no controller name provided and env var is not set, prompt user for a controller name + if [[ "${controller_name}" == "" ]] && [[ -z "${ZITI_EDGE_CONTROLLER_RAWNAME}" ]]; then + echo -e "$(YELLOW "createControllerConfig requires a controller name to be supplied") " + echo -en "Enter controller name: " + read -r controller_name - # If controller name is not passed as arg, prompt user for input - echo -e "$(YELLOW "createControllerConfig requires a controller name to be supplied") " - default_controller_name="controller" - echo -en "Enter controller name (${default_controller_name}):" - read -r controller_name - - # Accept the default if no name provided - if [[ "${controller_name}" == "" ]]; then - # Check for overwrite of default file - controller_name="${default_controller_name}" - getFileOverwritePermission "${ZITI_HOME-}/${controller_name}.yaml" - retVal=$? - if [[ "${retVal}" != 0 ]]; then - return 1 - fi - fi + # Quit if no name is provided + if [[ "${controller_name}" == "" ]]; then + echo -e "$(RED " --- Invalid controller name provided ---")" + return 1 + fi + # If no controller name provided and env var is set, use env var + elif [[ "${controller_name}" == "" ]] && [[ -n "${ZITI_EDGE_CONTROLLER_RAWNAME}" ]]; then + controller_name="${ZITI_EDGE_CONTROLLER_RAWNAME}" fi # Make sure necessary env variables are set @@ -1400,23 +1397,20 @@ function waitForController { function createControllerSystemdFile { # Allow controller name to be passed in as arg controller_name="${1-}" - if [[ "${controller_name}" == "" ]]; then - # If controller name is not passed as arg, prompt user for input - echo -e "$(YELLOW "createRouterSystemdFile requires a controller name to be supplied") " - default_controller_name="controller" - echo -en "Enter controller name (${default_controller_name}):" - read -r controller_name + # If no controller name provided and env var is not set, prompt user for a controller name + if [[ "${controller_name}" == "" ]] && [[ -z "${ZITI_EDGE_CONTROLLER_RAWNAME}" ]]; then + echo -e "$(YELLOW "createControllerSystemdFile requires a controller name to be supplied") " + echo -en "Enter controller name:" + read -r controller_name - # Accept the default if no name provided - if [[ "${controller_name}" == "" ]]; then - # Check for overwrite of default file - controller_name="${default_controller_name}" - getFileOverwritePermission "${ZITI_HOME-}/ziti-controller-${controller_name}.service" - retVal=$? - if [[ "${retVal}" != 0 ]]; then - return 1 - fi - fi + # Quit if no name is provided + if [[ "${controller_name}" == "" ]]; then + echo -e "$(RED " --- Invalid controller name provided ---")" + return 1 + fi + # If no controller name provided and env var is set, use env var + elif [[ "${controller_name}" == "" ]] && [[ -n "${ZITI_EDGE_CONTROLLER_RAWNAME}" ]]; then + controller_name="${ZITI_EDGE_CONTROLLER_RAWNAME}" fi # Make sure necessary env variables are set @@ -1426,7 +1420,7 @@ function createControllerSystemdFile { return 1 fi -output_file="${ZITI_HOME}/ziti-controller-${controller_name}.service" +output_file="${ZITI_HOME}/${controller_name}.service" cat > "${output_file}" < "${output_file}" < From cd2ebec69099514d5d36377cd779accda46eb1ec Mon Sep 17 00:00:00 2001 From: gberl002 Date: Thu, 16 Dec 2021 17:02:39 -0500 Subject: [PATCH 2/3] Updated router file names Fixed color formatting bug renamed launchd log files to use edge device name --- quickstart/docker/image/ziti-cli-functions.sh | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/quickstart/docker/image/ziti-cli-functions.sh b/quickstart/docker/image/ziti-cli-functions.sh index bf04fc376..6f29b0ef6 100755 --- a/quickstart/docker/image/ziti-cli-functions.sh +++ b/quickstart/docker/image/ziti-cli-functions.sh @@ -377,7 +377,7 @@ function ziti_expressConfiguration { setupZitiNetwork "${nw}" setupZitiHome - echo "ZITI HOME SET TO: $(BLUE "${ZITI_HOME}")" + echo -e "ZITI HOME SET TO: $(BLUE "${ZITI_HOME}")" if ! getLatestZiti "no"; then echo -e "$(RED "getLatestZiti failed")" @@ -1111,7 +1111,7 @@ function createControllerConfig { cat "${ZITI_PKI_OS_SPECIFIC}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_CONTROLLER_HOSTNAME}-server.chain.pem" > "${ZITI_PKI_OS_SPECIFIC}/cas.pem" cat "${ZITI_PKI_OS_SPECIFIC}/${ZITI_SIGNING_INTERMEDIATE_NAME}/certs/${ZITI_SIGNING_INTERMEDIATE_NAME}.cert" >> "${ZITI_PKI_OS_SPECIFIC}/cas.pem" -echo "wrote CA file to: $(BLUE "${ZITI_PKI_OS_SPECIFIC}/cas.pem")" +echo -e "wrote CA file to: $(BLUE "${ZITI_PKI_OS_SPECIFIC}/cas.pem")" output_file="${ZITI_HOME}/${controller_name}.yaml" cat > "${output_file}" < "${output_file}" < "${output_file}" < StandardOutPath - ${ZITI_HOME}/Logs/ziti-router-$ZITI_BINARIES_VERSION.log + ${ZITI_HOME}/Logs/${controller_name}-{ZITI_BINARIES_VERSION}.log StandardErrorPath - ${ZITI_HOME}/Logs/ziti-router-$ZITI_BINARIES_VERSION.log + ${ZITI_HOME}/Logs/${controller_name}-{ZITI_BINARIES_VERSION}.log HeredocForLaunchd @@ -1568,7 +1568,7 @@ function createRouterLaunchdFile { if [[ "${router_name}" == "" ]]; then # Check for overwrite of default file router_name="${default_router_name}" - getFileOverwritePermission "${ZITI_HOME-}/ziti-router-${router_name}.plist" + getFileOverwritePermission "${ZITI_HOME-}/${router_name}.plist" retVal=$? if [[ "${retVal}" != 0 ]]; then return 1 @@ -1583,14 +1583,14 @@ function createRouterLaunchdFile { return 1 fi -output_file="${ZITI_HOME-}/ziti-router-${router_name}.plist" +output_file="${ZITI_HOME-}/${router_name}.plist" cat > "${output_file}" < Label - ziti-router-$router_name + $router_name ProgramArguments $ZITI_BIN_DIR/ziti-router @@ -1609,9 +1609,9 @@ cat > "${output_file}" < StandardOutPath - ${ZITI_HOME}/Logs/ziti-router-$ZITI_BINARIES_VERSION.log + ${ZITI_HOME}/Logs/${router_name}-${ZITI_BINARIES_VERSION}.log StandardErrorPath - ${ZITI_HOME}/Logs/ziti-router-$ZITI_BINARIES_VERSION.log + ${ZITI_HOME}/Logs/${router_name}-${ZITI_BINARIES_VERSION}.log HeredocForLaunchd From a9b0b34317185ebe17bfa6d33a803b9af97793b1 Mon Sep 17 00:00:00 2001 From: dovholuknf <46322585+dovholuknf@users.noreply.github.com> Date: Thu, 16 Dec 2021 17:53:25 -0500 Subject: [PATCH 3/3] minor tweaks --- quickstart/docker/image/ziti-cli-functions.sh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/quickstart/docker/image/ziti-cli-functions.sh b/quickstart/docker/image/ziti-cli-functions.sh index 6f29b0ef6..0320a5e71 100755 --- a/quickstart/docker/image/ziti-cli-functions.sh +++ b/quickstart/docker/image/ziti-cli-functions.sh @@ -214,7 +214,7 @@ function checkPrereqs { do # checking all commands are on the path before continuing... if ! [[ -x "$(command -v "${cmd}")" ]]; then - missing_requirements="${missing_requirements} * ${cmd}\n" + missing_requirements="${missing_requirements} * ${cmd}" fi done # are requirements ? if yes, stop here and help 'em out @@ -222,7 +222,7 @@ function checkPrereqs { echo " " echo "You're missing one or more commands that are used in this script." echo "Please ensure the commands listed are on the path and then try again." - printf "%s\n", "${missing_requirements}" + echo "${missing_requirements}" echo " " echo " " return 1 @@ -513,7 +513,10 @@ function expressInstall { #make sure the user has all the necessary commands to be successful checkPrereqs - + retval=$? + if [ $retval -ne 0 ]; then + return 1 + fi echo "Let's get started creating your local development network!" echo "" echo ""