|
@ -0,0 +1,37 @@ |
|
|
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
|
|
|
## Init is run on host |
|
|
|
|
|
## For now it is run every time the script is launched, but |
|
|
|
|
|
## it should be launched only once after build. |
|
|
|
|
|
|
|
|
|
|
|
## Accessible variables are: |
|
|
|
|
|
## - SERVICE_NAME Name of current service |
|
|
|
|
|
## - DOCKER_BASE_IMAGE Base image from which this service might be built if any |
|
|
|
|
|
## - SERVICE_DATASTORE Location on host of the DATASTORE of this service |
|
|
|
|
|
## - SERVICE_CONFIGSTORE Location on host of the CONFIGSTORE of this service |
|
|
|
|
|
|
|
|
|
|
|
PASSWORD_SET_CONTROL="$SERVICE_CONFIGSTORE/.password-set-control" |
|
|
|
|
|
|
|
|
|
|
|
set -e |
|
|
|
|
|
|
|
|
|
|
|
if [ -e "$PASSWORD_SET_CONTROL" ]; then |
|
|
|
|
|
exit 0 |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
containers=($(get_running_containers_for_service "$SERVICE_NAME")) |
|
|
|
|
|
if [ "${#containers[@]}" == 0 ]; then |
|
|
|
|
|
err "no containers found for service ${DARKYELLOW}$SERVICE_NAME${NORMAL}" |
|
|
|
|
|
exit 1 |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
## It is not possible at first glance to reset password, so we decided |
|
|
|
|
|
## to set to admin/admin. This means it is important to change the |
|
|
|
|
|
## admin password as soon as possible. |
|
|
|
|
|
|
|
|
|
|
|
## XXXvlab: taking the first container |
|
|
|
|
|
container_id="${containers[0]}" |
|
|
|
|
|
docker exec "$container_id" \ |
|
|
|
|
|
/opt/jboss/keycloak/bin/add-user-keycloak.sh \ |
|
|
|
|
|
-u "admin" -p "admin" |
|
|
|
|
|
docker restart "$container_id" |
|
|
|
|
|
mkdir -p "${PASSWORD_SET_CONTROL%/*}" && touch "$PASSWORD_SET_CONTROL" |