×
Description

ClusterServiceVersion is a Custom Resource of type ClusterServiceVersionSpec.

Type

object

Required
  • metadata

  • spec

Specification

Property Type Description

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

ObjectMeta_v2

Standard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.

status

object

ClusterServiceVersionStatus represents information about the status of a CSV. Status may trail the actual state of a system.

.spec

Description

ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.

Type

object

Required
  • displayName

  • install

Property Type Description

annotations

object (string)

Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.

apiservicedefinitions

object

APIServiceDefinitions declares all of the extension apis managed or required by an operator being ran by ClusterServiceVersion.

cleanup

object

Cleanup specifies the cleanup behaviour when the CSV gets deleted

customresourcedefinitions

object

CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion. If the CRD is present in the Owned list, it is implicitly required.

description

string

displayName

string

icon

array

icon[]

object

install

object

NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.

installModes

array

InstallModes specify supported installation types

installModes[]

object

InstallMode associates an InstallModeType with a flag representing if the CSV supports it

keywords

array (string)

labels

object (string)

Map of string keys and values that can be used to organize and categorize (scope and select) objects.

links

array

links[]

object

maintainers

array

maintainers[]

object

maturity

string

minKubeVersion

string

nativeAPIs

array

nativeAPIs[]

object

GroupVersionKind unambiguously identifies a kind. It doesn’t anonymously include GroupVersion to avoid automatic coercion. It doesn’t use a GroupVersion to avoid custom marshalling

provider

object

relatedImages

array

List any related images, or other container images that your Operator might require to perform their functions. This list should also include operand images as well. All image references should be specified by digest (SHA) and not by tag. This field is only used during catalog creation and plays no part in cluster runtime.

relatedImages[]

object

replaces

string

The name of a CSV this one replaces. Should match the metadata.Name field of the old CSV.

selector

object

Label selector for related resources.

skips

array (string)

The name(s) of one or more CSV(s) that should be skipped in the upgrade graph. Should match the metadata.Name field of the CSV that should be skipped. This field is only used during catalog creation and plays no part in cluster runtime.

version

string

webhookdefinitions

array

webhookdefinitions[]

object

WebhookDescription provides details to OLM about required webhooks

.spec.apiservicedefinitions

Description

APIServiceDefinitions declares all of the extension apis managed or required by an operator being ran by ClusterServiceVersion.

Type

object

Property Type Description

owned

array

owned[]

object

APIServiceDescription provides details to OLM about apis provided via aggregation

required

array

required[]

object

APIServiceDescription provides details to OLM about apis provided via aggregation

.spec.apiservicedefinitions.owned

Description
Type

array

.spec.apiservicedefinitions.owned[]

Description

APIServiceDescription provides details to OLM about apis provided via aggregation

Type

object

Required
  • group

  • kind

  • name

  • version

Property Type Description

actionDescriptors

array

actionDescriptors[]

object

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

containerPort

integer

deploymentName

string

description

string

displayName

string

group

string

kind

string

name

string

resources

array

resources[]

object

APIResourceReference is a Kubernetes resource type used by a custom resource

specDescriptors

array

specDescriptors[]

object

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

statusDescriptors

array

statusDescriptors[]

object

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

version

string

.spec.apiservicedefinitions.owned[].actionDescriptors

Description
Type

array

.spec.apiservicedefinitions.owned[].actionDescriptors[]

Description

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.apiservicedefinitions.owned[].resources

Description
Type

array

.spec.apiservicedefinitions.owned[].resources[]

Description

APIResourceReference is a Kubernetes resource type used by a custom resource

Type

object

Required
  • kind

  • name

  • version

Property Type Description

kind

string

name

string

version

string

.spec.apiservicedefinitions.owned[].specDescriptors

Description
Type

array

.spec.apiservicedefinitions.owned[].specDescriptors[]

Description

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.apiservicedefinitions.owned[].statusDescriptors

Description
Type

array

.spec.apiservicedefinitions.owned[].statusDescriptors[]

