status.go 1.3 KB

1234567891011121314151617181920212223242526
  1. package customcost
  2. import (
  3. "time"
  4. "github.com/opencost/opencost/core/pkg/opencost"
  5. )
  6. // Status gives the details and metadata of a CustomCost integration
  7. type Status struct {
  8. Enabled bool `json:"enabled"`
  9. Key string `json:"key,omitempty"`
  10. Source string `json:"source,omitempty"`
  11. Provider string `json:"provider,omitempty"`
  12. Active bool `json:"active,omitempty"`
  13. Valid bool `json:"valid,omitempty"`
  14. LastRun time.Time `json:"lastRun,omitempty"`
  15. NextRun time.Time `json:"nextRun,omitempty"`
  16. RefreshRateDaily string `json:"RefreshRateDaily,omitempty"`
  17. RefreshRateHourly string `json:"RefreshRateHourly,omitempty"`
  18. Created time.Time `json:"created,omitempty"`
  19. Runs int `json:"runs,omitempty"`
  20. CoverageHourly map[string]opencost.Window `json:"coverageHourly,omitempty"`
  21. CoverageDaily map[string]opencost.Window `json:"coverageDaily,omitempty"`
  22. ConnectionStatus string `json:"connectionStatus,omitempty"`
  23. }