f2c534f636
- mongo-driver v2 connection with bounded startup retry + /readyz gate - idempotent creation of all §4.9 indexes - UpdateVersioned: version-filtered updates, conflict vs not-found errors - AES-256-GCM Seal/Open for ticketing credentials, base64(nonce|ct) - GridFS file store: MIME sniffing, MAX_UPLOAD_MB cap, sha256 metadata - HMAC-signed short-lived file URL tokens (§5.1, 1h TTL) - integration tests against compose Mongo via docker-compose.test.yml overlay Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
35 lines
728 B
Makefile
35 lines
728 B
Makefile
GO ?= go
|
|
|
|
.PHONY: build run test test-integration lint seed smoke backup restore
|
|
|
|
build:
|
|
$(GO) build ./...
|
|
|
|
run:
|
|
$(GO) run ./cmd/app
|
|
|
|
test:
|
|
$(GO) test ./...
|
|
|
|
# Requires Mongo reachable on 127.0.0.1:27017 (or MONGO_TEST_URI):
|
|
# docker compose -f docker-compose.yml -f docker-compose.test.yml up -d mongo
|
|
test-integration:
|
|
$(GO) test -tags=integration ./...
|
|
|
|
lint:
|
|
@unformatted=$$(gofmt -l .); if [ -n "$$unformatted" ]; then \
|
|
echo "gofmt needed on:"; echo "$$unformatted"; exit 1; fi
|
|
$(GO) vet ./...
|
|
|
|
seed:
|
|
@echo "seed script lands in phase 12 (scripts/seed.go)"; exit 1
|
|
|
|
smoke:
|
|
./scripts/smoke.sh
|
|
|
|
backup:
|
|
@echo "backup target lands in phase 12"; exit 1
|
|
|
|
restore:
|
|
@echo "restore target lands in phase 12"; exit 1
|