28 lines
689 B
Bash
Executable File
28 lines
689 B
Bash
Executable File
#!/bin/bash
|
|
# Dropa e recria o banco do zero.
|
|
#
|
|
# As credenciais vem do DATABASE_URL: do ambiente, se ja exportado, senao do
|
|
# .env. Nada de senha em texto no script (a versao antiga tinha, e usava
|
|
# `set -Ux`, que e fish, num arquivo que declara bash: a variavel nunca era
|
|
# exportada).
|
|
set -e
|
|
cd "$(dirname "$0")"
|
|
|
|
if [ -z "$DATABASE_URL" ]; then
|
|
set -a
|
|
source .env
|
|
set +a
|
|
fi
|
|
|
|
DB="${DATABASE_URL##*/}"
|
|
ADMIN_URL="${DATABASE_URL%/*}/postgres"
|
|
|
|
psql "$ADMIN_URL" -c "DROP DATABASE IF EXISTS $DB;"
|
|
psql "$ADMIN_URL" -c "CREATE DATABASE $DB;"
|
|
|
|
if command -v sqlx > /dev/null; then
|
|
sqlx migrate run
|
|
else
|
|
echo "sqlx-cli nao instalado; as migrations rodam no proximo 'cargo run'."
|
|
fi
|