From ad63f6e3c546d087555826a2c6eda9babebc1007 Mon Sep 17 00:00:00 2001 From: Hayden Hargreaves Date: Tue, 7 Oct 2025 12:07:05 -0700 Subject: [PATCH] (FIX): Database backup scripts. --- internal/infrastructure/database/backup/dump.sh | 7 +++++++ internal/infrastructure/database/backup/restore.sh | 7 +++++++ .../database/migrations/100_init_database.sh | 13 +++++++++++++ 3 files changed, 27 insertions(+) create mode 100755 internal/infrastructure/database/backup/dump.sh create mode 100755 internal/infrastructure/database/backup/restore.sh create mode 100755 internal/infrastructure/database/migrations/100_init_database.sh diff --git a/internal/infrastructure/database/backup/dump.sh b/internal/infrastructure/database/backup/dump.sh new file mode 100755 index 0000000..bbc54e0 --- /dev/null +++ b/internal/infrastructure/database/backup/dump.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +pg_dump \ + -h "$PSQL_HOST" \ + -U "$PSQL_USERNAME" \ + -Fc -v -d "$PSQL_DATABASE" \ + -f backup.dump diff --git a/internal/infrastructure/database/backup/restore.sh b/internal/infrastructure/database/backup/restore.sh new file mode 100755 index 0000000..f16832e --- /dev/null +++ b/internal/infrastructure/database/backup/restore.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +pg_restore \ + -h "$PSQL_HOST" \ + -U "$PSQL_USERNAME" \ + -v -d "$PSQL_DATABASE_BACKUP" \ + -c -F c backup.dump diff --git a/internal/infrastructure/database/migrations/100_init_database.sh b/internal/infrastructure/database/migrations/100_init_database.sh new file mode 100755 index 0000000..94f8559 --- /dev/null +++ b/internal/infrastructure/database/migrations/100_init_database.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/001_create_users_table.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/002_create_meal_enum.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/003_create_recipes_table.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/004_create_fts_index.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/005_create_tags_tables.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/006_create_engagment_enum.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/007_create_engagement_table.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/008_create_favorites_table.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/009_create_recipe_of_the_week_table.sql +psql -h "$PSQL_HOST" -U "$PSQL_USERNAME" -d "$PSQL_DATABASE" -f ./internal/infrastructure/database/migrations/010_create_recipe_of_the_week_procedure.sql +