Documentation
¶
Overview ¶
Companion package for github.com/fluxninja/aperture/api/gen/proto/go/aperture/policy/language/v1 containing conversions of proto-generated struct into golang ones and other helpers.
Index ¶
- func FromSelectors(selectorsProto []*policylangv1.Selector, agentGroup string) ([]selector, error)
- func MMExprFromLabelMatcher(lm *policylangv1.LabelMatcher) (mm.Expr, error)
- func MMExprFromProto(expr *policylangv1.MatchExpression) (mm.Expr, error)
- func UniqueAgentGroups(selectorProto []*policylangv1.Selector) []string
- type ControlPointID
- type GlobalControlPointID
- type TypedControlPointID
- type TypedGlobalControlPointID
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FromSelectors ¶
func FromSelectors(selectorsProto []*policylangv1.Selector, agentGroup string) ([]selector, error)
FromSelectors creates a Selector from a "raw" proto-based Selector.
func MMExprFromLabelMatcher ¶
func MMExprFromLabelMatcher(lm *policylangv1.LabelMatcher) (mm.Expr, error)
MMExprFromLabelMatcher translates proto definition of label matcher into a // single multimatcher expression
LabelMatcher can be nil or a validated LabelMatcher.
func MMExprFromProto ¶
func MMExprFromProto(expr *policylangv1.MatchExpression) (mm.Expr, error)
MMExprFromProto converts proto definition of expression into multimatcher Expression
The expr is assumed to be validated and nonnil.
func UniqueAgentGroups ¶
func UniqueAgentGroups(selectorProto []*policylangv1.Selector) []string
UniqueAgentGroups returns the unique agent groups of selectors.
Types ¶
type ControlPointID ¶
type ControlPointID struct {
ControlPoint string
Service string
}
ControlPointID is the struct that represents a ControlPoint.
Agent group is implied. Type is ignored.
func NewControlPointID ¶
func NewControlPointID(controlPoint, service string) ControlPointID
NewControlPointID returns a controlPointID.
type GlobalControlPointID ¶
type GlobalControlPointID struct {
ControlPointID
AgentGroup string
}
GlobalControlPointID is just like TypedGlobalControlPointID but embedding the ControlPointID instead of TypedControlPointID.
Useful for defining a control point to find, without having to specify the source.
type TypedControlPointID ¶
type TypedControlPointID struct {
ControlPointID
Type string
}
TypedControlPointID is the struct that represents a FlowControlPoint.
Agent group is implied.
Note: We need to mirror flowcontrolpointsv1.FlowControlPoint, because protobuf-generated struct cannot be used as map keys.
func NewTypedControlPointID ¶
func NewTypedControlPointID(controlPoint, controlPointType, service string) TypedControlPointID
NewTypedControlPointID returns a typedControlPointID.
func TypedControlPointIDFromProto ¶
func TypedControlPointIDFromProto(protoCP *flowcontrolpointsv1.FlowControlPoint) TypedControlPointID
TypedControlPointIDFromProto creates TypedControlPointID from protobuf representation.
func (TypedControlPointID) InAgentGroup ¶
func (cp TypedControlPointID) InAgentGroup(agentGroup string) TypedGlobalControlPointID
InAgentGroup returns the controlpoint as TypedGlobalControlPointID with given agent group.
type TypedGlobalControlPointID ¶
type TypedGlobalControlPointID struct {
TypedControlPointID
AgentGroup string
}
TypedGlobalControlPointID is ControlPointID with explicit agent group.
Note: We need to mirror cmdv1.GlobalFlowControlPoint, because protobuf-generated struct cannot be used as map keys.
func TypedGlobalControlPointIDFromProto ¶
func TypedGlobalControlPointIDFromProto(protoCP *cmdv1.GlobalFlowControlPoint) TypedGlobalControlPointID
TypedGlobalControlPointIDFromProto creates ControlPointID from protobuf representation.