Documentation
¶
Overview ¶
Package injector deals with AdmissionReview requests and responses
Index ¶
Constants ¶
View Source
const ( // affinity CreateAffinity = "/spec/affinity" CreateNodeAffinity = "/spec/affinity/nodeAffinity" AddRequiredDuringScheduling = "/spec/affinity/nodeAffinity/requiredDuringSchedulingIgnoredDuringExecution" AddNodeSelectorTerms = "/spec/affinity/nodeAffinity/requiredDuringSchedulingIgnoredDuringExecution/nodeSelectorTerms" AddToNodeSelectorTerms = "/spec/affinity/nodeAffinity/requiredDuringSchedulingIgnoredDuringExecution/nodeSelectorTerms/-" // tolerations CreateTolerations = "/spec/tolerations" AddTolerations = "/spec/tolerations/-" )
PatchPath values
Variables ¶
View Source
var ( ErrInvalidAdmissionReview = errors.New("invalid admission review") ErrInvalidAdmissionReviewObj = errors.New("invalid admission review object") ErrFailedToCreatePatch = errors.New("failed to create patch") ErrFailedToReadNodeSelectorTerms = errors.New("failed to load node selector terms") ErrMissingConfiguration = errors.New("missing configuration") ErrInvalidConfiguration = errors.New("invalid configuration") )
Errors returned by this package
Functions ¶
This section is empty.
Types ¶
type Injector ¶
type Injector struct {
// contains filtered or unexported fields
}
Injector handles AdmissionReview objects
func NewInjector ¶
NewInjector returns *Injector with k8sclient and configMapName
type JSONPatch ¶
type JSONPatch struct {
Op string `json:"op"`
Path PatchPath `json:"path"`
Value interface{} `json:"value"`
}
JSONPatch is the JSON patch (http://jsonpatch.com) for patching k8s object
type NamespaceConfig ¶
type NamespaceConfig struct {
NodeSelectorTerms []corev1.NodeSelectorTerm `json:"nodeSelectorTerms"`
Tolerations []corev1.Toleration `json:"tolerations"`
ExcludedLabels map[string]string `json:"excludedLabels"`
}
NamespaceConfig is the per-namespace configuration
Click to show internal directories.
Click to hide internal directories.