Description

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.apiservicedefinitions.required

Description
Type

array

.spec.apiservicedefinitions.required[]

Description

APIServiceDescription provides details to OLM about apis provided via aggregation

Type

object

Required
  • group

  • kind

  • name

  • version

Property Type Description

actionDescriptors

array

actionDescriptors[]

object

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

containerPort

integer

deploymentName

string

description

string

displayName

string

group

string

kind

string

name

string

resources

array

resources[]

object

APIResourceReference is a Kubernetes resource type used by a custom resource

specDescriptors

array

specDescriptors[]

object

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

statusDescriptors

array

statusDescriptors[]

object

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

version

string

.spec.apiservicedefinitions.required[].actionDescriptors

Description
Type

array

.spec.apiservicedefinitions.required[].actionDescriptors[]

Description

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.apiservicedefinitions.required[].resources

Description
Type

array

.spec.apiservicedefinitions.required[].resources[]

Description

APIResourceReference is a Kubernetes resource type used by a custom resource

Type

object

Required
  • kind

  • name

  • version

Property Type Description

kind

string

name

string

version

string

.spec.apiservicedefinitions.required[].specDescriptors

Description
Type

array

.spec.apiservicedefinitions.required[].specDescriptors[]

Description

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.apiservicedefinitions.required[].statusDescriptors

Description
Type

array

.spec.apiservicedefinitions.required[].statusDescriptors[]

Description

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.cleanup

Description

Cleanup specifies the cleanup behaviour when the CSV gets deleted

Type

object

Required
  • enabled

Property Type Description

enabled

boolean

.spec.customresourcedefinitions

Description

CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion. If the CRD is present in the Owned list, it is implicitly required.

Type

object

Property Type Description

owned

array

owned[]

object

CRDDescription provides details to OLM about the CRDs

required

array

required[]

object

CRDDescription provides details to OLM about the CRDs

.spec.customresourcedefinitions.owned

Description
Type

array

.spec.customresourcedefinitions.owned[]

Description

CRDDescription provides details to OLM about the CRDs

Type

object

Required
  • kind

  • name

  • version

Property Type Description

actionDescriptors

array

actionDescriptors[]

object

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

description

string

displayName

string

kind

string

name

string

resources

array

resources[]

object

APIResourceReference is a Kubernetes resource type used by a custom resource

specDescriptors

array

specDescriptors[]

object

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

statusDescriptors

array

statusDescriptors[]

object

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

version

string

.spec.customresourcedefinitions.owned[].actionDescriptors

Description
Type

array

.spec.customresourcedefinitions.owned[].actionDescriptors[]

Description

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.customresourcedefinitions.owned[].resources

Description
Type

array

.spec.customresourcedefinitions.owned[].resources[]

Description

APIResourceReference is a Kubernetes resource type used by a custom resource

Type

object

Required
  • kind

  • name

  • version

Property Type Description

kind

string

name

string

version

string

.spec.customresourcedefinitions.owned[].specDescriptors

Description
Type

array

.spec.customresourcedefinitions.owned[].specDescriptors[]

Description

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.customresourcedefinitions.owned[].statusDescriptors

Description
Type

array

.spec.customresourcedefinitions.owned[].statusDescriptors[]

Description

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.customresourcedefinitions.required

Description
Type

array

.spec.customresourcedefinitions.required[]

Description

CRDDescription provides details to OLM about the CRDs

Type

object

Required
  • kind

  • name

  • version

Property Type Description

actionDescriptors

array

actionDescriptors[]

object

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

description

string

displayName

string

kind

string

name

string

resources

array

resources[]

object

APIResourceReference is a Kubernetes resource type used by a custom resource

specDescriptors

array

specDescriptors[]

object

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

statusDescriptors

array

statusDescriptors[]

object

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

version

string

.spec.customresourcedefinitions.required[].actionDescriptors

Description
Type

array

.spec.customresourcedefinitions.required[].actionDescriptors[]

