How stacklet/cur-setup works
This repository provisions cloud cost-and-usage data exports for Stacklet: an organization administrator applies Terraform in the customer account or subscription, which sets up the provider-specific export and storage access Stacklet needs. AWS produces an hourly, resource-level CUR in Parquet and grants the Stacklet SaaS account limited S3 read access. Azure creates a Cost Management export and storage account that Stacklet reads using credentials configured in Stacklet. The source excerpts were unavailable, so resource relationships follow the README; implementation details beyond the file tree and documentation are not inferred.
Main entry points: s3.tf CUR S3 bucket · cur.tf Hourly CUR · cost_management.tf Cost export job · variables.tf Setup inputs
Components 12
Shared inputs
- Setup inputs
terraform/variables.tf - Resource naming
terraform/locals.tf
AWS CUR setup
- CUR S3 bucket
terraform/s3.tf - Hourly CUR
terraform/cur.tf - CUR read access
terraform/s3.tf
Azure exports
- Resource group
terraform/cost_management.tf - Export storage
terraform/cost_management.tf - Cost export job
terraform/cost_management.tf
Other components
- Organization admin
- Stacklet platform
- AWS billing
- Azure Cost Management
Connections 15
- Organization admin → Setup inputs: supplies values
- Setup inputs → Resource naming: configures names
- Organization admin → CUR S3 bucket: provisions
- Organization admin → Hourly CUR: provisions
- Organization admin → CUR read access: provisions
- Hourly CUR → AWS billing: configures report
- Hourly CUR → CUR S3 bucket: writes report
- CUR read access → CUR S3 bucket: grants read access
- Stacklet platform → CUR S3 bucket: reads CUR
- Organization admin → Resource group: provisions
- Organization admin → Export storage: provisions
- Organization admin → Cost export job: provisions
- Cost export job → Azure Cost Management: configures export
- Cost export job → Export storage: writes exports
- Stacklet platform → Export storage: reads exports