Seldon SeldonDeployments API
SeldonDeployments APIs for Seldon Deploy
SeldonDeployments APIs for Seldon Deploy
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/seldon-seldondeployments-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: 'API to interact and manage the lifecycle of your machine learning models
deployed through Seldon Deploy.'
title: Seldon Deployments API
version: v1alpha1
servers:
- url: http://X.X.X.X/seldon-deploy/api/v1alpha1
- url: https://X.X.X.X/seldon-deploy/api/v1alpha1
security:
- OAuth2:
- '[]'
tags:
- description: SeldonDeployments APIs for Seldon Deploy
name: SeldonDeployments
paths:
/namespaces/{namespace}/seldondeployments:
get:
description: list objects of kind Seldon Deployment
operationId: ListSeldonDeployments
parameters:
- description: Namespace provides a logical grouping of resources
in: path
name: namespace
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SeldonDeploymentListResponse'
'400':
$ref: '#/components/responses/ErrorDefault'
'404':
$ref: '#/components/responses/ErrorDefault'
'405':
$ref: '#/components/responses/ErrorDefault'
'424':
$ref: '#/components/responses/ErrorDefault'
'500':
$ref: '#/components/responses/ErrorDefault'
tags:
- SeldonDeployments
post:
description: Create a Seldon Deployment
operationId: CreateSeldonDeployment
parameters:
- description: Action
in: query
name: action
schema:
type: string
- description: Message
in: query
name: message
schema:
type: string
- description: Namespace provides a logical grouping of resources
in: path
name: namespace
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/SeldonDeployment'
responses:
'200':
$ref: '#/components/responses/SeldonDeploymentResponse'
'400':
$ref: '#/components/responses/ErrorDefault'
'403':
$ref: '#/components/responses/ErrorDefault'
'405':
$ref: '#/components/responses/ErrorDefault'
'424':
$ref: '#/components/responses/ErrorDefault'
'500':
$ref: '#/components/responses/ErrorDefault'
tags:
- SeldonDeployments
/namespaces/{namespace}/seldondeployments/{name}:
delete:
description: Delete the specified Seldon Deployment
operationId: DeleteSeldonDeployment
parameters:
- description: Action
in: query
name: action
schema:
type: string
- description: Message
in: query
name: message
schema:
type: string
- description: Name identifies a resource
in: path
name: name
required: true
schema:
type: string
- description: Namespace provides a logical grouping of resources
in: path
name: namespace
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/GenericResponse'
'400':
$ref: '#/components/responses/ErrorDefault'
'403':
$ref: '#/components/responses/ErrorDefault'
'405':
$ref: '#/components/responses/ErrorDefault'
'424':
$ref: '#/components/responses/ErrorDefault'
'500':
$ref: '#/components/responses/ErrorDefault'
tags:
- SeldonDeployments
get:
description: Read the specified Seldon Deployment
operationId: ReadSeldonDeployment
parameters:
- description: Name identifies a resource
in: path
name: name
required: true
schema:
type: string
- description: Namespace provides a logical grouping of resources
in: path
name: namespace
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SeldonDeploymentResponse'
'400':
$ref: '#/components/responses/ErrorDefault'
'405':
$ref: '#/components/responses/ErrorDefault'
'424':
$ref: '#/components/responses/ErrorDefault'
'500':
$ref: '#/components/responses/ErrorDefault'
tags:
- SeldonDeployments
put:
description: Update the specified Seldon Deployment
operationId: UpdateSeldonDeployment
parameters:
- description: Action
in: query
name: action
schema:
type: string
- description: Message
in: query
name: message
schema:
type: string
- description: Name identifies a resource
in: path
name: name
required: true
schema:
type: string
- description: Namespace provides a logical grouping of resources
in: path
name: namespace
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/SeldonDeployment'
responses:
'200':
$ref: '#/components/responses/SeldonDeploymentResponse'
'400':
$ref: '#/components/responses/ErrorDefault'
'403':
$ref: '#/components/responses/ErrorDefault'
'405':
$ref: '#/components/responses/ErrorDefault'
'424':
$ref: '#/components/responses/ErrorDefault'
'500':
$ref: '#/components/responses/ErrorDefault'
tags:
- SeldonDeployments
/namespaces/{namespace}/seldondeployments/validate:
get:
description: Validate the given Seldon Deployment
operationId: ValidateSeldonDeployment
parameters:
- description: Namespace provides a logical grouping of resources
in: path
name: namespace
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/SeldonDeployment'
responses:
'200':
$ref: '#/components/responses/MessageResponse'
'500':
$ref: '#/components/responses/ErrorDefault'
tags:
- SeldonDeployments
components:
schemas:
FlexVolumeSource:
description: 'FlexVolume represents a generic volume resource that is
provisioned/attached using an exec based plugin.'
properties:
driver:
description: driver is the name of the driver to use for this volume.
type: string
fsType:
description: 'fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
+optional'
type: string
options:
additionalProperties:
type: string
description: 'options is Optional: this field holds extra command options if any.
+optional'
type: object
readOnly:
description: 'readOnly is Optional: defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
+optional'
type: boolean
secretRef:
$ref: '#/components/schemas/LocalObjectReference'
type: object
PodAffinityTerm:
description: 'Defines a set of pods (namely those matching the labelSelector
relative to the given namespace(s)) that this pod should be
co-located (affinity) or not co-located (anti-affinity) with,
where co-located is defined as running on a node whose value of
the label with key <topologyKey> matches that of any node on which
a pod of the set of pods is running'
properties:
labelSelector:
$ref: '#/components/schemas/LabelSelector'
matchLabelKeys:
description: 'MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod''s pod (anti) affinity. Keys that don''t exist in the incoming
pod labels will be ignored. The default value is empty.
The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
Also, MatchLabelKeys cannot be set when LabelSelector isn''t set.
This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+listType=atomic
+optional'
items:
type: string
type: array
mismatchLabelKeys:
description: 'MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod''s pod (anti) affinity. Keys that don''t exist in the incoming
pod labels will be ignored. The default value is empty.
The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
Also, MismatchLabelKeys cannot be set when LabelSelector isn''t set.
This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+listType=atomic
+optional'
items:
type: string
type: array
namespaceSelector:
$ref: '#/components/schemas/LabelSelector'
namespaces:
description: 'namespaces specifies a static list of namespace names that the term applies to.
The term is applied to the union of the namespaces listed in this field
and the ones selected by namespaceSelector.
null or empty namespaces list and null namespaceSelector means "this pod''s namespace".
+optional'
items:
type: string
type: array
topologyKey:
description: 'This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
the labelSelector in the specified namespaces, where co-located is defined as running on a node
whose value of the label with key topologyKey matches that of any node on which any of the
selected pods is running.
Empty topologyKey is not allowed.'
type: string
type: object
VolumeProjection:
description: Projection that may be projected along with other supported volume types
properties:
clusterTrustBundle:
$ref: '#/components/schemas/ClusterTrustBundleProjection'
configMap:
$ref: '#/components/schemas/ConfigMapProjection'
downwardAPI:
$ref: '#/components/schemas/DownwardAPIProjection'
secret:
$ref: '#/components/schemas/SecretProjection'
serviceAccountToken:
$ref: '#/components/schemas/ServiceAccountTokenProjection'
type: object
GCEPersistentDiskVolumeSource:
description: 'A GCE PD must exist before mounting to a container. The disk must
also be in the same GCE project and zone as the kubelet. A GCE PD
can only be mounted as read/write once or read-only many times. GCE
PDs support ownership management and SELinux relabeling.'
properties:
fsType:
description: 'fsType is filesystem type of the volume that you want to mount.
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
TODO: how do we prevent errors in the filesystem from compromising the machine
+optional'
type: string
partition:
description: 'partition is the partition in the volume that you want to mount.
If omitted, the default is to mount by volume name.
Examples: For volume /dev/sda1, you specify the partition as "1".
Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+optional'
format: int32
type: integer
pdName:
description: 'pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
type: string
readOnly:
description: 'readOnly here will force the ReadOnly setting in VolumeMounts.
Defaults to false.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+optional'
type: boolean
title: Represents a Persistent Disk resource in Google Compute Engine.
type: object
CephFSVolumeSource:
description: 'Represents a Ceph Filesystem mount that lasts the lifetime of a pod
Cephfs volumes do not support ownership management or SELinux relabeling.'
properties:
monitors:
description: 'monitors is Required: Monitors is a collection of Ceph monitors
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
items:
type: string
type: array
path:
description: 'path is Optional: Used as the mounted root, rather than the full Ceph tree, default is /
+optional'
type: string
readOnly:
description: 'readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+optional'
type: boolean
secretFile:
description: 'secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+optional'
type: string
secretRef:
$ref: '#/components/schemas/LocalObjectReference'
user:
description: 'user is optional: User is the rados user name, default is admin
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+optional'
type: string
type: object
VolumeDevice:
properties:
devicePath:
description: devicePath is the path inside of the container that the device will be mapped to.
type: string
name:
description: name must match the name of a persistentVolumeClaim in the pod
type: string
title: volumeDevice describes a mapping of a raw block device within a container.
type: object
NodeSelectorOperator:
description: 'A node selector operator is the set of operators that can be used in
a node selector requirement.
+enum'
type: string
Volume:
properties:
awsElasticBlockStore:
$ref: '#/components/schemas/AWSElasticBlockStoreVolumeSource'
azureDisk:
$ref: '#/components/schemas/AzureDiskVolumeSource'
azureFile:
$ref: '#/components/schemas/AzureFileVolumeSource'
cephfs:
$ref: '#/components/schemas/CephFSVolumeSource'
cinder:
$ref: '#/components/schemas/CinderVolumeSource'
configMap:
$ref: '#/components/schemas/ConfigMapVolumeSource'
csi:
$ref: '#/components/schemas/CSIVolumeSource'
downwardAPI:
$ref: '#/components/schemas/DownwardAPIVolumeSource'
emptyDir:
$ref: '#/components/schemas/EmptyDirVolumeSource'
ephemeral:
$ref: '#/components/schemas/EphemeralVolumeSource'
fc:
$ref: '#/components/schemas/FCVolumeSource'
flexVolume:
$ref: '#/components/schemas/FlexVolumeSource'
flocker:
$ref: '#/components/schemas/FlockerVolumeSource'
gcePersistentDisk:
$ref: '#/components/schemas/GCEPersistentDiskVolumeSource'
gitRepo:
$ref: '#/components/schemas/GitRepoVolumeSource'
glusterfs:
$ref: '#/components/schemas/GlusterfsVolumeSource'
hostPath:
$ref: '#/components/schemas/HostPathVolumeSource'
iscsi:
$ref: '#/components/schemas/ISCSIVolumeSource'
name:
description: 'name of the volume.
Must be a DNS_LABEL and unique within the pod.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
nfs:
$ref: '#/components/schemas/NFSVolumeSource'
persistentVolumeClaim:
$ref: '#/components/schemas/PersistentVolumeClaimVolumeSource'
photonPersistentDisk:
$ref: '#/components/schemas/PhotonPersistentDiskVolumeSource'
portworxVolume:
$ref: '#/components/schemas/PortworxVolumeSource'
projected:
$ref: '#/components/schemas/ProjectedVolumeSource'
quobyte:
$ref: '#/components/schemas/QuobyteVolumeSource'
rbd:
$ref: '#/components/schemas/RBDVolumeSource'
scaleIO:
$ref: '#/components/schemas/ScaleIOVolumeSource'
secret:
$ref: '#/components/schemas/SecretVolumeSource'
storageos:
$ref: '#/components/schemas/StorageOSVolumeSource'
vsphereVolume:
$ref: '#/components/schemas/VsphereVirtualDiskVolumeSource'
title: Volume represents a named volume in a pod that may be accessed by any container in the pod.
type: object
PreferredSchedulingTerm:
description: 'An empty preferred scheduling term matches all objects with implicit weight 0
(i.e. it''s a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).'
properties:
preference:
$ref: '#/components/schemas/NodeSelectorTerm'
weight:
description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
format: int32
type: integer
type: object
HorizontalPodAutoscalerConfig:
description: HorizontalPodAutoscalerConfig specifies horizontal scale config
properties:
behavior:
$ref: '#/components/schemas/HorizontalPodAutoscalerBehavior'
type: object
ProjectedVolumeSource:
description: Represents a projected volume source
properties:
defaultMode:
description: 'defaultMode are the mode bits used to set permissions on created files by default.
Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
Directories within the path are not affected by this setting.
This might be in conflict with other options that affect the file
mode, like fsGroup, and the result can be other mode bits set.
+optional'
format: int32
type: integer
sources:
description: 'sources is the list of volume projections
+optional'
items:
$ref: '#/components/schemas/VolumeProjection'
type: array
type: object
EmptyDirVolumeSource:
description: Empty directory volumes support ownership management and SELinux relabeling.
properties:
medium:
$ref: '#/components/schemas/StorageMedium'
sizeLimit:
$ref: '#/components/schemas/Quantity'
title: Represents an empty directory for a pod.
type: object
HPAScalingPolicy:
properties:
periodSeconds:
description: 'periodSeconds specifies the window of time for which the policy should hold true.
PeriodSeconds must be greater than zero and less than or equal to 1800 (30 min).'
format: int32
type: integer
type:
$ref: '#/components/schemas/HPAScalingPolicyType'
value:
description: 'value contains the amount of change which is permitted by the policy.
It must be greater than zero'
format: int32
type: integer
title: HPAScalingPolicy is a single policy which must hold true for a specified past interval.
type: object
ConfigMapProjection:
description: 'The contents of the target ConfigMap''s Data field will be presented in a
projected volume as files using the keys in the Data field as the file names,
unless the items element is populated with specific mappings of keys to paths.
Note that this is identical to a configmap volume source without the default
mode.'
properties:
items:
description: 'items if unspecified, each key-value pair in the Data field of the referenced
ConfigMap will be projected into the volume as a file whose name is the
key and content is the value. If specified, the listed keys will be
projected into the specified paths, and unlisted keys will not be
present. If a key is specified which is not present in the ConfigMap,
the volume setup will error unless it is marked optional. Paths must be
relative and may not contain the ''..'' path or start with ''..''.
+optional'
items:
$ref: '#/components/schemas/KeyToPath'
type: array
name:
description: 'Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?
+optional'
type: string
optional:
description: 'optional specify whether the ConfigMap or its keys must be defined
+optional'
type: boolean
title: Adapts a ConfigMap into a projected volume.
type: object
PredictiveUnitType:
type: string
AzureDataDiskKind:
description: +enum
type: string
SELinuxOptions:
description: SELinuxOptions are the labels to be applied to the container
properties:
level:
description: 'Level is SELinux level label that applies to the container.
+optional'
type: string
role:
description: 'Role is a SELinux role label that applies to the container.
+optional'
type: string
type:
description: 'Type is a SELinux type label that applies to the container.
+optional'
type: string
user:
description: 'User is a SELinux user label that applies to the container.
+optional'
type: string
type: object
LabelSelectorRequirement:
description: 'A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.'
properties:
key:
description: key is the label key that the selector applies to.
type: string
operator:
$ref: '#/components/schemas/LabelSelectorOperator'
values:
description: 'values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
+optional'
items:
type: string
type: array
type: object
PortworxVolumeSource:
properties:
fsType:
description: 'fSType represents the filesystem type to mount
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.'
type: string
readOnly:
description: 'readOnly defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
+optional'
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
type: string
title: PortworxVolumeSource represents a Portworx volume resource.
type: object
Logger:
description: 'Logger provides optional payload logging for all endpoints
+experimental'
properties:
mode:
$ref: '#/components/schemas/LoggerMode'
url:
description: 'URL to send request logging CloudEvents
+optional'
type: string
type: object
ClusterTrustBundleProjection:
description: 'ClusterTrustBundleProjection describes how to select a set of
ClusterTrustBundle objects and project their contents into the pod
filesystem.'
properties:
labelSelector:
$ref: '#/components/schemas/LabelSelector'
name:
description: 'Select a single ClusterTrustBundle by object name. Mutually-exclusive
with signerName and labelSelector.
+optional'
type: string
optional:
description: 'If true, don''t block pod startup if the referenced ClusterTrustBundle(s)
aren''t available. If using name, then the named ClusterTrustBundle is
allowed not to exist. If using signerName, then the combination of
signerName and labelSelector is allowed to match zero
ClusterTrustBundles.
+optional'
type: boolean
path:
description: Relative path from the volume root to write the bundle.
type: string
signerName:
description: 'Select all ClusterTrustBundles that match this signer name.
Mutually-exclusive with name. The contents of all selected
ClusterTrustBundles will be unified and deduplicated.
+optional'
type: string
type: object
PredictiveUnit:
properties:
children:
items:
$ref: '#/components/schemas/PredictiveUnit'
type: array
endpoint:
$ref: '#/components/schemas/Endpoint'
envSecretRefName:
type: string
implementation:
$ref: '#/components/schemas/PredictiveUnitImplementation'
logger:
$ref: '#/components/schemas/Logger'
methods:
items:
$ref: '#/components/schemas/PredictiveUnitMethod'
type: array
modelUri:
type: string
name:
type: string
parameters:
items:
$ref: '#/components/schemas/Parameter'
type: array
serviceAccountName:
type: string
storageInitializerImage:
type: string
type:
$ref: '#/components/schemas/PredictiveUnitType'
type: object
SeldonScaledObjectSpec:
description: SeldonScaledObjectSpec is the spec for a KEDA ScaledObject resource
properties:
advanced:
$ref: '#/components/schemas/AdvancedConfig'
cooldownPeriod:
description: +optional
format: int32
type: integer
fallback:
$ref: '#/components/schemas/Fallback'
idleReplicaCount:
description: +optional
format: int32
type: integer
maxReplicaCount:
description: +optional
format: int32
type: integer
minReplicaCount:
description: +optional
format: int32
type: integer
pollingInterval:
description: +optional
format: int32
type: integer
triggers:
items:
$ref: '#/components/schemas/ScaleTriggers'
type: array
type: object
ObjectMeta:
description: 'ObjectMeta is metadata that all persisted resources must have, which includes all objects
users must create.'
properties:
annotations:
additionalProperties:
type: string
description: 'Annotations is an unstructured key value map stored with a resource that may be
set by external tools to store and retrieve arbitrary metadata. They are not
queryable and should be preserved when modifying objects.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations
+optional'
type: object
creationTimestamp:
description: 'CreationTimestamp is a timestamp representing the server time when this object was
created. It is not guaranteed to be set in happens-before order across separate operations.
Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system.
Read-only.
Null for lists.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
+optional'
type: string
deletionGracePeriodSeconds:
description: 'Number of seconds allowed for this object to gracefully terminate before
it will be removed from the system. Only set when deletionTimestamp is also set.
May only be shortened.
Read-only.
+optional'
format: int64
type: integer
deletionTimestamp:
description: 'DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This
field is set by the server when a graceful deletion is requested by the user, and is not
directly settable by a client. The resource is expected to be deleted (no longer visible
from resource lists, and not reachable by name) after the time in this field, once the
finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.
Once the deletionTimestamp is set, this value may not be unset or be set further into the
future, although it may be shortened or the resource may be deleted prior to this time.
For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react
by sending a graceful termination signal to the containers in the pod. After that 30 seconds,
the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,
remove the pod from the API. In the presence of network partitions, this object may still
exist after this timestamp, until an administrator or automated process can determine the
resource is fully terminated.
If not set, graceful deletion of the object has not been requested.
Populated by the system when a graceful deletion is requested.
Read-only.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
+optional'
type: string
finalizers:
description: 'Must be empty before the object is deleted from the registry. Each entry
is an identifier for the responsible component that will remove the entry
from the list. If the deletionTimestamp of the object is non-nil, entries
in this list can only be removed.
Finalizers may be processed and removed in any order. Order is NOT enforced
because it introduces significant risk of stuck finalizers.
finalizers is a shared field, any actor with permission can reorder it.
If the finalizer list is processed in order, then this can lead to a situation
in which the component responsible for the first finalizer in the list is
waiting for
# --- truncated at 32 KB (198 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/seldon/refs/heads/main/openapi/seldon-seldondeployments-api-openapi.yml