Fix build process and add production build support

🔧 Build Process Improvements:
- Update default 'build' target to use development mode
- Add new 'build-prod' target for production builds with validation
- Fix 'deploy-prod-quick' to use production build command
- Update 'build-test' to use development build (safer for CI)

📚 Documentation:
- Add comprehensive Production Build Guide (docs/deployment/PRODUCTION_BUILD.md)
- Include security requirements, configuration methods, and troubleshooting
- Update main documentation index with production build guide
- Update README with both build command options

 Features:
- Development builds work without security configuration
- Production builds require proper JWT/SESSION secrets
- Clear separation between dev and prod build processes
- Comprehensive production deployment documentation

🔒 Security:
- Enforced JWT_SECRET validation for production builds
- Clear documentation of required security configurations
- Examples for CI/CD integration with proper secret management
- Best practices for production deployment

🧪 Verification:
-  Development build: make build (works with warnings)
-  Production build validation: make build-prod (fails without secrets)
-  Production build with secrets: works correctly
-  All existing functionality preserved
This commit is contained in:
William Valentin
2025-09-08 19:23:42 -07:00
parent 430bc6acf8
commit beb9d84071
4 changed files with 421 additions and 7 deletions

View File

@@ -37,8 +37,12 @@ dev: ## Start development server
@printf "$(BLUE)Starting development server...$(RESET)\n"
@bun run dev
build: ## Build the application
@printf "$(BLUE)Building application...$(RESET)\n"
build: ## Build the application for development
@printf "$(BLUE)Building application for development...$(RESET)\n"
@NODE_ENV=development bun run build
build-prod: ## Build the application for production
@printf "$(BLUE)Building application for production...$(RESET)\n"
@bun run build
preview: ## Preview the built application
@@ -202,7 +206,7 @@ build-test: build test ## Build and run unit tests
deploy-dev-quick: build deploy-dev ## Build and deploy to development
@printf "$(GREEN)Quick development deployment completed!$(RESET)\n"
deploy-prod-quick: build deploy-prod ## Build and deploy to production
deploy-prod-quick: build-prod deploy-prod ## Build and deploy to production
@printf "$(GREEN)Quick production deployment completed!$(RESET)\n"
undeploy-all: undeploy-dev undeploy-prod docker-clean ## Remove all deployments and clean Docker