Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).

### Added

- **`common.SavingsPlanDetails.Currency`:** the ISO 4217 code the hourly
commitment is denominated in. Additive and unused until the Azure Savings Plan
client starts requiring it (#46).

- **`recommendations.ApplyFamilyNUSizingRDSWithExpiry`:** family-NU sizing
that deducts RDS RIs expiring inside the rebuy window from family coverage
in normalized units (`max(covered - expiring, min(covered, active - expiring))`,
Expand Down
6 changes: 5 additions & 1 deletion pkg/common/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -673,7 +673,11 @@ func (d NoSQLDetails) GetDetailDescription() string {
type SavingsPlanDetails struct {
PlanType string `json:"plan_type"` // Compute, EC2Instance, SageMaker
HourlyCommitment float64 `json:"hourly_commitment"`
Coverage string `json:"coverage,omitempty"`
// Currency is the ISO 4217 code HourlyCommitment is denominated in. Azure
// requires it to match the billing account currency and fails closed when
// it is empty or malformed; empty is never treated as USD.
Currency string `json:"currency,omitempty"`
Coverage string `json:"coverage,omitempty"`
// InstanceFamily is the EC2 instance family recommended by Cost Explorer
// (e.g. "m5"). Only populated for EC2Instance Savings Plans; empty for
// Compute, SageMaker and Database plans which are family-agnostic. Used at
Expand Down
Loading