35 lines
1.5 KiB
Bash
35 lines
1.5 KiB
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
echo "📌 Esperando a que la base de datos esté lista..."
|
|
until mysql -h db -u"$REDMINE_DB_USERNAME" -p"$REDMINE_DB_PASSWORD" -e "SELECT 1;" &> /dev/null; do
|
|
sleep 5
|
|
done
|
|
|
|
echo "📌 Verificando si la base de datos está preparada..."
|
|
# Comprobar si la tabla 'projects' existe
|
|
TABLE_EXISTS=$(mysql -h db -u"$REDMINE_DB_USERNAME" -p"$REDMINE_DB_PASSWORD" -D "$REDMINE_DB_DATABASE" \
|
|
-se "SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = '$REDMINE_DB_DATABASE' AND table_name = 'projects';")
|
|
|
|
if [ "$TABLE_EXISTS" -eq 0 ]; then
|
|
echo "🚀 Tabla 'projects' no existe. Importando backup..."
|
|
mysql -h db -u"$REDMINE_DB_USERNAME" -p"$REDMINE_DB_PASSWORD" "$REDMINE_DB_DATABASE" < /suitepro-backup.sql
|
|
echo "✅ Importación completada."
|
|
else
|
|
# Si la tabla existe, se comprueba si tiene registros
|
|
RECORD_COUNT=$(mysql -h db -u"$REDMINE_DB_USERNAME" -p"$REDMINE_DB_PASSWORD" -D "$REDMINE_DB_DATABASE" \
|
|
-se "SELECT COUNT(*) FROM projects;")
|
|
if [ "$RECORD_COUNT" -eq 0 ]; then
|
|
echo "🚀 Tabla 'projects' está vacía. Importando backup..."
|
|
mysql -h db -u"$REDMINE_DB_USERNAME" -p"$REDMINE_DB_PASSWORD" "$REDMINE_DB_DATABASE" < /suitepro-backup.sql
|
|
echo "✅ Importación completada."
|
|
fi
|
|
fi
|
|
|
|
echo "🚀 Ejecutando migraciones de plugins..."
|
|
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
|
|
|
|
# Iniciar Redmine
|
|
echo "🚀 Iniciando Redmine..."
|
|
exec rails server -b 0.0.0.0
|