Files
rogaining_srv/Makefile

120 lines
3.5 KiB
Makefile

ifneq (,$(wildcard ./.env))
include .env
export
ENV_FILE_PARAM = --env-file .env
endif
build:
docker-compose up --build -d --remove-orphans
up:
docker-compose up -d
down:
docker-compose down
logs:
docker-compose logs
migrate:
docker-compose exec api python3 manage.py migrate --noinput
makemigrations:
docker-compose exec api python3 manage.py makemigrations
superuser:
docker-compose exec api python3 manage.py createsuperuser
down-v:
docker-compose down -v
volume:
docker volume inspect rog_src_postgres_data
shell:
docker-compose exec api python3 manage.py shell
# 移行関連タスク
migration-stats:
docker compose exec app python migration_statistics.py
migration-run:
docker compose exec app python migration_final_simple.py
migration-location2025:
docker compose exec app python migration_location2025_support.py
migration-data-protection:
docker compose exec app python migration_data_protection.py
# Old RogDB → RogDB 移行
migrate-old-rogdb:
docker compose exec app python migrate_old_rogdb_to_rogdb.py
# rog_team 専用移行 (構造変換)
migrate-rog-team:
docker compose exec app python migrate_rog_team_enhanced.py
# rog_entry 専用移行 (camelCase対応)
migrate-rog-entry:
docker compose exec app python migrate_rog_entry_enhanced.py
# rog_goalimages 専用移行 (team_name→zekken_number変換)
migrate-rog-goalimages:
docker compose exec app python migrate_rog_goalimages_enhanced.py
# 完全移行(通常テーブル + 特殊テーブル)
migrate-full:
@echo "=== 1. 通常テーブル移行 (特殊テーブル除く) ==="
$(MAKE) migrate-old-rogdb
@echo "=== 2. rog_team構造変換移行 ==="
$(MAKE) migrate-rog-team
@echo "=== 3. rog_entry camelCase対応移行 ==="
$(MAKE) migrate-rog-entry
@echo "=== 4. rog_goalimages team_name→zekken変換移行 ==="
$(MAKE) migrate-rog-goalimages
@echo "=== 移行完了 ==="
# カラム名チェック
check-columns:
docker compose exec app python check_column_names.py
# NULL値チェック
check-null-values:
docker compose exec app python check_null_values.py
# 完全な移行前チェック
pre-migration-check:
@echo "=== カラム名チェック ==="
docker compose exec app python check_column_names.py
@echo "=== NULL値チェック ==="
docker compose exec app python check_null_values.py
# 移行前準備(カラム名チェック + 移行実行)
migrate-old-rogdb-safe:
@echo "=== カラム名チェック実行 ==="
docker compose exec app python check_column_names.py
@echo "=== 移行実行 ==="
docker compose exec app python migrate_old_rogdb_to_rogdb.py
migrate-old-rogdb-stats:
docker compose exec app python -c "from migrate_old_rogdb_to_rogdb import RogTableMigrator; m = RogTableMigrator(); m.connect_databases(); m.get_rog_tables()"
migrate-old-rogdb-dryrun:
docker compose exec -e EXCLUDE_TABLES=all app python migrate_old_rogdb_to_rogdb.py
migrate-old-rogdb-exclude-users:
docker compose exec -e EXCLUDE_TABLES=rog_customuser,rog_session app python migrate_old_rogdb_to_rogdb.py
# データベース関連
db-shell:
docker compose exec postgres-db psql -U $(POSTGRES_USER) -d $(POSTGRES_DBNAME)
db-backup:
docker compose exec postgres-db pg_dump -U $(POSTGRES_USER) $(POSTGRES_DBNAME) > backup_$(shell date +%Y%m%d_%H%M%S).sql
# ログ確認
app-logs:
docker compose logs app --tail=100 -f
db-logs:
docker compose logs postgres-db --tail=50 -f