initial commit. Cloned timetracker repository
This commit is contained in:
41
taskfiles/db.yml
Normal file
41
taskfiles/db.yml
Normal file
@@ -0,0 +1,41 @@
|
||||
version: "3"
|
||||
|
||||
tasks:
|
||||
|
||||
reset:
|
||||
desc: Drop and recreate database
|
||||
cmds:
|
||||
- |
|
||||
docker compose -p {{.PROJECT}} exec -T {{.DB_SERVICE_NAME}} sh -c "PGPASSWORD='{{.DB_PASSWORD}}' psql -U {{.DB_USER}} -d postgres -c \
|
||||
\"SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname='{{.DB_NAME}}' AND pid<>pg_backend_pid();\""
|
||||
- |
|
||||
docker compose -p {{.PROJECT}} exec -T {{.DB_SERVICE_NAME}} sh -c "PGPASSWORD='{{.DB_PASSWORD}}' psql -U {{.DB_USER}} -d postgres -c \"DROP DATABASE IF EXISTS {{.DB_NAME}};\""
|
||||
- |
|
||||
docker compose -p {{.PROJECT}} exec -T {{.DB_SERVICE_NAME}} sh -c "PGPASSWORD='{{.DB_PASSWORD}}' psql -U {{.DB_USER}} -d postgres -c \"CREATE DATABASE {{.DB_NAME}};\""
|
||||
|
||||
|
||||
restore:
|
||||
desc: Restore DB from file
|
||||
aliases: [r]
|
||||
preconditions:
|
||||
- sh: '[ -n "{{index .CLI_ARGS_LIST 0}}" ]'
|
||||
msg: "Usage: task db:restore -- dump.sql"
|
||||
cmds:
|
||||
- task db:reset
|
||||
- |
|
||||
cat {{index .CLI_ARGS_LIST 0}} | docker compose -p {{.PROJECT}} exec -T {{.DB_SERVICE_NAME}} sh -c "PGPASSWORD='{{.DB_PASSWORD}}' psql -U {{.DB_USER}} -d {{.DB_NAME}}"
|
||||
- task db:migrate
|
||||
|
||||
|
||||
migrate:
|
||||
desc: Apply SQL migrations
|
||||
aliases: [m]
|
||||
cmds:
|
||||
- |
|
||||
sed '/-- +goose Down/,$d' i18n/migrations/20260302163100_routes.sql | docker compose -p {{.PROJECT}} exec -T -e PGPASSWORD={{.DB_PASSWORD}} {{.DB_SERVICE_NAME}} psql -U {{.DB_USER}} -d {{.DB_NAME}}
|
||||
sed '/-- +goose Down/,$d' i18n/migrations/20260302163122_create_tables.sql | docker compose -p {{.PROJECT}} exec -T -e PGPASSWORD={{.DB_PASSWORD}} {{.DB_SERVICE_NAME}} psql -U {{.DB_USER}} -d {{.DB_NAME}}
|
||||
sed '/-- +goose Down/,$d' i18n/migrations/20260302163152_translations_backoffice.sql | docker compose -p {{.PROJECT}} exec -T -e PGPASSWORD={{.DB_PASSWORD}} {{.DB_SERVICE_NAME}} psql -U {{.DB_USER}} -d {{.DB_NAME}}
|
||||
sed '/-- +goose Down/,$d' i18n/migrations/20260302163157_translations_backend.sql | docker compose -p {{.PROJECT}} exec -T -e PGPASSWORD={{.DB_PASSWORD}} {{.DB_SERVICE_NAME}} psql -U {{.DB_USER}} -d {{.DB_NAME}}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user