Plugin
plugin.kubevirt.io / v1alpha1
apiVersion: plugin.kubevirt.io/v1alpha1
kind: Plugin
metadata:
name: example
apiVersion
string
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kind
string
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
object
spec object required
Spec defines the plugin's hooks and admission references.
condition
string
Condition is a CEL expression that determines whether this plugin applies to a given VM.
When set, this acts as a baseline filter for all hooks in the plugin.
Individual hooks may further narrow the scope with their own Condition fields.
domainHooks []object
DomainHooks defines hooks that modify the libvirt domain XML.
Hooks are applied in declaration order within each plugin.
Across plugins, hooks are applied in alphabetical order by plugin name.
cel object
CEL defines a CEL expression that transforms the domain XML.
expression
string required
Expression is the CEL expression applied to the domain XML.
minLength:
1
condition
string
Condition is a CEL expression that determines whether this hook applies to a given VM.
failureStrategy
string
FailureStrategy specifies how to handle hook failures (Fail or Ignore).
sidecar object
Sidecar defines a sidecar-based hook that transforms the domain XML via a Unix socket.
socketPath
string required
SocketPath is the path to the Unix socket used to communicate with the sidecar.
minLength:
1
timeout
string
Timeout specifies the maximum duration to wait for the hook to complete.
failureStrategy
string
FailureStrategy specifies the default behavior when the plugin itself is unhealthy
(e.g. a referenced webhook is not ready, or a sidecar socket is unreachable).
Individual hooks may override this with their own FailureStrategy.
mutatingAdmissionPolicies []object
MutatingAdmissionPolicies references MutatingAdmissionPolicy objects managed by the plugin.
name
string required
Name is the name of the admission object.
minLength:
1mutatingAdmissionWebhooks []object
MutatingAdmissionWebhooks references MutatingWebhookConfiguration objects managed by the plugin.
name
string required
Name is the name of the admission object.
minLength:
1nodeHooks []object
NodeHooks defines hooks that execute during VM lifecycle events.
Hooks are applied in declaration order within each plugin.
Across plugins, hooks are applied in alphabetical order by plugin name.
condition
string
Condition is a CEL expression that determines whether this hook applies to a given VM.
failureStrategy
string
FailureStrategy specifies how to handle hook failures (Fail or Ignore).
permittedHooks
[]string required
PermittedHooks lists the VM lifecycle events this hook handles.
minItems:
1
socket
string required
Socket is the path to the Unix socket for hook communication.
minLength:
1
timeout
string
Timeout specifies the maximum duration to wait for the hook to complete.
validatingAdmissionPolicies []object
ValidatingAdmissionPolicies references ValidatingAdmissionPolicy objects managed by the plugin.
name
string required
Name is the name of the admission object.
minLength:
1validatingAdmissionWebhooks []object
ValidatingAdmissionWebhooks references ValidatingWebhookConfiguration objects managed by the plugin.
name
string required
Name is the name of the admission object.
minLength:
1
status
object
Status reflects the observed state of the plugin.
No matches. Try .spec.condition for an exact path