From bd3a63401e034a74628e9656ecfc0ad9a8fe4723 Mon Sep 17 00:00:00 2001 From: dovholuknf <46322585+dovholuknf@users.noreply.github.com> Date: Fri, 23 Apr 2021 10:27:55 -0400 Subject: [PATCH] continued refinements --- quickstart/docker/image/env.sh | 167 +++++++------------- quickstart/local/env.sh | 5 +- quickstart/local/express/express-dev-env.sh | 8 +- 3 files changed, 68 insertions(+), 112 deletions(-) mode change 100755 => 100644 quickstart/docker/image/env.sh diff --git a/quickstart/docker/image/env.sh b/quickstart/docker/image/env.sh old mode 100755 new mode 100644 index 6a4bd3f42..55d571891 --- a/quickstart/docker/image/env.sh +++ b/quickstart/docker/image/env.sh @@ -1,12 +1,19 @@ #!/bin/bash -export PFXLOG_NO_JSON=true - -network_name="ziti" - +if [[ "${ENV_FILE}" == "" ]]; then + echo "ERROR: ENV_FILE HAS NOT BEEN DECLARED!" + exit 1 +fi +if [[ "${network_name}" != "" ]]; then + export ZITI_NETWORK=${network_name} +fi +if [[ "${1}" != "" ]]; then + export ZITI_NETWORK=${1} +fi +if [[ "${ZITI_NETWORK}" = "" ]]; then + export ZITI_NETWORK=$(hostname) +fi # make the quickstart home folder where all the config files, logs, etc will go -export ZITI_HOME="/netfoundry/${network_name}" -export ZITI_POSTGRES_HOST="ziti-postgres" -export ZITI_NETWORK=${network_name} +export ZITI_HOME=${HOME}/.ziti/quickstart/${ZITI_NETWORK} export ZITI_USER="admin" export ZITI_PWD="admin" export ZITI_DOMAIN_SUFFIX=".ziti.netfoundry.io" @@ -14,118 +21,64 @@ export ZITI_DOMAIN_SUFFIX="" export ZITI_ID="${ZITI_HOME}/identities.yml" export ZITI_FAB_MGMT_PORT="10000" export ZITI_FAB_CTRL_PORT="6262" -export ZITI_CONTROLLER_RAWNAME="controller" -export ZITI_EDGE_CONTROLLER_RAWNAME="edge-controller" -export ZITI_EDGE_ROUTER_NAME="edge-router" -export ZITI_EDGE_CONTROLLER_PORT="1280" -export ZITI_ROUTER_BR_NAME="fabric-router-br" -export ZITI_ROUTER_BLUE_NAME="fabric-router-blue" -export ZITI_ROUTER_RED_NAME="fabric-router-red" + +if [[ "${ZITI_CONTROLLER_RAWNAME}" == "" ]]; then export ZITI_CONTROLLER_RAWNAME="${ZITI_NETWORK}-controller"; fi +if [[ "${ZITI_EDGE_CONTROLLER_RAWNAME}" == "" ]]; then export ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_NETWORK}-edge-controller"; fi +if [[ "${ZITI_EDGE_ROUTER_RAWNAME}" == "" ]]; then export ZITI_EDGE_ROUTER_RAWNAME="${ZITI_NETWORK}-edge-router"; fi +if [[ "${ZITI_EDGE_WSS_ROUTER_RAWNAME}" == "" ]]; then export ZITI_EDGE_WSS_ROUTER_RAWNAME="${ZITI_NETWORK}-controller"; fi +if [[ "${ZITI_ROUTER_BR_RAWNAME}" == "" ]]; then export ZITI_ROUTER_BR_RAWNAME="${ZITI_NETWORK}-controller"; fi +if [[ "${ZITI_ROUTER_BLUE_RAWNAME}" == "" ]]; then export ZITI_ROUTER_BLUE_RAWNAME="${ZITI_NETWORK}-controller"; fi +if [[ "${ZITI_ROUTER_RED_RAWNAME}" == "" ]]; then export ZITI_ROUTER_RED_RAWNAME="${ZITI_NETWORK}-controller"; fi +if [[ "${ZITI_ZAC_RAWNAME}" == "" ]]; then export ZITI_ZAC_RAWNAME="${ZITI_NETWORK}-controller"; fi export ZITI_PKI="${ZITI_HOME}/pki" -export ZITI_EDGE_CONTROLLER_HOSTNAME="${ZITI_NETWORK}-${ZITI_EDGE_CONTROLLER_NAME}${ZITI_DOMAIN_SUFFIX}" -export ZITI_EDGE_ROUTER_HOSTNAME="${ZITI_NETWORK}-${ZITI_EDGE_ROUTER_NAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_EDGE_CONTROLLER_PORT="1280" + +export ZITI_CONTROLLER_HOSTNAME="${ZITI_CONTROLLER_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_EDGE_CONTROLLER_HOSTNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_EDGE_ROUTER_HOSTNAME="${ZITI_EDGE_ROUTER_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_EDGE_WSS_ROUTER_HOSTNAME="${ZITI_EDGE_WSS_ROUTER_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_ROUTER_BR_HOSTNAME="${ZITI_ROUTER_BR_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_ROUTER_BLUE_HOSTNAME="${ZITI_ROUTER_BLUE_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_ROUTER_RED_HOSTNAME="${ZITI_ROUTER_RED_RAWNAME}${ZITI_DOMAIN_SUFFIX}" +export ZITI_ZAC_HOSTNAME="${ZITI_ZAC_RAWNAME}${ZITI_DOMAIN_SUFFIX}" + +export ZITI_EDGE_CONTROLLER_API="${ZITI_EDGE_CONTROLLER_HOSTNAME}:${ZITI_EDGE_CONTROLLER_PORT}" + export ZITI_SIGNING_CERT_NAME="${ZITI_NETWORK}-signing" -export ZITI_ROUTER_BR_HOSTNAME="${ZITI_NETWORK}-${ZITI_ROUTER_BR_RAWNAME}${ZITI_DOMAIN_SUFFIX}" -export ZITI_ROUTER_BLUE_HOSTNAME="${ZITI_NETWORK}-${ZITI_ROUTER_BLUE_RAWNAME}${ZITI_DOMAIN_SUFFIX}" -export ZITI_ROUTER_RED_HOSTNAME="${ZITI_NETWORK}-${ZITI_ROUTER_RED_RAWNAME}${ZITI_DOMAIN_SUFFIX}" -export ZITI_EDGE_API_HOSTNAME="${ZITI_NETWORK}-${ZITI_EDGE_CONTROLLER_NAME}:${ZITI_EDGE_CONTROLLER_PORT}" +export ZITI_CONTROLLER_ROOTCA_NAME="${ZITI_CONTROLLER_HOSTNAME}-root-ca" +export ZITI_CONTROLLER_INTERMEDIATE_NAME="${ZITI_CONTROLLER_HOSTNAME}-intermediate" + +export ZITI_EDGE_CONTROLLER_ROOTCA_NAME="${ZITI_EDGE_CONTROLLER_HOSTNAME}-root-ca" +export ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME="${ZITI_EDGE_CONTROLLER_HOSTNAME}-intermediate" -export ZITI_CONTROLLER_ROOTCA_NAME="${ZITI_EDGE_CONTROLLER_HOSTNAME}-root-ca" -export ZITI_EDGE_ROOTCA_NAME="${ZITI_EDGE_ROUTER_HOSTNAME}-root-ca" export ZITI_SIGNING_ROOTCA_NAME="${ZITI_SIGNING_CERT_NAME}-root-ca" - -export ZITI_CONTROLLER_INTERMEDIATE_NAME="${ZITI_EDGE_CONTROLLER_HOSTNAME}-intermediate" -export ZITI_EDGE_INTERMEDIATE_NAME="${ZITI_EDGE_ROUTER_HOSTNAME}-intermediate" export ZITI_SIGNING_INTERMEDIATE_NAME="${ZITI_SIGNING_CERT_NAME}-intermediate" -export ZITI_CLUSTER_NAME="${ZITI_NETWORK}-cluster" +export ZITI_BIN_DIR="${ZITI_HOME}/ziti-bin" +export ZITI_BIN="${ZITI_BIN_DIR}/ziti" +mkdir -p ${ZITI_BIN_DIR} mkdir -p ${ZITI_HOME}/db mkdir -p ${ZITI_PKI} -cat > ziti.env << HereDocForZitiEnv +echo "" > "${ENV_FILE}" +for zEnvVar in $(set -o posix ; set | grep ZITI_ | sort); do echo "export ${zEnvVar}" >> "${ENV_FILE}"; done + export PFXLOG_NO_JSON=true -export ZITI_USER="admin" -export ZITI_PWD="admin" -export ZITI_HOME=${ZITI_HOME} -export ZITI_NETWORK=${ZITI_NETWORK} -export ZITI_DOMAIN_SUFFIX="${ZITI_DOMAIN_SUFFIX}" -export ZITI_POSTGRES_HOST="${ZITI_POSTGRES_HOST}" -export ZITI_ID="${ZITI_ID}" -export ZITI_PKI="${ZITI_PKI}" -export ZITI_EDGE_CONTROLLER_HOSTNAME="${ZITI_EDGE_CONTROLLER_HOSTNAME}" -export ZITI_FAB_MGMT_PORT="${ZITI_FAB_MGMT_PORT}" -export ZITI_FAB_CTRL_PORT="${ZITI_FAB_CTRL_PORT}" -export ZITI_CONTROLLER_RAWNAME="${ZITI_CONTROLLER_RAWNAME}" -export ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}" -export ZITI_EDGE_ROUTER_NAME="${ZITI_EDGE_ROUTER_NAME}" -export ZITI_ROUTER_BR_NAME="${ZITI_ROUTER_BR_NAME}" -export ZITI_ROUTER_BLUE_NAME="${ZITI_ROUTER_BLUE_NAME}" -export ZITI_ROUTER_RED_NAME="${ZITI_ROUTER_RED_NAME}" -export ZITI_EDGE_ROUTER_HOSTNAME="${ZITI_EDGE_ROUTER_HOSTNAME}" -export ZITI_ROUTER_BR_HOSTNAME="${ZITI_ROUTER_BR_HOSTNAME}" -export ZITI_ROUTER_BLUE_HOSTNAME="${ZITI_ROUTER_BLUE_HOSTNAME}" -export ZITI_ROUTER_RED_HOSTNAME="${ZITI_ROUTER_RED_HOSTNAME}" -export ZITI_EDGE_CONTROLLER_PORT="${ZITI_EDGE_CONTROLLER_PORT}" -export ZITI_EDGE_API_HOSTNAME="${ZITI_EDGE_API_HOSTNAME}" +echo "export PFXLOG_NO_JSON=true" >> "${ENV_FILE}" -export ZITI_CONTROLLER_ROOTCA_NAME=${ZITI_CONTROLLER_ROOTCA_NAME} -export ZITI_EDGE_ROOTCA_NAME=${ZITI_EDGE_ROOTCA_NAME} -export ZITI_SIGNING_ROOTCA_NAME="${ZITI_SIGNING_ROOTCA_NAME}" +echo "alias zec='ziti edge controller'" >> "${ENV_FILE}" +echo "alias zlogin='ziti edge controller login \"${ZITI_EDGE_CONTROLLER_API}\" -u \"${ZITI_USER}\" -p \"${ZITI_PWD}\" -c \"${ZITI_PKI}/${ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME}.cert\"'" >> "${ENV_FILE}" +echo "alias psz='ps -ef | grep ziti'" >> "${ENV_FILE}" -export ZITI_CONTROLLER_INTERMEDIATE_NAME="${ZITI_CONTROLLER_INTERMEDIATE_NAME}" -export ZITI_EDGE_INTERMEDIATE_NAME="${ZITI_EDGE_INTERMEDIATE_NAME}" -export ZITI_SIGNING_INTERMEDIATE_NAME="${ZITI_SIGNING_INTERMEDIATE_NAME}" -export ZITI_CLUSTER_NAME="${ZITI_CLUSTER_NAME}" -mkdir -p ${ZITI_HOME}/db -mkdir -p ${ZITI_PKI} -HereDocForZitiEnv - - - - - - - - - - - - - - - - - - - - -cat > ziti.env.old << HereDocForZitiEnv -export PFXLOG_NO_JSON=true -export ZITI_USER="admin" -export ZITI_PWD="admin" -export network_name="${network_name}" -export ZITI_HOME="${ZITI_HOME}" -export pki_root="${pki_root}" -export ca_name="${network_name}-root-ca" -export intermediate_name="${network_name}-intermediate" -#export gateway_name="${network_name}-gateway" -export gateway_name="${network_name}-gateway" -export edge_controller_name="${edge_controller_name}" -export edge_controller_port="${edge_controller_port}" -export edge_controller_intermediate="${edge_controller_name}-intermediate" -export edge_controller_uri="https://${edge_controller_name}:${edge_controller_port}" -export fabric_controller_name="${network_name}-fabric-controller" -export fabric_controller_gw_port=10080 -export fabric_controller_port="${fabric_controller_port}" -export fabric_controller_gw_name="${network_name}-fabric-gw" -export postgres_host="${postgres_host}" -export dotzeet_identity="${network_name}-dotzeet" -export identity_intermediate="${intermediate_name}-identities" -export gateways_intermediate="${intermediate_name}-gateways" - -export cluster_name="${network_name}-cluster" - -HereDocForZitiEnv +#when sourcing the emitted file add the bin folder to the path +tee -a "${ENV_FILE}" > /dev/null <<'heredoc' +if [[ "$(echo "$PATH"|grep -q "${ZITI_BIN}" && echo "yes")" == "yes" ]]; then + echo "${ZITI_BIN} is already on the path" +else + echo "adding ${ZITI_BIN} to the path" + export PATH=$PATH:"${ZITI_BIN}" +fi +heredoc \ No newline at end of file diff --git a/quickstart/local/env.sh b/quickstart/local/env.sh index f11e32dd6..55d571891 100755 --- a/quickstart/local/env.sh +++ b/quickstart/local/env.sh @@ -1,4 +1,8 @@ #!/bin/bash +if [[ "${ENV_FILE}" == "" ]]; then + echo "ERROR: ENV_FILE HAS NOT BEEN DECLARED!" + exit 1 +fi if [[ "${network_name}" != "" ]]; then export ZITI_NETWORK=${network_name} fi @@ -59,7 +63,6 @@ mkdir -p ${ZITI_BIN_DIR} mkdir -p ${ZITI_HOME}/db mkdir -p ${ZITI_PKI} -ENV_FILE="${ZITI_HOME}/${ZITI_NETWORK}.env" echo "" > "${ENV_FILE}" for zEnvVar in $(set -o posix ; set | grep ZITI_ | sort); do echo "export ${zEnvVar}" >> "${ENV_FILE}"; done diff --git a/quickstart/local/express/express-dev-env.sh b/quickstart/local/express/express-dev-env.sh index 574f5cacf..5a095c5a8 100755 --- a/quickstart/local/express/express-dev-env.sh +++ b/quickstart/local/express/express-dev-env.sh @@ -172,9 +172,9 @@ function generateEnvFile { export ZITI_ROUTER_BLUE_RAWNAME="${ZITI_NETWORK}" export ZITI_ROUTER_RED_RAWNAME="${ZITI_NETWORK}" - "${ZITI_SCRIPT_DIR}/../env.sh" - ZITI_HOME=${HOME}/.ziti/quickstart/${ZITI_NETWORK} - ENV_FILE="${ZITI_HOME}/${ZITI_NETWORK}.env" + export ZITI_HOME=${HOME}/.ziti/quickstart/${ZITI_NETWORK} + export ENV_FILE="${ZITI_HOME}/${ZITI_NETWORK}.env" + "${ZITI_SCRIPT_DIR}/../../docker/image/env.sh" echo -e "environment file created and source from: $(BLUE ${ENV_FILE})" source "${ENV_FILE}" } @@ -198,7 +198,7 @@ function expressConfiguration { fi generateEnvFile "${nw}" #checkHostsFile - #getLatestZiti + getLatestZiti generatePki generateControllerConfig generateEdgeRouterConfig