coolify/run
Joao Patricio 8a12813e1a wip
2023-03-29 17:07:51 +01:00

52 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# Inspired on https://github.com/adriancooney/Taskfile
#
# Install an alias, to be able to simply execute `run`
# echo 'alias run=./run' >> ~/.aliases
#
# Define Docker Compose command prefix...
set -e
docker compose &> /dev/null
if [ $? == 0 ]; then
DOCKER_COMPOSE="docker compose"
else
DOCKER_COMPOSE="docker-compose"
fi
SAIL=./vendor/bin/sail
export WWWUSER=${WWWUSER:-$UID}
export WWWGROUP=${WWWGROUP:-$(id -g)}
function help {
echo "$0 <task> <args>"
echo "Tasks:"
compgen -A function | cat -n
}
function default {
help
}
function wait_db {
TRIES=0
MAX_TRIES=15
WAIT=4
until $DOCKER_COMPOSE exec postgres bash -c "psql -U coolify -d coolify -t -q -c \"SELECT datname FROM pg_database;\" " | grep coolify
do
((TRIES++))
if [ $TRIES -gt $MAX_TRIES ]; then
echo "Database is not ready after $MAX_TRIES tries. Exiting."
exit 1
fi
echo "Database is not ready yet. Attempt $TRIES/$MAX_TRIES. Waiting $WAIT seconds before next try..."
sleep $WAIT
done
}
TIMEFORMAT="Task completed in %3lR"
time "${@:-default}"