summaryrefslogtreecommitdiff
path: root/rabbitmq/add_users.sh
blob: 8b78f9cc2fa75fcf65e49e5b34eb4263a2e55dc5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env bash
set -e

(
count=0;
# Execute list_users until service is up and running
until timeout 5 rabbitmqctl list_users >/dev/null 2>/dev/null || (( count++ >= 20 )); do sleep 1; done;
if ! rabbitmqctl list_users | grep updater > /dev/null
then
   # rabbitmqctl delete_user guest
   rabbitmqctl add_user web web
   rabbitmqctl set_permissions -p / web "^stomp-subscription-" "^stomp-subscription-" "^(amq.topic$|stomp-subscription-)"
   # read only amq.topic on host /, but allow stomp subscribe
   # services below: all allowed
   rabbitmqctl add_user updater updater
   rabbitmqctl set_permissions -p / updater ".*" ".*" ".*"
   rabbitmqctl add_user apigrabber apigrabber
   rabbitmqctl set_permissions -p / apigrabber ".*" ".*" ".*"
   rabbitmqctl add_user processor processor
   rabbitmqctl set_permissions -p / processor ".*" ".*" ".*"
   rabbitmqctl add_user compiler compiler
   rabbitmqctl set_permissions -p / compiler ".*" ".*" ".*"

   echo "setup completed"
else
   echo "already setup"
fi
) &

# Call original entrypoint
exec docker-entrypoint.sh rabbitmq-server $@