From ae6c74ded1c4927d32b4a05074b79fceb324875a Mon Sep 17 00:00:00 2001 From: Girish Ramakrishnan Date: Wed, 12 Aug 2015 19:26:31 -0700 Subject: [PATCH] Put image names in one place --- setup/INFRA_VERSION | 8 +++++++ setup/start/setup_infra.sh | 10 ++++----- src/routes/test/start_addons.sh | 10 ++++++--- src/test/checkInstall | 40 +++++++++++++++++---------------- 4 files changed, 41 insertions(+), 27 deletions(-) diff --git a/setup/INFRA_VERSION b/setup/INFRA_VERSION index 49aa64d3e..e2a7b330a 100644 --- a/setup/INFRA_VERSION +++ b/setup/INFRA_VERSION @@ -4,3 +4,11 @@ # in the change log INFRA_VERSION=5 + +MYSQL_IMAGE=cloudron/mysql:0.3.1 +POSTGRESQL_IMAGE=cloudron/postgresql:0.3.1 +MONGODB_IMAGE=cloudron/mongodb:0.3.1 +REDIS_IMAGE=cloudron/redis:0.3.1 # if you change this, fix src/addons.js as well +MAIL_IMAGE=cloudron/mail:0.3.1 +GRAPHITE_IMAGE=cloudron/graphite:0.3.1 + diff --git a/setup/start/setup_infra.sh b/setup/start/setup_infra.sh index d38d089a9..01997055e 100755 --- a/setup/start/setup_infra.sh +++ b/setup/start/setup_infra.sh @@ -31,7 +31,7 @@ docker run --restart=always -d --name="graphite" \ -p 127.0.0.1:2003:2003 \ -p 127.0.0.1:2004:2004 \ -p 127.0.0.1:8000:8000 \ - -v "${DATA_DIR}/graphite:/app/data" cloudron/graphite:0.3.1 + -v "${DATA_DIR}/graphite:/app/data" "${GRAPHITE_IMAGE}" # mail mail_container_id=$(docker run --restart=always -d --name="mail" \ @@ -39,7 +39,7 @@ mail_container_id=$(docker run --restart=always -d --name="mail" \ -h "${arg_fqdn}" \ -e "DOMAIN_NAME=${arg_fqdn}" \ -v "${DATA_DIR}/box/mail:/app/data" \ - cloudron/mail:0.3.1) + "${MAIL_IMAGE}") echo "Mail container id: ${mail_container_id}" # mysql @@ -53,7 +53,7 @@ mysql_container_id=$(docker run --restart=always -d --name="mysql" \ -h "${arg_fqdn}" \ -v "${DATA_DIR}/mysql:/var/lib/mysql" \ -v "${DATA_DIR}/addons/mysql_vars.sh:/etc/mysql/mysql_vars.sh:ro" \ - cloudron/mysql:0.3.1) + "${MYSQL_IMAGE}") echo "MySQL container id: ${mysql_container_id}" # postgresql @@ -65,7 +65,7 @@ postgresql_container_id=$(docker run --restart=always -d --name="postgresql" \ -h "${arg_fqdn}" \ -v "${DATA_DIR}/postgresql:/var/lib/postgresql" \ -v "${DATA_DIR}/addons/postgresql_vars.sh:/etc/postgresql/postgresql_vars.sh:ro" \ - cloudron/postgresql:0.3.1) + "${POSTGRESQL_IMAGE}") echo "PostgreSQL container id: ${postgresql_container_id}" # mongodb @@ -77,7 +77,7 @@ mongodb_container_id=$(docker run --restart=always -d --name="mongodb" \ -h "${arg_fqdn}" \ -v "${DATA_DIR}/mongodb:/var/lib/mongodb" \ -v "${DATA_DIR}/addons/mongodb_vars.sh:/etc/mongodb_vars.sh:ro" \ - cloudron/mongodb:0.3.1) + "${MONGODB_IMAGE}") echo "Mongodb container id: ${mongodb_container_id}" if [[ "${infra_version}" == "none" ]]; then diff --git a/src/routes/test/start_addons.sh b/src/routes/test/start_addons.sh index 970830be1..95157050c 100755 --- a/src/routes/test/start_addons.sh +++ b/src/routes/test/start_addons.sh @@ -2,6 +2,10 @@ set -eu -o pipefail +readonly SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)" + +source ${SOURCE_DIR}/setup/INFRA_VERSION + readonly mysqldatadir="/tmp/mysqldata-$(date +%s)" readonly postgresqldatadir="/tmp/postgresqldata-$(date +%s)" readonly mongodbdatadir="/tmp/mongodbdata-$(date +%s)" @@ -20,7 +24,7 @@ start_postgresql() { docker rm -f postgresql 2>/dev/null 1>&2 || true - docker run -dtP --name=postgresql -v "${postgresqldatadir}:/var/lib/postgresql" -v /tmp/postgresql_vars.sh:/etc/postgresql/postgresql_vars.sh cloudron/postgresql:0.3.1 >/dev/null + docker run -dtP --name=postgresql -v "${postgresqldatadir}:/var/lib/postgresql" -v /tmp/postgresql_vars.sh:/etc/postgresql/postgresql_vars.sh "${POSTGRESQL_IMAGE}" >/dev/null } start_mysql() { @@ -36,7 +40,7 @@ start_mysql() { docker rm -f mysql 2>/dev/null 1>&2 || true - docker run -dP --name=mysql -v "${mysqldatadir}:/var/lib/mysql" -v /tmp/mysql_vars.sh:/etc/mysql/mysql_vars.sh cloudron/mysql:0.3.1 >/dev/null + docker run -dP --name=mysql -v "${mysqldatadir}:/var/lib/mysql" -v /tmp/mysql_vars.sh:/etc/mysql/mysql_vars.sh "${MYSQL_IMAGE}" >/dev/null } start_mongodb() { @@ -52,7 +56,7 @@ start_mongodb() { docker rm -f mongodb 2>/dev/null 1>&2 || true - docker run -dP --name=mongodb -v "${mongodbdatadir}:/var/lib/mongodb" -v /tmp/mongodb_vars.sh:/etc/mongodb_vars.sh cloudron/mongodb:0.3.1 >/dev/null + docker run -dP --name=mongodb -v "${mongodbdatadir}:/var/lib/mongodb" -v /tmp/mongodb_vars.sh:/etc/mongodb_vars.sh "${MONGODB_IMAGE}" >/dev/null } start_mysql diff --git a/src/test/checkInstall b/src/test/checkInstall index be4b85c58..c9c4e663c 100755 --- a/src/test/checkInstall +++ b/src/test/checkInstall @@ -2,22 +2,24 @@ set -eu -readonly SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +readonly SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" + +source ${SOURCE_DIR}/setup/INFRA_VERSION # reset sudo timestamp to avoid wrong success sudo -k || sudo --reset-timestamp # checks if all scripts are sudo access -scripts=("${SOURCE_DIR}/scripts/rmappdir.sh" \ - "${SOURCE_DIR}/scripts/createappdir.sh" \ - "${SOURCE_DIR}/scripts/reloadnginx.sh" \ - "${SOURCE_DIR}/scripts/backupbox.sh" \ - "${SOURCE_DIR}/scripts/backupapp.sh" \ - "${SOURCE_DIR}/scripts/restoreapp.sh" \ - "${SOURCE_DIR}/scripts/reboot.sh" \ - "${SOURCE_DIR}/scripts/backupswap.sh" \ - "${SOURCE_DIR}/scripts/collectlogs.sh" \ - "${SOURCE_DIR}/scripts/reloadcollectd.sh") +scripts=("${SOURCE_DIR}/src/scripts/rmappdir.sh" \ + "${SOURCE_DIR}/src/scripts/createappdir.sh" \ + "${SOURCE_DIR}/src/scripts/reloadnginx.sh" \ + "${SOURCE_DIR}/src/scripts/backupbox.sh" \ + "${SOURCE_DIR}/src/scripts/backupapp.sh" \ + "${SOURCE_DIR}/src/scripts/restoreapp.sh" \ + "${SOURCE_DIR}/src/scripts/reboot.sh" \ + "${SOURCE_DIR}/src/scripts/backupswap.sh" \ + "${SOURCE_DIR}/src/scripts/collectlogs.sh" \ + "${SOURCE_DIR}/src/scripts/reloadcollectd.sh") for script in "${scripts[@]}"; do if [[ $(sudo -n "${script}" --check 2>/dev/null) != "OK" ]]; then @@ -37,23 +39,23 @@ if ! docker inspect girish/test:0.2.0 >/dev/null 2>/dev/null; then exit 1 fi -if ! docker inspect cloudron/redis:0.3.1 >/dev/null 2>/dev/null; then - echo "docker pull cloudron/redis:0.3.1 for tests to run" +if ! docker inspect "${REDIS_IMAGE}" >/dev/null 2>/dev/null; then + echo "docker pull ${REDIS_IMAGE} for tests to run" exit 1 fi -if ! docker inspect cloudron/mysql:0.3.1 >/dev/null 2>/dev/null; then - echo "docker pull cloudron/mysql:0.3.1 for tests to run" +if ! docker inspect "${MYSQL_IMAGE}" >/dev/null 2>/dev/null; then + echo "docker pull ${MYSQL_IMAGE} for tests to run" exit 1 fi -if ! docker inspect cloudron/postgresql:0.3.1 >/dev/null 2>/dev/null; then - echo "docker pull cloudron/postgresql:0.3.1 for tests to run" +if ! docker inspect "${POSTGRESQL_IMAGE}" >/dev/null 2>/dev/null; then + echo "docker pull ${POSTGRESQL_IMAGE} for tests to run" exit 1 fi -if ! docker inspect cloudron/mongodb:0.3.1 >/dev/null 2>/dev/null; then - echo "docker pull cloudron/mongodb:0.3.1 for tests to run" +if ! docker inspect "${MONGODB_IMAGE}" >/dev/null 2>/dev/null; then + echo "docker pull ${MONGODB_IMAGE} for tests to run" exit 1 fi