Documentation ¶
Index ¶
- Variables
- func GetNsName(obj *unstructured.Unstructured) string
- func ParseResourceReferenceAnnotation(ns, antn string) string
- func ParseResourceReferenceAnnotationList(ns, annotations string) []string
- func ValidateAppProtectLogDestination(dstAntn string) error
- type Change
- type Configuration
- type ConfigurationImpl
- func (ci *ConfigurationImpl) AddOrUpdateLogConf(logconfObj *unstructured.Unstructured) (changes []Change, problems []Problem)
- func (ci *ConfigurationImpl) AddOrUpdatePolicy(policyObj *unstructured.Unstructured) (changes []Change, problems []Problem)
- func (ci *ConfigurationImpl) AddOrUpdateUserSig(userSigObj *unstructured.Unstructured) (change UserSigChange, problems []Problem)
- func (ci *ConfigurationImpl) DeleteLogConf(key string) (changes []Change, problems []Problem)
- func (ci *ConfigurationImpl) DeletePolicy(key string) (changes []Change, problems []Problem)
- func (ci *ConfigurationImpl) DeleteUserSig(key string) (change UserSigChange, problems []Problem)
- func (ci *ConfigurationImpl) GetAppResource(kind, key string) (*unstructured.Unstructured, error)
- type FakeConfiguration
- func (fc *FakeConfiguration) AddOrUpdateLogConf(logConfObj *unstructured.Unstructured) (changes []Change, problems []Problem)
- func (fc *FakeConfiguration) AddOrUpdatePolicy(policyObj *unstructured.Unstructured) (changes []Change, problems []Problem)
- func (fc *FakeConfiguration) AddOrUpdateUserSig(userSigObj *unstructured.Unstructured) (change UserSigChange, problems []Problem)
- func (fc *FakeConfiguration) DeleteLogConf(key string) (changes []Change, problems []Problem)
- func (fc *FakeConfiguration) DeletePolicy(key string) (changes []Change, problems []Problem)
- func (fc *FakeConfiguration) DeleteUserSig(key string) (change UserSigChange, problems []Problem)
- func (fc *FakeConfiguration) GetAppResource(kind, key string) (*unstructured.Unstructured, error)
- type LogConfEx
- type Operation
- type PolicyEx
- type Problem
- type RevTimes
- type SignatureReq
- type UserSigChange
- type UserSigEx
Constants ¶
This section is empty.
Variables ¶
var ( // PolicyGVR is the group version resource of the appprotect policy PolicyGVR = schema.GroupVersionResource{ Group: "appprotect.f5.com", Version: "v1beta1", Resource: "appolicies", } // PolicyGVK is the group version kind of the appprotect policy PolicyGVK = schema.GroupVersionKind{ Group: "appprotect.f5.com", Version: "v1beta1", Kind: "APPolicy", } // LogConfGVR is the group version resource of the appprotect policy LogConfGVR = schema.GroupVersionResource{ Group: "appprotect.f5.com", Version: "v1beta1", Resource: "aplogconfs", } // LogConfGVK is the group version kind of the appprotect policy LogConfGVK = schema.GroupVersionKind{ Group: "appprotect.f5.com", Version: "v1beta1", Kind: "APLogConf", } // UserSigGVR is the group version resource of the appprotect policy UserSigGVR = schema.GroupVersionResource{ Group: "appprotect.f5.com", Version: "v1beta1", Resource: "apusersigs", } // UserSigGVK is the group version kind of the appprotect policy UserSigGVK = schema.GroupVersionKind{ Group: "appprotect.f5.com", Version: "v1beta1", Kind: "APUserSig", } )
Functions ¶
func GetNsName ¶
func GetNsName(obj *unstructured.Unstructured) string
GetNsName gets the key of a resource in the format: "resNamespace/resName"
func ParseResourceReferenceAnnotation ¶
ParseResourceReferenceAnnotation returns a namespace/name string
func ParseResourceReferenceAnnotationList ¶ added in v1.12.0
ParseResourceReferenceAnnotationList returns a slice of ns/names strings
func ValidateAppProtectLogDestination ¶
ValidateAppProtectLogDestination validates destination for log configuration
Types ¶
type Change ¶
type Change struct { // Op is an operation that needs be performed on the resource. Op Operation // Resource is the target resource. Resource interface{} }
Change represents a change in an App Protect resource
type Configuration ¶
type Configuration interface { AddOrUpdatePolicy(policyObj *unstructured.Unstructured) (changes []Change, problems []Problem) AddOrUpdateLogConf(logConfObj *unstructured.Unstructured) (changes []Change, problems []Problem) AddOrUpdateUserSig(userSigObj *unstructured.Unstructured) (change UserSigChange, problems []Problem) GetAppResource(kind, key string) (*unstructured.Unstructured, error) DeletePolicy(key string) (changes []Change, problems []Problem) DeleteLogConf(key string) (changes []Change, problems []Problem) DeleteUserSig(key string) (change UserSigChange, problems []Problem) }
Configuration configures App Protect resources that the Ingress Controller uses.
func NewConfiguration ¶
func NewConfiguration() Configuration
NewConfiguration creates a new App Protect Configuration
func NewFakeConfiguration ¶
func NewFakeConfiguration() Configuration
NewFakeConfiguration creates a new App Protect Configuration
type ConfigurationImpl ¶
type ConfigurationImpl struct { Policies map[string]*PolicyEx LogConfs map[string]*LogConfEx UserSigs map[string]*UserSigEx }
ConfigurationImpl holds representations of App Protect cluster resources
func (*ConfigurationImpl) AddOrUpdateLogConf ¶
func (ci *ConfigurationImpl) AddOrUpdateLogConf(logconfObj *unstructured.Unstructured) (changes []Change, problems []Problem)
AddOrUpdateLogConf adds or updates App Protect Log Configuration to App Protect Configuration
func (*ConfigurationImpl) AddOrUpdatePolicy ¶
func (ci *ConfigurationImpl) AddOrUpdatePolicy(policyObj *unstructured.Unstructured) (changes []Change, problems []Problem)
AddOrUpdatePolicy adds or updates an App Protect Policy to App Protect Configuration
func (*ConfigurationImpl) AddOrUpdateUserSig ¶
func (ci *ConfigurationImpl) AddOrUpdateUserSig(userSigObj *unstructured.Unstructured) (change UserSigChange, problems []Problem)
AddOrUpdateUserSig adds or updates App Protect User Defined Signature to App Protect Configuration
func (*ConfigurationImpl) DeleteLogConf ¶
func (ci *ConfigurationImpl) DeleteLogConf(key string) (changes []Change, problems []Problem)
DeleteLogConf deletes an App Protect Log Configuration from App Protect Configuration
func (*ConfigurationImpl) DeletePolicy ¶
func (ci *ConfigurationImpl) DeletePolicy(key string) (changes []Change, problems []Problem)
DeletePolicy deletes an App Protect Policy from App Protect Configuration
func (*ConfigurationImpl) DeleteUserSig ¶
func (ci *ConfigurationImpl) DeleteUserSig(key string) (change UserSigChange, problems []Problem)
DeleteUserSig deletes an App Protect User Defined Signature from App Protect Configuration
func (*ConfigurationImpl) GetAppResource ¶
func (ci *ConfigurationImpl) GetAppResource(kind, key string) (*unstructured.Unstructured, error)
GetAppResource returns a pointer to an App Protect resource
type FakeConfiguration ¶
type FakeConfiguration struct { Policies map[string]*PolicyEx LogConfs map[string]*LogConfEx UserSigs map[string]*UserSigEx }
FakeConfiguration holds representations of fake App Protect cluster resources
func (*FakeConfiguration) AddOrUpdateLogConf ¶
func (fc *FakeConfiguration) AddOrUpdateLogConf(logConfObj *unstructured.Unstructured) (changes []Change, problems []Problem)
AddOrUpdateLogConf adds or updates App Protect Log Configuration to App Protect Configuration
func (*FakeConfiguration) AddOrUpdatePolicy ¶
func (fc *FakeConfiguration) AddOrUpdatePolicy(policyObj *unstructured.Unstructured) (changes []Change, problems []Problem)
AddOrUpdatePolicy adds or updates an App Protect Policy to App Protect Configuration
func (*FakeConfiguration) AddOrUpdateUserSig ¶
func (fc *FakeConfiguration) AddOrUpdateUserSig(userSigObj *unstructured.Unstructured) (change UserSigChange, problems []Problem)
AddOrUpdateUserSig adds or updates App Protect User Defined Signature to App Protect Configuration
func (*FakeConfiguration) DeleteLogConf ¶
func (fc *FakeConfiguration) DeleteLogConf(key string) (changes []Change, problems []Problem)
DeleteLogConf deletes an App Protect Log Configuration from App Protect Configuration
func (*FakeConfiguration) DeletePolicy ¶
func (fc *FakeConfiguration) DeletePolicy(key string) (changes []Change, problems []Problem)
DeletePolicy deletes an App Protect Policy from App Protect Configuration
func (*FakeConfiguration) DeleteUserSig ¶
func (fc *FakeConfiguration) DeleteUserSig(key string) (change UserSigChange, problems []Problem)
DeleteUserSig deletes an App Protect User Defined Signature from App Protect Configuration
func (*FakeConfiguration) GetAppResource ¶
func (fc *FakeConfiguration) GetAppResource(kind, key string) (*unstructured.Unstructured, error)
GetAppResource returns a pointer to an App Protect resource
type LogConfEx ¶
type LogConfEx struct { Obj *unstructured.Unstructured IsValid bool ErrorMsg string }
LogConfEx represents an App Protect Log Configuration cluster resource
type Operation ¶
type Operation int
Operation defines an operation to perform for an App Protect resource.
type PolicyEx ¶
type PolicyEx struct { Obj *unstructured.Unstructured SignatureReqs []SignatureReq IsValid bool ErrorMsg string }
PolicyEx represents an App Protect policy cluster resource
type Problem ¶
type Problem struct { // Object is a configuration object. Object *unstructured.Unstructured // Reason tells the reason. It matches the reason in the events of our configuration objects. Reason string // Message gives the details about the problem. It matches the message in the events of our configuration objects. Message string }
Problem represents a problem with an App Protect resource
type SignatureReq ¶
SignatureReq describes a signature that is required by the policy
type UserSigChange ¶
type UserSigChange struct { PolicyDeletions []*unstructured.Unstructured PolicyAddsOrUpdates []*unstructured.Unstructured UserSigs []*unstructured.Unstructured }
UserSigChange holds resources that are affected by changes in UserSigs
type UserSigEx ¶
type UserSigEx struct { Obj *unstructured.Unstructured Tag string RevTime *time.Time IsValid bool ErrorMsg string }
UserSigEx represents an App Protect User Defined Signature cluster resource