#!/usr/bin/env bash # Inspired on https://github.com/adriancooney/Taskfile # # Install an alias, to be able to simply execute `run` # echo 'alias run=./scripts/run' >> ~/.aliases # # Define Docker Compose command prefix... set -e if [ $? == 0 ]; then DOCKER_COMPOSE="docker compose" else DOCKER_COMPOSE="docker-compose" fi function help { echo "$0 " echo "Tasks:" compgen -A function | cat -n } function setup:dev { docker exec coolify bash -c "php artisan key:generate" docker exec coolify bash -c "composer install" docker exec coolify bash -c "php artisan migrate:fresh --seed" } function sync:v3 { if [ -z "$1" ]; then echo -e "Please provide a version.\n\nExample: run sync:v3 3.12.32" exit 1 fi skopeo copy --all docker://ghcr.io/coollabsio/coolify:$1 docker://coollabsio/coolify:$1 } function sync:bunny { php artisan sync:bunny --env=secrets } function queue { bash spin exec -u webuser coolify php artisan queue:listen } function horizon { bash spin exec -u webuser coolify php artisan horizon -vvv } function schedule { bash spin exec -u webuser coolify php artisan schedule:work } function schedule:run { bash spin exec -u webuser coolify php artisan schedule:run } function db { bash spin exec -u webuser coolify php artisan db } function db:migrate { bash spin exec -u webuser coolify php artisan migrate } function db:reset { bash spin exec -u webuser coolify php artisan migrate:fresh --seed } function db:reset-prod { bash spin exec -u webuser coolify php artisan migrate:fresh --force --seed --seeder=ProductionSeeder || php artisan migrate:fresh --force --seed --seeder=ProductionSeeder } function mfs { db:reset } function coolify { bash spin exec -u webuser coolify bash } function coolify:root { bash spin exec coolify bash } function coolify:proxy { docker exec -ti coolify-proxy sh } function redis { docker exec -ti coolify-redis redis-cli } function vite { bash spin exec vite bash } function tinker { bash spin exec -u webuser coolify php artisan tinker } function build:helper { act -W .github/workflows/coolify-helper.yml --secret-file .env.secrets } function default { help } TIMEFORMAT="Task completed in %3lR" time "${@:-default}"