Files
marquiz-metrics/Makefile
13orlov afbca6a2c4
All checks were successful
continuous-integration/drone/push Build is passing
feat(makefile): Add separate commands for dev environment
2025-08-25 21:39:00 +01:00

75 lines
3.2 KiB
Makefile

# ==============================================================================
# ЛОКАЛЬНАЯ РАЗРАБОТКА (DEV)
# ==============================================================================
# Эти команды предназначены для работы на локальной машине разработчика.
# Они используют docker-compose.base.yml и автоматически подхватывают
# файлы .env и docker-compose.override.yml (если они есть).
dev-up:
@echo "--- Starting Development Environment (using .env) ---"
docker compose -f docker-compose.base.yml up -d --build
dev-down:
@echo "--- Stopping Development Environment ---"
docker compose -f docker-compose.base.yml down
dev-logs:
@echo "--- Tailing Development Logs ---"
docker compose -f docker-compose.base.yml logs -f
# ==============================================================================
# STAGING ОКРУЖЕНИЕ (ДЛЯ VDS)
# ==============================================================================
# Эти команды используются для управления Staging-окружением, в том числе в CI/CD.
# Они явно указывают, какие файлы конфигурации и переменных использовать.
staging-up:
@echo "--- Starting Staging Environment (using .env.staging) ---"
docker compose --env-file .env.staging -f docker-compose.base.yml -f docker-compose.staging.yml up -d --build
staging-down:
@echo "--- Stopping Staging Environment ---"
docker compose --env-file .env.staging -f docker-compose.base.yml -f docker-compose.staging.yml down
staging-logs:
@echo "--- Tailing Staging Logs ---"
docker compose --env-file .env.staging -f docker-compose.base.yml -f docker-compose.staging.yml logs -f
# ==============================================================================
# PRODUCTION ОКРУЖЕНИЕ (ДЛЯ VDS)
# ==============================================================================
# Аналогично Staging, но для Production.
prod-up:
@echo "--- Starting Production Environment (using .env.prod) ---"
docker compose --env-file .env.prod -f docker-compose.base.yml -f docker-compose.prod.yml up -d --build
prod-down:
@echo "--- Stopping Production Environment ---"
docker compose --env-file .env.prod -f docker-compose.base.yml -f docker-compose.prod.yml down
prod-logs:
@echo "--- Tailing Production Logs ---"
docker compose --env-file .env.prod -f docker-compose.base.yml -f docker-compose.prod.yml logs -f
# ==============================================================================
# УПРАВЛЕНИЕ ЗАВИСИМОСТЯМИ И ТЕСТАМИ
# ==============================================================================
install:
@echo "--- Installing dependencies via Poetry ---"
poetry install
test:
@echo "--- Running tests ---"
poetry run pytest -v
# ==============================================================================
# УПРАВЛЕНИЕ GIT
# ==============================================================================
save:
@git add .
@git commit -m "$(msg)"
@git push