Documentation ¶
Index ¶
- func Hash(org string, entity HashableEntity) string
- type AlertPolicy
- type DeepEntity
- type Edge
- type Entity
- type EntityContext
- type HashableEntity
- type Indicator
- type IndicatorSpec
- type Labels
- type Manifest
- type ManifestContents
- type ManifestObject
- type Metadata
- type Node
- type NodeGraph
- type Objective
- type ObjectiveResult
- type ObjectiveResultResponse
- type ObjectiveResultSpec
- type ObjectiveScore
- type ObjectiveScoreSpec
- type ObjectiveSpec
- type Operation
- type OperationSpec
- type PolicySpec
- type ScoreCard
- type ScoreCardSpec
- type Selector
- type TypeMeta
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Hash ¶ added in v0.41.0
func Hash(org string, entity HashableEntity) string
Types ¶
type AlertPolicy ¶ added in v0.45.0
type AlertPolicy struct { TypeMeta `json:",inline" yaml:",inline"` Metadata Metadata `json:"metadata"` Spec PolicySpec `json:"spec"` }
func NewAlertPolicy ¶ added in v0.45.0
func NewAlertPolicy() *AlertPolicy
func (*AlertPolicy) Kind ¶ added in v0.45.0
func (a *AlertPolicy) Kind() string
func (*AlertPolicy) Validate ¶ added in v0.45.0
func (a *AlertPolicy) Validate() error
func (*AlertPolicy) Version ¶ added in v0.45.0
func (a *AlertPolicy) Version() string
type DeepEntity ¶ added in v0.25.0
type EntityContext ¶ added in v0.31.0
type EntityContext struct {
Metadata Metadata `json:"metadata"`
}
EntityContext - Entity Contexts are used to represent arbitrary or custom entities defined by the user. They are comprised solely of Metadata.
func (*EntityContext) Kind ¶ added in v0.31.0
func (c *EntityContext) Kind() string
func (*EntityContext) Validate ¶ added in v0.31.0
func (c *EntityContext) Validate() error
func (*EntityContext) Version ¶ added in v0.31.0
func (c *EntityContext) Version() string
type HashableEntity ¶ added in v0.41.0
type Indicator ¶
type Indicator struct { TypeMeta `json:",inline" yaml:",inline"` Metadata `json:"metadata,omitempty"` Spec IndicatorSpec `json:"spec" yaml:"spec"` }
func NewIndicator ¶ added in v0.21.0
func NewIndicator() *Indicator
NewIndicator returns a new instance of the Indicator struct with non-zero values for internal maps
func NewIndicatorForObjective ¶ added in v0.21.0
type IndicatorSpec ¶
type Labels ¶
func ParseLabelsFromString ¶ added in v0.49.0
ParseLabelsFromString - Uses regexp to parse label string returns error if regex does not match An altertantive regex can be passed for parsing
func (Labels) AssertHasFields ¶ added in v0.40.0
type Manifest ¶
type Manifest []*Objective
Manifest - a slice of Objectives
func (*Manifest) LoadFromFile ¶
type ManifestContents ¶ added in v0.25.1
type ManifestContents []DeepEntity
func LoadFromFile ¶ added in v0.25.0
func LoadFromFile(path string) (ManifestContents, error)
func (ManifestContents) Objectives ¶ added in v0.25.1
func (m ManifestContents) Objectives() []*Objective
type ManifestObject ¶ added in v0.25.0
type ManifestObject struct { APIVersion string `json:"apiVersion" yaml:"apiVersion"` KindValue string `json:"kind" yaml:"kind"` MetadataValue Metadata `json:"metadata" yaml:"metadata"` SpecValue map[string]interface{} `json:"spec" yaml:"spec"` }
func (*ManifestObject) Kind ¶ added in v0.25.0
func (t *ManifestObject) Kind() string
func (*ManifestObject) Metadata ¶ added in v0.25.0
func (t *ManifestObject) Metadata() Metadata
func (*ManifestObject) Spec ¶ added in v0.25.0
func (t *ManifestObject) Spec() map[string]interface{}
func (*ManifestObject) Validate ¶ added in v0.25.0
func (t *ManifestObject) Validate() error
func (*ManifestObject) Version ¶ added in v0.25.0
func (t *ManifestObject) Version() string
type Metadata ¶
type Metadata struct { // Name of the object representation Name string `json:"-" yaml:"-"` // Map of string keys and values that can be used to identify an entity Labels Labels `json:"labels,omitempty" yaml:"labels,omitempty"` // List of map of string keys and values that can be used to link entities together // by identifying relationships // All string keys and values in the same map are mandatory to make a link (AND operand) // while any map of the list is necessary to make a link (OR operand) // example: // RelatedTo: // - service:web // region:us // - service:web // region:eu // In this example, the current object representation will be linked to // any other entity that is a web service and located in US or EU regions RelatedTo []map[string]string `json:"relatedTo,omitempty" yaml:"relatedTo,omitempty"` // Map of string keys and values that are additional information about an entity Annotations map[string]string `json:"annotations,omitempty" yaml:"annotations,omitempty"` }
ObjectMeta is metadata that all entities must have
func (Metadata) GetSelector ¶ added in v0.44.0
turn labels into a base64 encoded selector
type NodeGraph ¶ added in v0.20.0
func (*NodeGraph) MarshalJSON ¶ added in v0.20.0
MarshalJSON - custom JSON unmarshaller for NodeGraph type used to insure that empty values are returned instead of null
Eg:
{ "nodes": [], "edges": [] } vs. { "nodes": null, "edges": null }
type Objective ¶
type Objective struct { TypeMeta `json:",inline" yaml:",inline"` Metadata `json:"metadata,omitempty"` Spec ObjectiveSpec `json:"spec" yaml:"spec"` }
func NewObjective ¶
func NewObjective() *Objective
NewObjective returns a new instance of the Objective struct with non-zero values for internal maps
func (*Objective) GetIndicatorsLabelsAsSelector ¶ added in v0.44.0
turn indicator labels into a base64 encoded selector
func (*Objective) GetMetadata ¶ added in v0.41.0
type ObjectiveResult ¶
type ObjectiveResult struct { TypeMeta `json:",inline" yaml:",inline"` ObjectiveResultResponse `json:",inline" yaml:",inline"` }
func (ObjectiveResult) GetMetadata ¶ added in v0.44.0
func (o ObjectiveResult) GetMetadata() Metadata
func (ObjectiveResult) Kind ¶
func (o ObjectiveResult) Kind() string
func (*ObjectiveResult) Validate ¶ added in v0.40.0
func (o *ObjectiveResult) Validate() error
func (ObjectiveResult) Version ¶
func (o ObjectiveResult) Version() string
type ObjectiveResultResponse ¶
type ObjectiveResultResponse struct { Metadata `json:"metadata,omitempty"` Spec ObjectiveResultSpec `json:"spec" yaml:"spec"` }
type ObjectiveResultSpec ¶
type ObjectiveResultSpec struct { IndicatorSelector Selector `json:"indicatorSelector" yaml:"indicatorSelector"` ObjectivePercent float64 `json:"objectivePercent" yaml:"objectivePercent"` ActualPercent float64 `json:"actualPercent" yaml:"actualPercent"` RemainingPercent float64 `json:"remainingPercent" yaml:"remainingPercent"` }
type ObjectiveScore ¶ added in v0.44.0
type ObjectiveScore struct { TypeMeta `json:",inline" yaml:",inline"` Metadata `json:"metadata,omitempty"` Spec ObjectiveScoreSpec `json:"spec" yaml:"spec"` }
func (*ObjectiveScore) GetMetadata ¶ added in v0.44.0
func (o *ObjectiveScore) GetMetadata() Metadata
func (*ObjectiveScore) Kind ¶ added in v0.44.0
func (o *ObjectiveScore) Kind() string
func (*ObjectiveScore) Validate ¶ added in v0.44.0
func (o *ObjectiveScore) Validate() error
func (*ObjectiveScore) Version ¶ added in v0.44.0
func (o *ObjectiveScore) Version() string
type ObjectiveScoreSpec ¶ added in v0.44.0
type ObjectiveScoreSpec struct { ObjectiveResultSelector Selector `json:"objectiveResultSelector" yaml:"objectiveResultSelector"` TargetDeltaPercentage float64 `json:"targetDeltaPercentage" yaml:"targetDeltaPercentage"` ReliabilityScore float64 `json:"reliabilityScore" yaml:"reliabilityScore"` HistoricalReliabilityScore float64 `json:"historicalReliabilityScore" yaml:"historicalReliabilityScore"` }
type ObjectiveSpec ¶
type Operation ¶ added in v0.32.0
type Operation struct { Metadata Metadata `json:"metadata"` Spec OperationSpec `json:"spec"` }
type OperationSpec ¶ added in v0.32.0
type OperationSpec struct {
Outcome string `json:"outcome"`
}
type PolicySpec ¶ added in v0.45.0
type ScoreCard ¶ added in v0.44.0
type ScoreCard struct { TypeMeta `json:",inline" yaml:",inline"` Metadata `json:"metadata,omitempty"` Spec ScoreCardSpec `json:"spec" yaml:"spec"` }
func (*ScoreCard) GetMetadata ¶ added in v0.44.0
func (*ScoreCard) GetSpec ¶ added in v0.44.0
func (sc *ScoreCard) GetSpec() ScoreCardSpec
type ScoreCardSpec ¶ added in v0.44.0
type TypeMeta ¶
type TypeMeta struct { // APIVersion defines the versioned schema of this representation of an object APIVersion string `json:"apiVersion,omitempty" yaml:"apiVersion,omitempty"` // Kind is a string value representing the REST resource this object represents. // In CamelCase. Kind string `json:"kind,omitempty" yaml:"kind,omitempty"` }
TypeMeta describes an individual object in the entity API with strings representing the type of the object and its API schema version