Description

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.customresourcedefinitions.required[].resources

Description
Type

array

.spec.customresourcedefinitions.required[].resources[]

Description

APIResourceReference is a Kubernetes resource type used by a custom resource

Type

object

Required
  • kind

  • name

  • version

Property Type Description

kind

string

name

string

version

string

.spec.customresourcedefinitions.required[].specDescriptors

Description
Type

array

.spec.customresourcedefinitions.required[].specDescriptors[]

Description

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.customresourcedefinitions.required[].statusDescriptors

Description
Type

array

.spec.customresourcedefinitions.required[].statusDescriptors[]

Description

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

Type

object

Required
  • path

Property Type Description

description

string

displayName

string

path

string

value

string

RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.

x-descriptors

array (string)

.spec.icon

Description
Type

array

.spec.icon[]

Description
Type

object

Required
  • base64data

  • mediatype

Property Type Description

base64data

string

mediatype

string

.spec.install

Description

NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.

Type

object

Required
  • strategy

Property Type Description

spec

object

StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.

strategy

string

.spec.install.spec

Description

StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.

Type

object

Required
  • deployments

Property Type Description

clusterPermissions

array

clusterPermissions[]

object

StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy

deployments

array

deployments[]

object

StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create

permissions

array

permissions[]

object

StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy

.spec.install.spec.clusterPermissions

Description
Type

array

.spec.install.spec.clusterPermissions[]

Description

StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy

Type

object

Required
  • rules

  • serviceAccountName

Property Type Description

rules

array

rules[]

object

PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.

serviceAccountName

string

.spec.install.spec.clusterPermissions[].rules

Description
Type

array

.spec.install.spec.clusterPermissions[].rules[]

Description

PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.

Type

object

Required
  • verbs

Property Type Description

apiGroups

array (string)

APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed.

nonResourceURLs

array (string)

NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding. Rules can either apply to API resources (such as "pods" or "secrets") or non-resource URL paths (such as "/api"), but not both.

resourceNames

array (string)

ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed.

resources

array (string)

Resources is a list of resources this rule applies to. '*' represents all resources.

verbs

array (string)

Verbs is a list of Verbs that apply to ALL the ResourceKinds contained in this rule. '*' represents all verbs.

.spec.install.spec.deployments

Description
Type

array

.spec.install.spec.deployments[]

Description

StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create

Type

object

Required
  • name

  • spec

Property Type Description

label

object (string)

Set is a map of label:value. It implements Labels.

name

string

spec

object

DeploymentSpec is the specification of the desired behavior of the Deployment.

.spec.install.spec.deployments[].spec

Description

DeploymentSpec is the specification of the desired behavior of the Deployment.

Type

object

Required
  • selector

  • template

Property Type Description

minReadySeconds

integer

Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)

paused

boolean

Indicates that the deployment is paused.

progressDeadlineSeconds

integer

The maximum time in seconds for a deployment to make progress before it is considered to be failed. The deployment controller will continue to process failed deployments and a condition with a ProgressDeadlineExceeded reason will be surfaced in the deployment status. Note that progress will not be estimated during the time a deployment is paused. Defaults to 600s.

replicas

integer

Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1.

revisionHistoryLimit

integer

The number of old ReplicaSets to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.

selector

object

Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template’s labels.

strategy

object

The deployment strategy to use to replace existing pods with new ones.

template

object

Template describes the pods that will be created.

.spec.install.spec.deployments[].spec.selector

Description

Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template’s labels.

Type

object

Property Type Description

matchExpressions

array

matchExpressions is a list of label selector requirements. The requirements are ANDed.

matchExpressions[]

object

A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.

matchLabels

object (string)

matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.

.spec.install.spec.deployments[].spec.selector.matchExpressions

Description

matchExpressions is a list of label selector requirements. The requirements are ANDed.

Type

array

.spec.install.spec.deployments[].spec.selector.matchExpressions[]

Description

A label selector requirement is a selector that con