const defaultNamespaceMaxPodsToCheck …
const defaultNamespacePodCheckTimeout …
type Admission …
type NamespaceGetter …
type PodLister …
type PodSpecExtractor …
var defaultPodSpecResources …
type DefaultPodSpecExtractor …
func (DefaultPodSpecExtractor) HasPodSpec(gr schema.GroupResource) bool { … }
func (DefaultPodSpecExtractor) ExtractPodSpec(obj runtime.Object) (*metav1.ObjectMeta, *corev1.PodSpec, error) { … }
func (DefaultPodSpecExtractor) PodSpecResources() []schema.GroupResource { … }
func extractPodSpecFromTemplate(template *corev1.PodTemplateSpec) (*metav1.ObjectMeta, *corev1.PodSpec, error) { … }
func (a *Admission) CompleteConfiguration() error { … }
func (a *Admission) ValidateConfiguration() error { … }
var namespacesResource …
var podsResource …
func (a *Admission) Validate(ctx context.Context, attrs api.Attributes) *admissionv1.AdmissionResponse { … }
func (a *Admission) ValidateNamespace(ctx context.Context, attrs api.Attributes) *admissionv1.AdmissionResponse { … }
var ignoredPodSubresources …
func (a *Admission) ValidatePod(ctx context.Context, attrs api.Attributes) *admissionv1.AdmissionResponse { … }
func (a *Admission) ValidatePodController(ctx context.Context, attrs api.Attributes) *admissionv1.AdmissionResponse { … }
func (a *Admission) EvaluatePod(ctx context.Context, nsPolicy api.Policy, nsPolicyErr error, podMetadata *metav1.ObjectMeta, podSpec *corev1.PodSpec, attrs api.Attributes, enforce bool) *admissionv1.AdmissionResponse { … }
type podCount …
func (a *Admission) EvaluatePodsInNamespace(ctx context.Context, namespace string, enforce api.LevelVersion) []string { … }
func decoratePodWarnings(podWarningsToCount map[string]podCount, warnings []string) { … }
func (a *Admission) PolicyToEvaluate(labels map[string]string) (api.Policy, field.ErrorList) { … }
func isSignificantPodUpdate(pod, oldPod *corev1.Pod) bool { … }
func isSignificantContainerUpdate(container, oldContainer *corev1.Container) bool { … }
func (a *Admission) exemptNamespace(namespace string) bool { … }
func (a *Admission) exemptUser(username string) bool { … }
func (a *Admission) exemptRuntimeClass(runtimeClass *string) bool { … }
func (a *Admission) prioritizePods(pods []*corev1.Pod) []*corev1.Pod { … }
func containsString(needle string, haystack []string) bool { … }
func (a *Admission) exemptNamespaceWarning(exemptNamespace string, policy api.Policy, nsLabels map[string]string) string { … }