Versions in this module Expand all Collapse all v1 v1.0.1 Apr 27, 2026 Changes in this version + const ADDED + const REMOVED + const UPDATED + var AzureReposMaxMessageSize = 140000 + var GitHubMaxMessageSize = 200000 + func FormatCost2DP(currency string, d *decimal.Decimal) string + func FormatOutput(format string, r Report, opts Options) ([]byte, error) + func LoadCommentData(path string) (string, error) + func ToDiff(out Report, opts Options) ([]byte, error) + func ToHTML(out Report, opts Options) ([]byte, error) + func ToJSON(out Report, opts Options) ([]byte, error) + func ToSlackMessage(out Report, opts Options) ([]byte, error) + func ToTable(out Report, opts Options) ([]byte, error) + type ActualCosts struct + CostComponents []CostComponent + EndTimestamp time.Time + ResourceID string + StartTimestamp time.Time + type Breakdown struct + FreeResources []Resource + Resources []Resource + TotalHourlyCost *decimal.Decimal + TotalMonthlyCost *decimal.Decimal + TotalMonthlyUsageCost *decimal.Decimal + func (b *Breakdown) HasResources() bool + func (b *Breakdown) TotalMonthlyBaselineCost() *decimal.Decimal + type CostComponent struct + HourlyCost *decimal.Decimal + HourlyQuantity *decimal.Decimal + MonthlyCost *decimal.Decimal + MonthlyQuantity *decimal.Decimal + Name string + Price decimal.Decimal + PriceNotFound bool + Unit string + UsageBased bool + type GovernanceFailures []string + func (g GovernanceFailures) Error() string + type MarkdownCtx struct + CostDetailsMsg string + DiffOutput string + ErroredProjectCount int + MarkdownOptions MarkdownOptions + Options Options + Root Report + RunQuotaMsg string + SkippedProjectCount int + SkippedUnchangedProjectCount int + UsageCostsMsg string + type MarkdownOptions struct + Additional string + BasicSyntax bool + IncludeFeedbackLink bool + MaxMessageSize int + OmitDetails bool + WillReplace bool + WillUpdate bool + type MarkdownOutput struct + Msg []byte + OriginalMsgSize int + RuneLen int + func ToMarkdown(out Report, opts Options, markdownOpts MarkdownOptions) (MarkdownOutput, error) + type Metadata struct + BaseCommitSHA string + Branch string + C3XCommand string + CommitAuthorEmail string + CommitAuthorName string + CommitMessage string + CommitSHA string + CommitTimestamp time.Time + ConfigFileHasUsageFile bool + ConfigFilePath string + UsageApiEnabled bool + UsageFilePath string + VCSBaseBranch string + VCSPipelineRunID string + VCSProvider string + VCSPullRequestAuthor string + VCSPullRequestID string + VCSPullRequestLabels []string + VCSPullRequestTitle string + VCSPullRequestURL string + VCSRepositoryURL string + func NewMetadata(ctx *settings.Session) Metadata + type Options struct + CurrencyFormat string + DashboardEndpoint string + Fields []string + IncludeHTML bool + NoColor bool + PolicyOutput PolicyOutput + ShowAllProjects bool + ShowOnlyChanges bool + ShowSkipped bool + type PolicyCheck struct + Enabled bool + Failures PolicyCheckFailures + Passed []string + func (p PolicyCheck) HasFailed() bool + type PolicyCheckFailures []string + func (p PolicyCheckFailures) Error() string + type PolicyCheckOutput struct + Details []string + Failure bool + Message string + Name string + ResourceDetails []PolicyCheckResourceDetails + TruncatedCount int + Warning bool + type PolicyCheckResourceDetails struct + Address string + Line int + Path string + ResourceType string + Violations []PolicyCheckViolations + type PolicyCheckViolations struct + Details []string + ProjectNames []string + type PolicyOutput struct + Checks []PolicyCheckOutput + HasFailures bool + HasWarnings bool + func NewPolicyOutput(pc PolicyCheck) PolicyOutput + type Project struct + Breakdown *Breakdown + Diff *Breakdown + DisplayName string + Metadata *engine.WorkspaceMeta + Name string + PastBreakdown *Breakdown + Summary *Summary + func (p *Project) Label() string + func (p *Project) LabelWithMetadata() string + func (p *Project) ToSchemaProject() *engine.Workspace + type Projects []Project + func (projects Projects) IsRunQuotaExceeded() (string, bool) + type Report struct + CloudURL string + Currency string + DiffTotalHourlyCost *decimal.Decimal + DiffTotalMonthlyCost *decimal.Decimal + DiffTotalMonthlyUsageCost *decimal.Decimal + FullSummary *Summary + IsCIRun bool + Metadata Metadata + PastTotalHourlyCost *decimal.Decimal + PastTotalMonthlyCost *decimal.Decimal + PastTotalMonthlyUsageCost *decimal.Decimal + Projects Projects + RunID string + ShareURL string + Summary *Summary + TimeGenerated time.Time + TotalHourlyCost *decimal.Decimal + TotalMonthlyCost *decimal.Decimal + TotalMonthlyUsageCost *decimal.Decimal + Version string + func Combine(inputs []ReportInput) (Report, error) + func CompareTo(c *settings.Settings, current, prior Report) (Report, error) + func Load(p string) (Report, error) + func ToOutputFormat(c *settings.Settings, projects []*engine.Workspace) (Report, error) + func (r *Report) ExampleProjectName() string + func (r *Report) HasDiff() bool + func (r *Report) HasUnsupportedResources() bool + type ReportInput struct + Metadata map[string]string + Root Report + func LoadPaths(paths []string) ([]ReportInput, error) + type Resource struct + ActualCosts []ActualCosts + CostComponents []CostComponent + DefaultTags *map[string]string + HourlyCost *decimal.Decimal + Metadata map[string]interface{} + MissingVarsCausingUnknownDefaultTagKeys []string + MissingVarsCausingUnknownTagKeys []string + MonthlyCost *decimal.Decimal + MonthlyUsageCost *decimal.Decimal + Name string + ProviderLink string + ProviderSupportsDefaultTags bool + ResourceType string + SubResources []Resource + TagPropagation *TagPropagation + Tags *map[string]string + type Summary struct + EstimatedUsageCounts *map[string]int + NoPriceResourceCounts *map[string]int + SupportedResourceCounts *map[string]int + TotalDetectedResources *int + TotalEstimatedUsages *int + TotalNoPriceResources *int + TotalResources *int + TotalSupportedResources *int + TotalUnestimatedUsages *int + TotalUnsupportedResources *int + TotalUsageBasedResources *int + UnestimatedUsageCounts *map[string]int + UnsupportedResourceCounts *map[string]int + func BuildSummary(resources []*engine.Estimate, opts SummaryOptions) (*Summary, error) + func MergeSummaries(summaries []*Summary) *Summary + type SummaryOptions struct + IncludeUnsupportedProviders bool + OnlyFields []string + type TagPropagation struct + Attribute string + From *string + HasRequiredAttributes bool + Tags *map[string]string + To string