50 lines
1.4 KiB
Bash
Executable File
50 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
SPRING_DOCKER_IMAGE=${SPRING_DOCKER_IMAGE:-pivotalrabbitmq/spring-authorization-server:0.0.10}
|
|
|
|
ensure_spring() {
|
|
if docker ps | grep spring &> /dev/null; then
|
|
print "spring already running ..."
|
|
else
|
|
start_spring
|
|
fi
|
|
}
|
|
init_spring() {
|
|
SPRING_CONFIG_DIR=${TEST_CONFIG_PATH}/spring
|
|
SPRING_URL=${SPRING_URL:-$OAUTH_PROVIDER_URL}
|
|
|
|
print "> SPRING_CONFIG_DIR: ${SPRING_CONFIG_DIR}"
|
|
print "> SPRING_URL: ${SPRING_URL}"
|
|
print "> SPRING_DOCKER_IMAGE: ${SPRING_DOCKER_IMAGE}"
|
|
|
|
generate-ca-server-client-kpi spring $SPRING_CONFIG_DIR
|
|
generate-server-keystore-if-required spring $SPRING_CONFIG_DIR
|
|
}
|
|
start_spring() {
|
|
begin "Starting spring ..."
|
|
|
|
init_spring
|
|
kill_container_if_exist spring
|
|
|
|
MOUNT_SPRING_CONF_DIR=$CONF_DIR/spring
|
|
|
|
mkdir -p $MOUNT_SPRING_CONF_DIR
|
|
${BIN_DIR}/gen-spring-yml ${SPRING_CONFIG_DIR} $ENV_FILE $MOUNT_SPRING_CONF_DIR/application.yml
|
|
print "> EFFECTIVE SPRING_CONFIG_FILE: $MOUNT_SPRING_CONF_DIR/application.yml"
|
|
cp ${SPRING_CONFIG_DIR}/*.pem $MOUNT_SPRING_CONF_DIR
|
|
cp ${SPRING_CONFIG_DIR}/*.jks $MOUNT_SPRING_CONF_DIR
|
|
|
|
docker run \
|
|
--detach \
|
|
--name spring \
|
|
--net ${DOCKER_NETWORK} \
|
|
--publish 8080:8080 \
|
|
--publish 8443:8443 \
|
|
-v ${MOUNT_SPRING_CONF_DIR}:/config \
|
|
${SPRING_DOCKER_IMAGE}
|
|
|
|
wait_for_oidc_endpoint spring $SPRING_URL $MOUNT_SPRING_CONF_DIR/ca_spring_certificate.pem
|
|
end "spring is ready"
|
|
|
|
}
|