parametrize data_dir for tests
This commit is contained in:
+1
-1
@@ -136,7 +136,7 @@ function initialize(callback) {
|
|||||||
certificates.getAdminCertificatePath(function (error, certFilePath, keyFilePath) {
|
certificates.getAdminCertificatePath(function (error, certFilePath, keyFilePath) {
|
||||||
if (error) return callback(error);
|
if (error) return callback(error);
|
||||||
|
|
||||||
shell.sudo('seutp_infra', [ SETUP_INFRA_CMD, config.fqdn(), config.adminFqdn(), certFilePath, keyFilePath, settings.isIncomingMailEnabled() ], callback);
|
shell.sudo('seutp_infra', [ SETUP_INFRA_CMD, paths.DATA_DIR, config.fqdn(), config.adminFqdn(), certFilePath, keyFilePath, settings.isIncomingMailEnabled() ], callback);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+20
-21
@@ -12,21 +12,20 @@ if [[ $# == 1 && "$1" == "--check" ]]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
readonly DATA_DIR="/home/yellowtent/data"
|
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
source "${script_dir}/../INFRA_VERSION" # this injects INFRA_VERSION
|
source "${script_dir}/../INFRA_VERSION" # this injects INFRA_VERSION
|
||||||
|
|
||||||
readonly fqdn="$1"
|
readonly data_dir="$1"
|
||||||
readonly mail_fqdn="$2"
|
readonly fqdn="$2"
|
||||||
readonly mail_tls_cert="$3"
|
readonly mail_fqdn="$3"
|
||||||
readonly mail_tls_key="$4"
|
readonly mail_tls_cert="$4"
|
||||||
readonly enable_incoming_mail="$5"
|
readonly mail_tls_key="$5"
|
||||||
|
readonly enable_incoming_mail="$6"
|
||||||
|
|
||||||
# removing containers ensures containers are launched with latest config updates
|
# removing containers ensures containers are launched with latest config updates
|
||||||
# restore code in appatask does not delete old containers
|
# restore code in appatask does not delete old containers
|
||||||
infra_version="none"
|
infra_version="none"
|
||||||
[[ -f "${DATA_DIR}/INFRA_VERSION" ]] && infra_version=$(cat "${DATA_DIR}/INFRA_VERSION")
|
[[ -f "${data_dir}/INFRA_VERSION" ]] && infra_version=$(cat "${data_dir}/INFRA_VERSION")
|
||||||
if [[ "${infra_version}" == "${INFRA_VERSION}" ]]; then
|
if [[ "${infra_version}" == "${INFRA_VERSION}" ]]; then
|
||||||
echo "Infrastructure is upto date"
|
echo "Infrastructure is upto date"
|
||||||
exit 0
|
exit 0
|
||||||
@@ -54,7 +53,7 @@ graphite_container_id=$(docker run --restart=always -d --name="graphite" \
|
|||||||
-p 127.0.0.1:2003:2003 \
|
-p 127.0.0.1:2003:2003 \
|
||||||
-p 127.0.0.1:2004:2004 \
|
-p 127.0.0.1:2004:2004 \
|
||||||
-p 127.0.0.1:8000:8000 \
|
-p 127.0.0.1:8000:8000 \
|
||||||
-v "${DATA_DIR}/graphite:/app/data" \
|
-v "${data_dir}/graphite:/app/data" \
|
||||||
--read-only -v /tmp -v /run \
|
--read-only -v /tmp -v /run \
|
||||||
"${GRAPHITE_IMAGE}")
|
"${GRAPHITE_IMAGE}")
|
||||||
echo "Graphite container id: ${graphite_container_id}"
|
echo "Graphite container id: ${graphite_container_id}"
|
||||||
@@ -70,7 +69,7 @@ if [[ "${enable_incoming_mail}" == "true" ]]; then
|
|||||||
-h "${fqdn}" \
|
-h "${fqdn}" \
|
||||||
-e "MAIL_DOMAIN=${fqdn}" \
|
-e "MAIL_DOMAIN=${fqdn}" \
|
||||||
-e "MAIL_SERVER_NAME=${mail_fqdn}" \
|
-e "MAIL_SERVER_NAME=${mail_fqdn}" \
|
||||||
-v "${DATA_DIR}/box/recvmail:/app/data" \
|
-v "${data_dir}/box/recvmail:/app/data" \
|
||||||
-v "${mail_tls_key}:/etc/tls_key.pem:ro" \
|
-v "${mail_tls_key}:/etc/tls_key.pem:ro" \
|
||||||
-v "${mail_tls_cert}:/etc/tls_cert.pem:ro" \
|
-v "${mail_tls_cert}:/etc/tls_cert.pem:ro" \
|
||||||
-p 993:9993 \
|
-p 993:9993 \
|
||||||
@@ -92,7 +91,7 @@ mail_container_id=$(docker run --restart=always -d --name="mail" \
|
|||||||
-h "${fqdn}" \
|
-h "${fqdn}" \
|
||||||
-e "MAIL_DOMAIN=${fqdn}" \
|
-e "MAIL_DOMAIN=${fqdn}" \
|
||||||
-e "MAIL_SERVER_NAME=${mail_fqdn}" \
|
-e "MAIL_SERVER_NAME=${mail_fqdn}" \
|
||||||
-v "${DATA_DIR}/box/mail:/app/data" \
|
-v "${data_dir}/box/mail:/app/data" \
|
||||||
-v "${mail_tls_key}:/etc/tls_key.pem:ro" \
|
-v "${mail_tls_key}:/etc/tls_key.pem:ro" \
|
||||||
-v "${mail_tls_cert}:/etc/tls_cert.pem:ro" \
|
-v "${mail_tls_cert}:/etc/tls_cert.pem:ro" \
|
||||||
-p 587:2500 \
|
-p 587:2500 \
|
||||||
@@ -106,7 +105,7 @@ fi
|
|||||||
# mysql
|
# mysql
|
||||||
mysql_addon_root_password=$(pwgen -1 -s)
|
mysql_addon_root_password=$(pwgen -1 -s)
|
||||||
docker0_ip=$(/sbin/ifconfig docker0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}')
|
docker0_ip=$(/sbin/ifconfig docker0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}')
|
||||||
cat > "${DATA_DIR}/addons/mysql_vars.sh" <<EOF
|
cat > "${data_dir}/addons/mysql_vars.sh" <<EOF
|
||||||
readonly MYSQL_ROOT_PASSWORD='${mysql_addon_root_password}'
|
readonly MYSQL_ROOT_PASSWORD='${mysql_addon_root_password}'
|
||||||
readonly MYSQL_ROOT_HOST='${docker0_ip}'
|
readonly MYSQL_ROOT_HOST='${docker0_ip}'
|
||||||
EOF
|
EOF
|
||||||
@@ -114,8 +113,8 @@ mysql_container_id=$(docker run --restart=always -d --name="mysql" \
|
|||||||
-m 256m \
|
-m 256m \
|
||||||
--memory-swap 512m \
|
--memory-swap 512m \
|
||||||
-h "${fqdn}" \
|
-h "${fqdn}" \
|
||||||
-v "${DATA_DIR}/mysql:/var/lib/mysql" \
|
-v "${data_dir}/mysql:/var/lib/mysql" \
|
||||||
-v "${DATA_DIR}/addons/mysql_vars.sh:/etc/mysql/mysql_vars.sh:ro" \
|
-v "${data_dir}/addons/mysql_vars.sh:/etc/mysql/mysql_vars.sh:ro" \
|
||||||
--read-only -v /tmp -v /run \
|
--read-only -v /tmp -v /run \
|
||||||
"${MYSQL_IMAGE}")
|
"${MYSQL_IMAGE}")
|
||||||
echo "MySQL container id: ${mysql_container_id}"
|
echo "MySQL container id: ${mysql_container_id}"
|
||||||
@@ -125,15 +124,15 @@ fi
|
|||||||
|
|
||||||
# postgresql
|
# postgresql
|
||||||
postgresql_addon_root_password=$(pwgen -1 -s)
|
postgresql_addon_root_password=$(pwgen -1 -s)
|
||||||
cat > "${DATA_DIR}/addons/postgresql_vars.sh" <<EOF
|
cat > "${data_dir}/addons/postgresql_vars.sh" <<EOF
|
||||||
readonly POSTGRESQL_ROOT_PASSWORD='${postgresql_addon_root_password}'
|
readonly POSTGRESQL_ROOT_PASSWORD='${postgresql_addon_root_password}'
|
||||||
EOF
|
EOF
|
||||||
postgresql_container_id=$(docker run --restart=always -d --name="postgresql" \
|
postgresql_container_id=$(docker run --restart=always -d --name="postgresql" \
|
||||||
-m 100m \
|
-m 100m \
|
||||||
--memory-swap 200m \
|
--memory-swap 200m \
|
||||||
-h "${fqdn}" \
|
-h "${fqdn}" \
|
||||||
-v "${DATA_DIR}/postgresql:/var/lib/postgresql" \
|
-v "${data_dir}/postgresql:/var/lib/postgresql" \
|
||||||
-v "${DATA_DIR}/addons/postgresql_vars.sh:/etc/postgresql/postgresql_vars.sh:ro" \
|
-v "${data_dir}/addons/postgresql_vars.sh:/etc/postgresql/postgresql_vars.sh:ro" \
|
||||||
--read-only -v /tmp -v /run \
|
--read-only -v /tmp -v /run \
|
||||||
"${POSTGRESQL_IMAGE}")
|
"${POSTGRESQL_IMAGE}")
|
||||||
echo "PostgreSQL container id: ${postgresql_container_id}"
|
echo "PostgreSQL container id: ${postgresql_container_id}"
|
||||||
@@ -143,15 +142,15 @@ fi
|
|||||||
|
|
||||||
# mongodb
|
# mongodb
|
||||||
mongodb_addon_root_password=$(pwgen -1 -s)
|
mongodb_addon_root_password=$(pwgen -1 -s)
|
||||||
cat > "${DATA_DIR}/addons/mongodb_vars.sh" <<EOF
|
cat > "${data_dir}/addons/mongodb_vars.sh" <<EOF
|
||||||
readonly MONGODB_ROOT_PASSWORD='${mongodb_addon_root_password}'
|
readonly MONGODB_ROOT_PASSWORD='${mongodb_addon_root_password}'
|
||||||
EOF
|
EOF
|
||||||
mongodb_container_id=$(docker run --restart=always -d --name="mongodb" \
|
mongodb_container_id=$(docker run --restart=always -d --name="mongodb" \
|
||||||
-m 100m \
|
-m 100m \
|
||||||
--memory-swap 200m \
|
--memory-swap 200m \
|
||||||
-h "${fqdn}" \
|
-h "${fqdn}" \
|
||||||
-v "${DATA_DIR}/mongodb:/var/lib/mongodb" \
|
-v "${data_dir}/mongodb:/var/lib/mongodb" \
|
||||||
-v "${DATA_DIR}/addons/mongodb_vars.sh:/etc/mongodb_vars.sh:ro" \
|
-v "${data_dir}/addons/mongodb_vars.sh:/etc/mongodb_vars.sh:ro" \
|
||||||
--read-only -v /tmp -v /run \
|
--read-only -v /tmp -v /run \
|
||||||
"${MONGODB_IMAGE}")
|
"${MONGODB_IMAGE}")
|
||||||
echo "Mongodb container id: ${mongodb_container_id}"
|
echo "Mongodb container id: ${mongodb_container_id}"
|
||||||
@@ -174,4 +173,4 @@ else
|
|||||||
mysql -u root -ppassword -e 'UPDATE apps SET installationState = "pending_configure", oldConfigJson = NULL WHERE installationState = "installed"' box
|
mysql -u root -ppassword -e 'UPDATE apps SET installationState = "pending_configure", oldConfigJson = NULL WHERE installationState = "installed"' box
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -n "${INFRA_VERSION}" > "${DATA_DIR}/INFRA_VERSION"
|
echo -n "${INFRA_VERSION}" > "${data_dir}/INFRA_VERSION"
|
||||||
|
|||||||
Reference in New Issue
Block a user