#!/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

set -e

uid=$(docker_get_uid "$SERVICE_NAME" "rocketchat")

dirs=(/app/uploads )
host_dirs=()
for dir in "${dirs[@]}"; do
    host_dirs+=("$SERVICE_DATASTORE$dir")
done

mkdir -p "${host_dirs[@]}"
find "${host_dirs[@]}" \! -user "$uid" -print0 | while read-0 f; do
    chown -v "$uid" "$f" || exit 1
done