feat: crud-pricing initial implementation
All checks were successful
kinec.tech/airun-pathfinder-crud-pricing/pipeline/head This commit looks good

Complete CRUD service for AWS pricing operations - single source of truth.

Features:
- Dual pricing model (retail + account-specific with auto EDP/PPA detection)
- Get/Put pricing operations with intelligent caching
- AWS Pricing API integration for public list prices
- AWS Cost Explorer integration for account-specific pricing
- Access counting for self-learning 14-day refresh
- Query most-accessed instances (powers smart refresh)
- TTL: 30 days (retail), 7 days (account-specific)

Architecture:
- All other lambdas use this for pricing operations
- No direct DynamoDB access from other components
- Consistent schema enforcement
- Complete IAM setup for Pricing API, Cost Explorer, STS

Infrastructure:
- Complete Terraform configuration
- Full CI/CD pipeline (Jenkinsfile)
- Comprehensive documentation
- Production-ready scaffolding

Part of Phase 1 - foundation for pricing system.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-27 04:20:56 -05:00
commit e88609d724
13 changed files with 2494 additions and 0 deletions

19
terraform/outputs.tf Normal file
View File

@@ -0,0 +1,19 @@
output "lambda_function_arn" {
description = "ARN of the crud-pricing Lambda function"
value = aws_lambda_function.crud_pricing.arn
}
output "lambda_function_name" {
description = "Name of the crud-pricing Lambda function"
value = aws_lambda_function.crud_pricing.function_name
}
output "lambda_role_arn" {
description = "ARN of the Lambda execution role"
value = aws_iam_role.lambda.arn
}
output "table_name" {
description = "DynamoDB table name used by this Lambda"
value = local.table_name
}