Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Datagroup ¶
A Datagroup is an associative array. For our purposes, a Datagroup maps strings to strings.
func (*Datagroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Datagroup.
func (*Datagroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IRule ¶
type IRule string
An IRule comprises a string of TCL code.
func (*IRule) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IRule.
func (*IRule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MockF5State ¶
type MockF5State struct { // Policies is the set of Policies that exist in the mock F5 host. Policies map[string]map[string]PolicyRule // VserverPolicies represents the associations between vservers and Policies // in the mock F5 host. VserverPolicies map[string]map[string]bool // certs represents the set of certificates that have been installed into // the mock F5 host. Certs map[string]bool // Keys represents the set of certificates that have been installed into // the mock F5 host. Keys map[string]bool // ServerSslProfiles represents the set of server-ssl profiles that exist in // the mock F5 host. ServerSslProfiles map[string]bool // ClientSslProfiles represents the set of client-ssl profiles that exist in // the mock F5 host. ClientSslProfiles map[string]bool // VserverProfiles represents the associations between vservers and // client-ssl and server-ssl profiles in the mock F5 host. // // Note that although the F5 management console displays client and server // profiles separately, the F5 iControl REST interface puts these // associations under a single REST endpoint. VserverProfiles map[string]map[string]bool // Datagroups represents the IRules data-groups in the F5 host. For our // purposes, we assume that every data-group maps strings to strings. Datagroups map[string]Datagroup // IRules represents the IRules that exist in the F5 host. IRules map[string]IRule // VserverIRules represents the associations between vservers and IRules in // the mock F5 host. VserverIRules map[string][]string // PartitionPaths represents the partitions that exist in // the mock F5 host. PartitionPaths map[string]string // Pools represents the Pools that exist on the mock F5 host. Pools map[string]Pool }
mockF5State stores the state necessary to mock the functionality of an F5 BIG-IP host that the F5 router uses.
func (*MockF5State) DeepCopy ¶
func (in *MockF5State) DeepCopy() *MockF5State
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MockF5State.
func (*MockF5State) DeepCopyInto ¶
func (in *MockF5State) DeepCopyInto(out *MockF5State)
TODO: get rid of this by enabling gengo with nested maps
type PolicyCondition ¶
type PolicyCondition struct { HttpHost bool `json:"httpHost,omitempty"` HttpUri bool `json:"httpUri,omitempty"` PathSegment bool `json:"pathSegment,omitempty"` Index int `json:"index"` Host bool `json:"host,omitempty"` Values []string `json:"values"` }
A PolicyCondition describes a single condition for a policy rule to match.
func (*PolicyCondition) DeepCopy ¶
func (in *PolicyCondition) DeepCopy() *PolicyCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyCondition.
func (*PolicyCondition) DeepCopyInto ¶
func (in *PolicyCondition) DeepCopyInto(out *PolicyCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PolicyRule ¶
type PolicyRule struct {
Conditions []PolicyCondition
}
A PolicyRule has a name and comprises a list of Conditions and a list of actions.
func (*PolicyRule) DeepCopy ¶
func (in *PolicyRule) DeepCopy() *PolicyRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyRule.
func (*PolicyRule) DeepCopyInto ¶
func (in *PolicyRule) DeepCopyInto(out *PolicyRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Pool ¶
A Pool comprises a set of strings of the form addr:port.
func (*Pool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pool.
func (*Pool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.