52 lines
1.1 KiB
Bash
Executable File
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}"
|