-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprod.sh
executable file
·39 lines (36 loc) · 1.91 KB
/
prod.sh
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
32
33
34
35
36
37
38
39
#!/bin/bash
declare -A CMDS
CMDS[m]="docker-compose -f docker-compose.production.yml run --rm api python src/manage.py"
CMDS[i]="docker-compose -f docker-compose.production.yml -f docker-compose.production.yml run --rm api invoke"
CMDS[cleanslate]="docker-compose -f docker-compose.production.yml run --rm api invoke clean-slate"
CMDS[test]="docker-compose -f docker-compose.production.yml run --rm api invoke run-python-tests --coverage"
CMDS[build]="docker-compose -f docker-compose.production.yml build"
CMDS[up]="docker-compose -f docker-compose.production.yml up -d"
CMDS[up-non-daemon]="docker-compose -f docker-compose.production.yml up"
CMDS[start]="docker-compose -f docker-compose.production.yml start"
CMDS[stop]="docker-compose -f docker-compose.production.yml stop"
CMDS[restart]="docker-compose -f docker-compose.production.yml stop && docker-compose -f docker-compose.production.yml start"
CMDS[shell-api]="docker exec -ti api bash"
CMDS[shell-celeryworker]="docker exec -ti celeryworker bash"
CMDS[shell-celerybeat]="docker exec -ti celerybeat bash"
CMDS[shell-db]="docker exec -ti db bash"
CMDS[shell-nginx_react]="docker exec -ti nginx_react bash"
CMDS[log-api]="docker-compose -f docker-compose.production.yml logs api "
CMDS[log-celeryworker]="docker-compose -f docker-compose.production.yml logs celeryworker "
CMDS[log-celerybeat]="docker-compose -f docker-compose.production.yml logs celerybeat "
CMDS[log-postgres]="docker-compose -f docker-compose.production.yml logs postgres"
CMDS[log-nginx_react]="docker-compose -f docker-compose.production.yml logs nginx_react"
CMDS[makemigrations]="docker-compose -f docker-compose.production.yml run --rm api invoke make-migrations"
# Read the command
cmd="$1"
extra_args="${*:2}"
if [ ! -z "$cmd" ] && [[ ${CMDS[$cmd]} ]]
then
exec ${CMDS[$cmd]} $extra_args
else
# Print the commands
for i in "${!CMDS[@]}"
do
printf "%-20s%s\n" "${i}:" "${CMDS[$i]}"
done
fi