Further fixes on single host installer deployment. No issue #
authorLucas Di Pentima <lucas.dipentima@curii.com>
Tue, 15 Aug 2023 17:39:44 +0000 (14:39 -0300)
committerLucas Di Pentima <lucas.dipentima@curii.com>
Tue, 15 Aug 2023 17:39:44 +0000 (14:39 -0300)
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas.dipentima@curii.com>

tools/salt-install/local.params.example.single_host_multiple_hostnames
tools/salt-install/local.params.example.single_host_single_hostname
tools/salt-install/provision.sh

index 5b3135287f76976eb94d239d9a1e697f11631569..fc48bb76ccb5eefcc0d2402e48dec6536294d0ba 100644 (file)
@@ -62,6 +62,22 @@ WEBSOCKET_EXT_SSL_PORT=8002
 WORKBENCH1_EXT_SSL_PORT=443
 WORKBENCH2_EXT_SSL_PORT=3001
 
+CLUSTER_INT_CIDR=""
+CONTROLLER_INT_IP=""
+DATABASE_INT_IP=""
+WORKBENCH1_INT_IP=""
+DISPATCHER_INT_IP=""
+KEEPBALANCE_INT_IP=""
+WEBSOCKET_INT_IP=""
+KEEPWEB_INT_IP=""
+WORKBENCH2_INT_IP=""
+WEBSHELL_INT_IP=""
+KEEP_INT_IP=""
+KEEPSTORE0_INT_IP=""
+SHELL_INT_IP=""
+
+DISABLED_CONTROLLER=""
+
 # The directory to check for the config files (pillars, states) you want to use.
 # There are a few examples under 'config_examples'.
 # CONFIG_DIR="local_config_dir"
index 7af8898a507d88203cfcf9f52f5efb3efbff17c8..30f97de29df2af831c389a49426718d89ba32c1f 100644 (file)
@@ -72,6 +72,22 @@ WEBSOCKET_EXT_SSL_PORT=8804
 WORKBENCH1_EXT_SSL_PORT=8805
 WORKBENCH2_EXT_SSL_PORT=443
 
+CLUSTER_INT_CIDR=""
+CONTROLLER_INT_IP=""
+DATABASE_INT_IP=""
+WORKBENCH1_INT_IP=""
+DISPATCHER_INT_IP=""
+KEEPBALANCE_INT_IP=""
+WEBSOCKET_INT_IP=""
+KEEPWEB_INT_IP=""
+WORKBENCH2_INT_IP=""
+WEBSHELL_INT_IP=""
+KEEP_INT_IP=""
+KEEPSTORE0_INT_IP=""
+SHELL_INT_IP=""
+
+DISABLED_CONTROLLER=""
+
 # The directory to check for the config files (pillars, states) you want to use.
 # There are a few examples under 'config_examples'.
 # CONFIG_DIR="local_config_dir"
