Quick reference checklist for preparing the Project Data Platform for Azure serverless deployment.
- Remove hardcoded URLs from
nuxt.config.ts - Standardize environment variable usage
- Remove duplicate code in
listFilesByContainerName() - Remove commented-out code
- Replace console.log with proper logging
- Fix CORS configuration (remove wildcard
*) - Implement proper error handling
- Remove or improve temporary cache implementation
- Fix database SSL configuration
- Create
.env.examplefor back-end - Create
.env.examplefor front-end - Document all required environment variables
- Verify environment variable loading works correctly
- Test with different environment configurations
- Create shared type definitions for OKH/OKW
- Replace
anytypes with proper types - Add type definitions for API responses
- Create
packages/back-end/Dockerfile - Use Azure Functions base image
- Configure multi-stage build
- Set up TypeScript compilation
- Configure entry point
- Test Docker build locally
- Verify function endpoints work in container
- Decide on deployment strategy (SSG vs SSR)
- Create
packages/front-end/Dockerfile - Configure build process
- Set up environment variable injection
- Test Docker build locally
- Verify front-end works in container
- Create
docker-compose.ymlfor local development - Include front-end service
- Include back-end service
- Include PostgreSQL (if needed locally)
- Test full stack locally
- Create Function App in Azure Portal
- Configure Application Settings
- Set up Azure Key Vault integration
- Configure CORS for production domain
- Set up Application Insights
- Configure scaling options
- Test deployment
- Verify all endpoints work
- Choose deployment target:
- Azure Static Web Apps (SSG)
- Azure Container Apps (SSR)
- Azure App Service (SSR)
- Configure custom domain (if applicable)
- Set up CDN (if using Static Web Apps)
- Configure environment variables
- Test deployment
- Verify API connectivity
- Verify PostgreSQL database exists in Azure
- Configure firewall rules
- Set up connection string
- Test database connectivity
- Verify schema exists (
project_data.incident)
- Verify Azure Blob Storage access
- Configure managed identity (if using)
- Test blob access from Functions
- Verify OKH/OKW containers are accessible
- Test back-end in Docker
- Test front-end in Docker
- Test full stack with Docker Compose
- Verify all API endpoints
- Test error scenarios
- Verify CORS works correctly
- Deploy back-end to Azure
- Deploy front-end to Azure
- Test all endpoints in production
- Verify database connectivity
- Verify blob storage access
- Test error handling
- Performance testing
- Load testing (if applicable)
- Remove hardcoded credentials
- Use Azure Key Vault for secrets
- Configure proper CORS (not wildcard)
- Implement proper SSL/TLS
- Security scanning of dependencies
- Review and fix security vulnerabilities
- Set up authentication (if needed)
- Update README with deployment instructions
- Document environment variables
- Create deployment guide
- Document API endpoints
- Update architecture documentation
- Set up Application Insights
- Configure logging
- Set up alerts
- Configure monitoring dashboards
packages/back-end/src/functions/httpFunctions.ts- API endpointspackages/back-end/src/db.ts- Database configurationpackages/back-end/src/lib/azure-storage.ts- Storage accesspackages/back-end/local.settings.json- Local configpackages/back-end/host.json- Functions host config
packages/front-end/nuxt.config.ts- Nuxt configurationpackages/front-end/pages/**/*.vue- Pages using APIpackages/front-end/components/**/*.vue- Components using API
Azure_Storage_ServiceName
Azure_Storage_OKH_ContainerName
Azure_Storage_OKW_ContainerName
PGHOST
PGUSER
PGPASSWORD
PGDATABASE
PGPORT
AzureWebJobsStorage
FUNCTIONS_WORKER_RUNTIME=nodeBACKEND_URL
SUPPLY_GRAPH_AI_URL (optional)Use this checklist alongside ARCHITECTURE_ANALYSIS.md for complete containerization planning.