Initial commit
This commit is contained in:
56
docker/snibox/setup
Executable file
56
docker/snibox/setup
Executable file
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
GREEN='\033[0;32m'
|
||||
RED='\033[0;31m'
|
||||
YELLOW='\033[0;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
DEFAULT_SECRET='paste_your_key'
|
||||
|
||||
function report_status() {
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
echo -e "${GREEN}Done${NC}"
|
||||
else
|
||||
echo -e "${RED}Unable to complete task${NC}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
echo -e "Copy .env.sample to .env:"
|
||||
if [ ! -f .env ]
|
||||
then
|
||||
cp .env.sample .env
|
||||
report_status
|
||||
else
|
||||
echo -e "${GREEN}File .env already exists${NC}"
|
||||
fi
|
||||
|
||||
echo -e "\nPull images:"
|
||||
docker compose pull
|
||||
report_status
|
||||
|
||||
echo -e "\nInject secret key:"
|
||||
if grep -Rq "$DEFAULT_SECRET" .env
|
||||
then
|
||||
secret=$(docker compose run --rm --no-deps backend ./bin/rake secret)
|
||||
echo "$secret"
|
||||
# based on https://stackoverflow.com/a/22084103
|
||||
sed -i.bak "s/$DEFAULT_SECRET/$secret/" .env
|
||||
rm .env.bak
|
||||
report_status
|
||||
else
|
||||
echo -e "${GREEN}Personal secret key exists${NC}"
|
||||
fi
|
||||
|
||||
echo -e "\nCreate database:"
|
||||
docker compose run --rm backend ./bin/rake db:create
|
||||
report_status
|
||||
|
||||
echo -e "\nRun migrations:"
|
||||
docker compose run --rm backend ./bin/rake db:migrate
|
||||
report_status
|
||||
|
||||
echo -e "\n${GREEN}Setup completed!${NC}"
|
||||
Reference in New Issue
Block a user