Skip to content

Conversation

@andresilva-guardian
Copy link

@andresilva-guardian andresilva-guardian commented Aug 1, 2025

Summary

This PR migrates the invoicing-api infrastructure from CloudFormation to AWS CDK, improving maintainability and consistency with other Guardian projects. The migration provides type-safe infrastructure definitions and better integration with Guardian CDK patterns while maintaining full backward compatibility.

What's Changed

🆕 New Files

  • invoicing-api-stack.ts - Complete CDK stack implementation for invoicing API infrastructure with Lambda functions, API Gateway, CloudWatch alarms, and IAM roles
  • cdk.ts - CDK application entry point with support for CODE and PROD environments
  • package.json - CDK project dependencies and deployment scripts
  • cdk.json - CDK configuration with AWS feature flags
  • tsconfig.json - TypeScript configuration for CDK project
  • README.md - Comprehensive documentation for CDK deployment and architecture
  • cfn-migration-notice.yaml - Migration notice template explaining the transition to CDK
  • settings.json - VS Code settings to exclude build artifacts from file watcher

📝 Modified Files

  • cfn.yaml - Replaced original CloudFormation template with migration notice and placeholder resources

Breaking Changes

None - this is a like-for-like migration maintaining full backward compatibility with existing Lambda code, API endpoints, and configuration.

Related Issues

This addresses the ongoing initiative to migrate all CloudFormation templates to native CDK implementations across the Value Team's repositories.


Note: The original CloudFormation template (cfn.yaml) has been replaced with a migration notice. The CDK implementation provides identical infrastructure and can be deployed immediately.

@andresilva-guardian andresilva-guardian marked this pull request as draft August 1, 2025 10:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants