diff --git a/build/docker/api/application.conf b/build/docker/api/application.conf index 52c88423a..73208b9c3 100644 --- a/build/docker/api/application.conf +++ b/build/docker/api/application.conf @@ -176,15 +176,15 @@ vinyldns { # assumes a docker or mysql instance running locally name = "vinyldns" name = ${?DATABASE_NAME} - driver = "org.h2.Driver" + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} } diff --git a/modules/api/src/it/resources/application.conf b/modules/api/src/it/resources/application.conf index 52c88423a..73208b9c3 100644 --- a/modules/api/src/it/resources/application.conf +++ b/modules/api/src/it/resources/application.conf @@ -176,15 +176,15 @@ vinyldns { # assumes a docker or mysql instance running locally name = "vinyldns" name = ${?DATABASE_NAME} - driver = "org.h2.Driver" + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} } diff --git a/modules/api/src/main/resources/application.conf b/modules/api/src/main/resources/application.conf index 52c88423a..73208b9c3 100644 --- a/modules/api/src/main/resources/application.conf +++ b/modules/api/src/main/resources/application.conf @@ -176,15 +176,15 @@ vinyldns { # assumes a docker or mysql instance running locally name = "vinyldns" name = ${?DATABASE_NAME} - driver = "org.h2.Driver" + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} } diff --git a/modules/api/src/test/resources/application.conf b/modules/api/src/test/resources/application.conf index a57d9e7c2..123ea4220 100644 --- a/modules/api/src/test/resources/application.conf +++ b/modules/api/src/test/resources/application.conf @@ -185,15 +185,15 @@ vinyldns { # assumes a docker or mysql instance running locally name = "vinyldns" name = ${?DATABASE_NAME} - driver = "org.h2.Driver" + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} } diff --git a/modules/api/src/universal/conf/application.conf b/modules/api/src/universal/conf/application.conf index 52c88423a..73208b9c3 100644 --- a/modules/api/src/universal/conf/application.conf +++ b/modules/api/src/universal/conf/application.conf @@ -176,15 +176,15 @@ vinyldns { # assumes a docker or mysql instance running locally name = "vinyldns" name = ${?DATABASE_NAME} - driver = "org.h2.Driver" + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} } diff --git a/modules/portal/conf/application.conf b/modules/portal/conf/application.conf index 35c7809e1..f6324fd54 100644 --- a/modules/portal/conf/application.conf +++ b/modules/portal/conf/application.conf @@ -23,7 +23,7 @@ LDAP { securityAuthentication = ${?LDAP_SECURITY_AUTH} # Note: The following assumes a purely docker setup, using container_name = vinyldns-ldap - providerUrl = "ldap://vinyldns-ldap:19004" + providerUrl = "ldap://localhost:19004" providerUrl = ${?LDAP_PROVIDER_URL} } diff --git a/quickstart/docker-compose.yml b/quickstart/docker-compose.yml index 3bc99dfa2..8b0b9acbe 100644 --- a/quickstart/docker-compose.yml +++ b/quickstart/docker-compose.yml @@ -12,7 +12,7 @@ services: # Integration image hosting r53, sns, sqs, bind, and mysql integration: container_name: "vinyldns-api-integration" - hostname: &integration_hostname "vinyldns-integration" + hostname: "vinyldns-integration" image: "vinyldns/build:base-test-integration-${VINYLDNS_IMAGE_VERSION}" build: context: ../ @@ -21,7 +21,7 @@ services: VINYLDNS_BASE_VERSION: "${VINYLDNS_BASE_VERSION}" environment: RUN_SERVICES: "deps-only tail-logs" - LOCALSTACK_EXT_HOSTNAME: *integration_hostname + LOCALSTACK_EXT_HOSTNAME: "${LOCALSTACK_EXT_HOSTNAME:-vinyldns-integration}" env_file: .env ports: diff --git a/quickstart/quickstart-vinyldns.sh b/quickstart/quickstart-vinyldns.sh index 04bd826e8..9cc6b9da9 100755 --- a/quickstart/quickstart-vinyldns.sh +++ b/quickstart/quickstart-vinyldns.sh @@ -21,9 +21,9 @@ function usage() { echo -e "options:" echo -e "\t-a, --api-only do not start up the VinylDNS Portal" echo -e "\t-b, --build force a rebuild of the Docker images with the local code" - echo -e "\t-c, --clean stops all VinylDNS containers" + echo -e "\t-c, --clean stops all VinylDNS containers and exits" echo -e "\t-d, --deps-only only start up the dependencies, not the API or Portal" - echo -e "\t-r, --reset reset any the running containers" + echo -e "\t-r, --reset stops any the running containers before starting new containers" echo -e "\t-s, --service specify the service to run" echo -e "\t-t, --timeout the time to wait (in seconds) for the Portal and API to start (default: 60)" echo -e "\t-u, --update remove the local quickstart images to force a re-pull from Docker Hub" @@ -33,7 +33,7 @@ function usage() { } function wait_for_url() { - echo -n "Waiting for ${F_BLUE}$1${F_RESET} at ${URL}.." + echo -n "Waiting for ${F_BLUE}$1${F_RESET} at ${URL} .." RETRY="$TIMEOUT" while [ "$RETRY" -ge 0 ]; do echo -n "." @@ -101,6 +101,7 @@ while [[ $# -gt 0 ]]; do shift ;; -d | --deps-only) + export LOCALSTACK_EXT_HOSTNAME="localhost" SERVICE="integration ldap" shift ;; @@ -153,14 +154,12 @@ fi # Update images if requested if [[ $UPDATE -eq 1 ]]; then - echo "${F_YELLOW}Removing any local docker containers tagged ${F_RESET}'${VINYLDNS_IMAGE_VERSION}'${F_YELLOW}...${F_RESET}" - "${DIR}/../utils/clean-vinyldns-containers.sh" + echo "${F_YELLOW}Removing any running VinylDNS docker containers tagged ${F_RESET}'${VINYLDNS_IMAGE_VERSION}'${F_YELLOW}...${F_RESET}" + "${DIR}/../utils/clean-vinyldns-containers.sh" &> /dev/null || true - echo "${F_YELLOW}Removing any local docker images tagged ${F_RESET}'${VINYLDNS_IMAGE_VERSION}'${F_YELLOW}...${F_RESET}" - docker rmi "vinyldns/build:base-test-integration-${VINYLDNS_IMAGE_VERSION}" &> /dev/null || true - docker rmi "vinyldns/portal:${VINYLDNS_IMAGE_VERSION}" &> /dev/null || true - docker rmi "vinyldns/api:${VINYLDNS_IMAGE_VERSION}" &> /dev/null || true - echo "${F_GREEN}Removed all local docker images and containers tagged ${F_RESET}'${VINYLDNS_IMAGE_VERSION}'${F_YELLOW}...${F_RESET}" + echo "${F_YELLOW}Removing any local VinylDNS Docker images tagged ${F_RESET}'${VINYLDNS_IMAGE_VERSION}'${F_YELLOW}...${F_RESET}" + docker images -a |grep vinyldns | grep "${VINYLDNS_IMAGE_VERSION}" | awk '{print $3}' | xarg docker rmi &> /dev/null || true + echo "${F_GREEN}Successfully removed all local VinylDNS Docker images and running containers tagged ${F_RESET}'${VINYLDNS_IMAGE_VERSION}'${F_YELLOW}...${F_RESET}" fi diff --git a/test/api/functional/application.conf b/test/api/functional/application.conf index a79c5cf1b..cd56c482e 100644 --- a/test/api/functional/application.conf +++ b/test/api/functional/application.conf @@ -121,15 +121,16 @@ vinyldns { # these must be overridden to use MYSQL for production use # assumes a docker or mysql instance running locally name = "vinyldns" - driver = "org.h2.Driver" + name = ${?DATABASE_NAME} + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} # see https://github.com/brettwooldridge/HikariCP connection-timeout-millis = 1000 diff --git a/test/api/integration/application.conf b/test/api/integration/application.conf index d6a7500d5..ac795eef8 100644 --- a/test/api/integration/application.conf +++ b/test/api/integration/application.conf @@ -177,15 +177,15 @@ vinyldns { # assumes a docker or mysql instance running locally name = "vinyldns" name = ${?DATABASE_NAME} - driver = "org.h2.Driver" + driver = "org.mariadb.jdbc.Driver" driver = ${?JDBC_DRIVER} - migration-url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + migration-url = "jdbc:mariadb://localhost:19002/?user=root&password=pass" migration-url = ${?JDBC_MIGRATION_URL} - url = "jdbc:h2:mem:vinyldns;MODE=MYSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_LOWER=TRUE;IGNORECASE=TRUE;INIT=RUNSCRIPT FROM 'classpath:test/ddl.sql'" + url = "jdbc:mariadb://localhost:19002/vinyldns?user=root&password=pass" url = ${?JDBC_URL} - user = "sa" + user = "root" user = ${?JDBC_USER} - password = "" + password = "pass" password = ${?JDBC_PASSWORD} # see https://github.com/brettwooldridge/HikariCP connection-timeout-millis = 1000