index 6e5bdf2491b1b8b27bb16442ac423985b4c91fad..5dd40dd76c467c132624f514a1b8da2e797e633b 100755 (executable)
@@ -172,7 +172,7 @@ apply_var_substitutions() {
        s#__INITIAL_USER_EMAIL__#${INITIAL_USER_EMAIL}#g;
        s#__INITIAL_USER_PASSWORD__#${INITIAL_USER_PASSWORD}#g;
        s#__INITIAL_USER__#${INITIAL_USER}#g;
-       s#__LE_AWS_REGION__#${LE_AWS_REGION}#g;
+       s#__LE_AWS_REGION__#${LE_AWS_REGION:-}#g;
        s#__LE_AWS_SECRET_ACCESS_KEY__#${LE_AWS_SECRET_ACCESS_KEY}#g;
        s#__LE_AWS_ACCESS_KEY_ID__#${LE_AWS_ACCESS_KEY_ID}#g;
        s#__DATABASE_PASSWORD__#${DATABASE_PASSWORD}#g;
@@ -199,7 +199,7 @@ apply_var_substitutions() {
        s#__DATABASE_INT_IP__#${DATABASE_INT_IP}#g;
        s#__WORKBENCH_SECRET_KEY__#${WORKBENCH_SECRET_KEY}#g;
        s#__SSL_KEY_ENCRYPTED__#${SSL_KEY_ENCRYPTED}#g;
-       s#__SSL_KEY_AWS_REGION__#${SSL_KEY_AWS_REGION}#g;
+       s#__SSL_KEY_AWS_REGION__#${SSL_KEY_AWS_REGION:-}#g;
        s#__SSL_KEY_AWS_SECRET_NAME__#${SSL_KEY_AWS_SECRET_NAME}#g;
        s#__CONTROLLER_MAX_WORKERS__#${CONTROLLER_MAX_WORKERS:-}#g;
        s#__CONTROLLER_MAX_QUEUED_REQUESTS__#${CONTROLLER_MAX_QUEUED_REQUESTS:-128}#g;
@@ -211,16 +211,16 @@ apply_var_substitutions() {
        s#__DISABLED_CONTROLLER__#${DISABLED_CONTROLLER}#g;
        s#__BALANCER_NODENAME__#${ROLE2NODES['balancer']:-}#g;
        s#__PROMETHEUS_NODENAME__#${ROLE2NODES['monitoring']:-}#g;
-       s#__CONTROLLER_NODES__#${ROLE2NODES['controller']}#g;
+       s#__CONTROLLER_NODES__#${ROLE2NODES['controller']:-}#g;
        s#__NODELIST__#${NODELIST}#g;
        s#__DISPATCHER_INT_IP__#${DISPATCHER_INT_IP}#g;
        s#__KEEPBALANCE_INT_IP__#${KEEPBALANCE_INT_IP}#g;
-       s#__COMPUTE_AMI__#${COMPUTE_AMI}#g;
-       s#__COMPUTE_SG__#${COMPUTE_SG}#g;
-       s#__COMPUTE_SUBNET__#${COMPUTE_SUBNET}#g;
-       s#__COMPUTE_AWS_REGION__#${COMPUTE_AWS_REGION}#g;
-       s#__COMPUTE_USER__#${COMPUTE_USER}#g;
-       s#__KEEP_AWS_REGION__#${KEEP_AWS_REGION}#g" \
+       s#__COMPUTE_AMI__#${COMPUTE_AMI:-}#g;
+       s#__COMPUTE_SG__#${COMPUTE_SG:-}#g;
+       s#__COMPUTE_SUBNET__#${COMPUTE_SUBNET:-}#g;
+       s#__COMPUTE_AWS_REGION__#${COMPUTE_AWS_REGION:-}#g;
+       s#__COMPUTE_USER__#${COMPUTE_USER:-}#g;
+       s#__KEEP_AWS_REGION__#${KEEP_AWS_REGION:-}#g" \
   "${SRCFILE}" > "${DSTFILE}"
 }
 
@@ -308,7 +308,6 @@ T_DIR="/tmp/cluster_tests"
 arguments ${@}
 
 declare -A NODES
-declare -A ROLES
 declare -A ROLE2NODES
 declare NODELIST
 
@@ -514,7 +513,7 @@ fi
 # Replace helper state files that differ from the formula's examples
 if [ -d "${SOURCE_STATES_DIR}" ]; then
   mkdir -p "${F_DIR}"/extra/extra
-  rm -f "${F_DIR}"/extra/extra/*
+  rm -rf "${F_DIR}"/extra/extra/*
 
   for f in $(ls "${SOURCE_STATES_DIR}"/*); do
     apply_var_substitutions "${f}" "${F_DIR}/extra/extra"/$(basename "${f}")
@@ -567,7 +566,7 @@ fi
 
 # If we want specific roles for a node, just add the desired states
 # and its dependencies
-if [ -z "${ROLES}" ]; then
+if [ -z "${ROLES:-}" ]; then
   # States
   echo "    - nginx.passenger" >> ${STATES_TOP}
   if [ "${SSL_MODE}" = "lets-encrypt" ]; then
@@ -698,7 +697,7 @@ else
   # Prometheus node exporter pillar
   grep -q "prometheus_node_exporter" ${PILLARS_TOP} || echo "    - prometheus_node_exporter" >> ${PILLARS_TOP}
 
-  for R in ${ROLES}; do
+  for R in ${ROLES:-}; do
     case "${R}" in
       "database")
         # States