Files
spotlightcam/Makefile
Radosław Gierwiało b556abb854 feat(seed): split seed scripts into production and development
- Create seed.production.js with admin user, divisions, and competition types only
- Rename seed.js to seed.development.js with all test data
- Add admin@spotlight.cam account with isAdmin flag and COMFORT tier
- Update test users to use @spotlight.cam domain and SUPPORTER tier
- Remove wsdcId from test users
- Add npm scripts: prisma:seed:dev and prisma:seed:prod
- Add Makefile targets: seed-dev and seed-prod
2025-12-06 12:23:05 +01:00

79 lines
2.4 KiB
Makefile

SHELL := /bin/bash
COMPOSE ?= docker compose
PROFILE ?= dev
# Select backend service name based on profile
ifeq ($(PROFILE),prod)
BACKEND_SVC := backend-prod
else
BACKEND_SVC := backend
endif
.PHONY: help dev-cli prod-cli \
dev-up dev-down dev-up-rebuild \
prod-up prod-down prod-up-rebuild \
seed-dev seed-prod \
test test-watch test-coverage
help:
@echo "Available targets:"
@echo " make dev-cli # Start admin REPL in dev backend"
@echo " make prod-cli # Start admin REPL in prod backend"
@echo " make dev-up # docker compose --profile dev up"
@echo " make dev-up-rebuild # docker compose --profile dev up --build"
@echo " make dev-down # docker compose --profile dev down"
@echo " make prod-up # docker compose --profile prod up -d"
@echo " make prod-up-rebuild # docker compose --profile prod up -d --build"
@echo " make prod-down # docker compose --profile prod down"
@echo " make seed-dev # Seed database with development data"
@echo " make seed-prod # Seed database with production data"
@echo " make test # Run backend tests"
@echo " make test-watch # Run backend tests in watch mode"
@echo " make test-coverage # Run backend tests with coverage report"
@echo "Notes: GNU Make nie wspiera subkomend z odstępami (np. 'make prod up')."
@echo " Użyj odpowiednich celów z myślnikiem."
# Admin CLI explicit targets
dev-cli:
$(COMPOSE) exec backend npm run cli
prod-cli:
$(COMPOSE) exec backend-prod npm run cli
# Development profile
dev-up:
$(COMPOSE) --profile dev up -d
dev-up-rebuild:
$(COMPOSE) --profile dev up -d --build
dev-down:
$(COMPOSE) --profile dev down
# Production profile
prod-up:
$(COMPOSE) --profile prod up -d
prod-up-rebuild:
$(COMPOSE) --profile prod up -d --build
prod-down:
$(COMPOSE) --profile prod down
# Database seeding
seed-dev:
$(COMPOSE) exec backend npm run prisma:seed:dev
seed-prod:
$(COMPOSE) exec $(BACKEND_SVC) npm run prisma:seed:prod
# Tests
test:
$(COMPOSE) exec $(BACKEND_SVC) npm test
test-watch:
$(COMPOSE) exec $(BACKEND_SVC) npm run test:watch
test-coverage:
$(COMPOSE) exec $(BACKEND_SVC) npm test -- --coverage