#!/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 . lib/common set -e dirs=( "$SERVICE_DATASTORE/var/lib/etherpad" ) uid_gid=($(docker_get_uid_gid "$SERVICE_NAME" "etherpad" "etherpad")) || { err "Could not fetch uid/gid on image of service ${DARKYELLOW}$SERVICE_NAME${NORMAL}." return 1 } uid="${uid_gid[0]}" gid="${uid_gid[1]}" for dir in "${dirs[@]}"; do mkdir -p "$dir" find "$dir" \! -uid "$uid" -print0 | while read-0 f; do chown -v "$uid" "$f" || return 1 done find "$dir" \! -gid "$gid" -print0 | while read-0 f; do chgrp -v "$gid" "$f" || return 1 done done