Eventing-contrib Resources

Packages:

duck.knative.dev/v1beta1

Package v1beta1 is the v1beta1 version of the API.

Resource Types:

AddressStatus

(Appears on: AddressableType)

AddressStatus shows how we expect folks to embed Addressable in their Status field.

FieldDescription
address
Addressable

Addressable

(Appears on: AddressStatus, Addressable)

Addressable provides a generic mechanism for a custom resource definition to indicate a destination for message delivery.

Addressable is the schema for the destination information. This is typically stored in the object’s status, as this information may be generated by the controller.

FieldDescription
url
knative.dev/pkg/apis.URL

AddressableType

AddressableType is a skeleton type wrapping Addressable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Addressable ObjectReferences and access the Addressable data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
AddressStatus

BackoffPolicyType (string alias)

(Appears on: DeliverySpec)

BackoffPolicyType is the type for backoff policies

Channelable

Channelable is a skeleton type wrapping Subscribable and Addressable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Channelable ObjectReferences and access their subscription and address data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ChannelableSpec

Spec is the part where the Channelable fulfills the Subscribable contract.



SubscribableSpec
SubscribableSpec

(Members of SubscribableSpec are embedded into this type.)

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

status
ChannelableStatus

ChannelableSpec

(Appears on: ChannelSpec, Channelable, InMemoryChannelSpec)

ChannelableSpec contains Spec of the Channelable object

FieldDescription
SubscribableSpec
SubscribableSpec

(Members of SubscribableSpec are embedded into this type.)

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

ChannelableStatus

(Appears on: ChannelStatus, Channelable, InMemoryChannelStatus)

ChannelableStatus contains the Status of a Channelable object.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the part where the Channelable fulfills the Addressable contract.

SubscribableStatus
SubscribableStatus

(Members of SubscribableStatus are embedded into this type.)

Subscribers is populated with the statuses of each of the Channelable’s subscribers.

deadLetterChannel
KReference
(Optional)

DeadLetterChannel is a KReference and is set by the channel when it supports native error handling via a channel Failed messages are delivered here.

CloudEventOverrides

(Appears on: SourceSpec)

CloudEventOverrides defines arguments for a Source that control the output format of the CloudEvents produced by the Source.

FieldDescription
extensions
map[string]string
(Optional)

Extensions specify what attribute are added or overridden on the outbound event. Each Extensions key-value pair are set on the event as an attribute extension independently.

Conditions ([]knative.dev/pkg/apis.Condition alias)

(Appears on: Status)

Conditions is a simple wrapper around apis.Conditions to implement duck.Implementable.

DeliverySpec

(Appears on: BrokerSpec, BrokerSpec, ChannelSpec, ChannelableCombinedSpec, ChannelableSpec, ChannelableSpec, InMemoryChannelSpec, ParallelBranch, ParallelBranch, SequenceStep, SequenceStep, SubscriberSpec, SubscriberSpec, SubscriptionSpec, SubscriptionSpec)

DeliverySpec contains the delivery options for event senders, such as channelable and source.

FieldDescription
deadLetterSink
Destination
(Optional)

DeadLetterSink is the sink receiving event that could not be sent to a destination.

retry
int32
(Optional)

Retry is the minimum number of retries the sender should attempt when sending an event before moving it to the dead letter sink.

backoffPolicy
BackoffPolicyType
(Optional)

BackoffPolicy is the retry backoff policy (linear, exponential).

backoffDelay
string
(Optional)

BackoffDelay is the delay before retrying. More information on Duration format: https://www.ietf.org/rfc/rfc3339.txt

For linear policy, backoff delay is the time interval between retries. For exponential policy , backoff delay is backoffDelay*2^.

DeliveryStatus

DeliveryStatus contains the Status of an object supporting delivery options.

FieldDescription
deadLetterChannel
KReference
(Optional)

DeadLetterChannel is a KReference that is the reference to the native, platform specific channel where failed events are sent to.

Destination

(Appears on: ApiServerSourceSpec, CamelSourceSpec, SourceSpec)

Destination represents a target of an invocation over HTTP.

FieldDescription
ref
Kubernetes core/v1.ObjectReference
(Optional)

Ref points to an Addressable.

apiVersion
string
(Optional)
kind
string
(Optional)
name
string
(Optional)
namespace
string
(Optional)
uri
knative.dev/pkg/apis.URL
(Optional)

URI can be an absolute URL(non-empty scheme and non-empty host) pointing to the target or a relative URI. Relative URIs will be resolved using the base URI retrieved from Ref.

KResource

KResource is a skeleton type wrapping Conditions in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Conditions ObjectReferences and access the Conditions data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
Status

Source

Source is the minimum resource shape to adhere to the Source Specification. This duck type is intended to allow implementors of Sources and Importers to verify their own resources meet the expectations. This is not a real resource. NOTE: The Source Specification is in progress and the shape and names could be modified until it has been accepted.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SourceSpec


sink
Destination

Sink is a reference to an object that will resolve to a domain name or a URI directly to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

status
SourceStatus

SourceSpec

(Appears on: Source)

FieldDescription
sink
Destination

Sink is a reference to an object that will resolve to a domain name or a URI directly to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

SourceStatus

(Appears on: Source)

SourceStatus shows how we expect folks to embed Addressable in their Status field.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1beta1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

sinkUri
knative.dev/pkg/apis.URL
(Optional)

SinkURI is the current active sink URI that has been configured for the Source.

Status

(Appears on: KResource, KafkaChannelStatus, NatssChannelStatus, SourceStatus)

Status shows how we expect folks to embed Conditions in their Status field. WARNING: Adding fields to this struct will add them to all Knative resources.

FieldDescription
observedGeneration
int64
(Optional)

ObservedGeneration is the ‘Generation’ of the Service that was last processed by the controller.

conditions
Conditions
(Optional)

Conditions the latest available observations of a resource’s current state.

Subscribable

Subscribable is a skeleton type wrapping Subscribable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize SubscribableType ObjectReferences and access the Subscription data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SubscribableSpec

SubscribableSpec is the part where Subscribable object is configured as to be compatible with Subscribable contract.



subscribers
[]SubscriberSpec

This is the list of subscriptions for this subscribable.

status
SubscribableStatus

SubscribableStatus is the part where SubscribableStatus object is configured as to be compatible with Subscribable contract.

SubscribableSpec

(Appears on: ChannelableCombinedSpec, ChannelableSpec, Subscribable)

SubscribableSpec shows how we expect folks to embed Subscribable in their Spec field.

FieldDescription
subscribers
[]SubscriberSpec

This is the list of subscriptions for this subscribable.

SubscribableStatus

(Appears on: ChannelableCombinedStatus, ChannelableStatus, Subscribable)

SubscribableStatus is the schema for the subscribable’s status portion of the status section of the resource.

FieldDescription
subscribers
[]SubscriberStatus

This is the list of subscription’s statuses for this channel.

SubscriberSpec

(Appears on: SubscribableSpec)

SubscriberSpec defines a single subscriber to a Subscribable.

At least one of SubscriberURI and ReplyURI must be present

FieldDescription
uid
k8s.io/apimachinery/pkg/types.UID
(Optional)

UID is used to understand the origin of the subscriber.

generation
int64
(Optional)

Generation of the origin of the subscriber with uid:UID.

subscriberUri
knative.dev/pkg/apis.URL
(Optional)

SubscriberURI is the endpoint for the subscriber

replyUri
knative.dev/pkg/apis.URL
(Optional)

ReplyURI is the endpoint for the reply

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

SubscriberStatus

(Appears on: SubscribableStatus, SubscribableStatus)

SubscriberStatus defines the status of a single subscriber to a Channel.

FieldDescription
uid
k8s.io/apimachinery/pkg/types.UID
(Optional)

UID is used to understand the origin of the subscriber.

observedGeneration
int64
(Optional)

Generation of the origin of the subscriber with uid:UID.

ready
Kubernetes core/v1.ConditionStatus

Status of the subscriber.

message
string
(Optional)

A human readable message indicating details of Ready status.


autoscaling.internal.knative.dev/v1alpha1

Resource Types:

PodAutoscaler

PodAutoscaler is a Knative abstraction that encapsulates the interface by which Knative components instantiate autoscalers. This definition is an abstraction that may be backed by multiple definitions. For more information, see the Knative Pluggability presentation: https://docs.google.com/presentation/d/10KWynvAJYuOEWy69VBa6bHJVCqIsz1TNdEKosNvcpPY/edit

FieldDescription
apiVersion
string
autoscaling.internal.knative.dev/v1alpha1
kind
string
PodAutoscaler
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
PodAutoscalerSpec
(Optional)

Spec holds the desired state of the PodAutoscaler (from the client).



generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

containerConcurrency
int64
(Optional)

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Defaults to 0 which means unlimited concurrency.

scaleTargetRef
Kubernetes core/v1.ObjectReference

ScaleTargetRef defines the /scale-able resource that this PodAutoscaler is responsible for quickly right-sizing.

reachability
ReachabilityType
(Optional)

Reachable specifies whether or not the ScaleTargetRef can be reached (ie. has a route). Defaults to ReachabilityUnknown

protocolType
knative.dev/serving/pkg/apis/networking.ProtocolType

The application-layer protocol. Matches ProtocolType inferred from the revision spec.

status
PodAutoscalerStatus
(Optional)

Status communicates the observed state of the PodAutoscaler (from the controller).

Metric

Metric represents a resource to configure the metric collector with.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
MetricSpec
(Optional)

Spec holds the desired state of the Metric (from the client).



stableWindow
time.Duration

StableWindow is the aggregation window for metrics in a stable state.

panicWindow
time.Duration

PanicWindow is the aggregation window for metrics where quick reactions are needed.

scrapeTarget
string

ScrapeTarget is the K8s service that publishes the metric endpoint.

status
MetricStatus
(Optional)

Status communicates the observed state of the Metric (from the controller).

MetricSpec

(Appears on: Metric)

MetricSpec contains all values a metric collector needs to operate.

FieldDescription
stableWindow
time.Duration

StableWindow is the aggregation window for metrics in a stable state.

panicWindow
time.Duration

PanicWindow is the aggregation window for metrics where quick reactions are needed.

scrapeTarget
string

ScrapeTarget is the K8s service that publishes the metric endpoint.

MetricStatus

(Appears on: Metric)

MetricStatus reflects the status of metric collection for this specific entity.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

PodAutoscalerSpec

(Appears on: PodAutoscaler)

PodAutoscalerSpec holds the desired state of the PodAutoscaler (from the client).

FieldDescription
generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

containerConcurrency
int64
(Optional)

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Defaults to 0 which means unlimited concurrency.

scaleTargetRef
Kubernetes core/v1.ObjectReference

ScaleTargetRef defines the /scale-able resource that this PodAutoscaler is responsible for quickly right-sizing.

reachability
ReachabilityType
(Optional)

Reachable specifies whether or not the ScaleTargetRef can be reached (ie. has a route). Defaults to ReachabilityUnknown

protocolType
knative.dev/serving/pkg/apis/networking.ProtocolType

The application-layer protocol. Matches ProtocolType inferred from the revision spec.

PodAutoscalerStatus

(Appears on: PodAutoscaler)

PodAutoscalerStatus communicates the observed state of the PodAutoscaler (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

serviceName
string

ServiceName is the K8s Service name that serves the revision, scaled by this PA. The service is created and owned by the ServerlessService object owned by this PA.

metricsServiceName
string

MetricsServiceName is the K8s Service name that provides revision metrics. The service is managed by the PA object.

desiredScale
int32

DesiredScale shows the current desired number of replicas for the revision.

actualScale
int32

ActualScale shows the actual number of replicas for the revision.

PodScalable

PodScalable is a duck type that the resources referenced by the PodAutoscaler’s ScaleTargetRef must implement. They must also implement the /scale sub-resource for use with /scale based implementations (e.g. HPA), but this further constrains the shape the referenced resources may take.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
PodScalableSpec


replicas
int32
selector
Kubernetes meta/v1.LabelSelector
template
Kubernetes core/v1.PodTemplateSpec
status
PodScalableStatus

PodScalableSpec

(Appears on: PodScalable)

PodScalableSpec is the specification for the desired state of a PodScalable (or at least our shared portion).

FieldDescription
replicas
int32
selector
Kubernetes meta/v1.LabelSelector
template
Kubernetes core/v1.PodTemplateSpec

PodScalableStatus

(Appears on: PodScalable)

PodScalableStatus is the observed state of a PodScalable (or at least our shared portion).

FieldDescription
replicas
int32

ReachabilityType (string alias)

(Appears on: PodAutoscalerSpec)

ReachabilityType is the enumeration type for the different states of reachability to the ScaleTarget of a PodAutoscaler


serving.knative.dev/v1

Resource Types:

Configuration

Configuration represents the “floating HEAD” of a linear history of Revisions. Users create new Revisions by updating the Configuration’s spec. The “latest created” revision’s name is available under status, as is the “latest ready” revision’s name. See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration

FieldDescription
apiVersion
string
serving.knative.dev/v1
kind
string
Configuration
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ConfigurationSpec
(Optional)

template
RevisionTemplateSpec
(Optional)

Template holds the latest specification for the Revision to be stamped out.

status
ConfigurationStatus
(Optional)

Revision

Revision is an immutable snapshot of code and configuration. A revision references a container image. Revisions are created by updates to a Configuration.

See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision

FieldDescription
apiVersion
string
serving.knative.dev/v1
kind
string
Revision
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RevisionSpec
(Optional)

PodSpec
Kubernetes core/v1.PodSpec

(Members of PodSpec are embedded into this type.)

containerConcurrency
int64
(Optional)

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Defaults to 0 which means concurrency to the application is not limited, and the system decides the target concurrency for the autoscaler.

timeoutSeconds
int64
(Optional)

TimeoutSeconds holds the max duration the instance is allowed for responding to a request. If unspecified, a system default will be provided.

status
RevisionStatus
(Optional)

Route

Route is responsible for configuring ingress over a collection of Revisions. Some of the Revisions a Route distributes traffic over may be specified by referencing the Configuration responsible for creating them; in these cases the Route is additionally responsible for monitoring the Configuration for “latest ready revision” changes, and smoothly rolling out latest revisions. See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#route

FieldDescription
apiVersion
string
serving.knative.dev/v1
kind
string
Route
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RouteSpec
(Optional)

Spec holds the desired state of the Route (from the client).



traffic
[]TrafficTarget
(Optional)

Traffic specifies how to distribute traffic over a collection of revisions and configurations.

status
RouteStatus
(Optional)

Status communicates the observed state of the Route (from the controller).

Service

Service acts as a top-level container that manages a Route and Configuration which implement a network service. Service exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership. Service acts only as an orchestrator of the underlying Routes and Configurations (much as a kubernetes Deployment orchestrates ReplicaSets), and its usage is optional but recommended.

The Service’s controller will track the statuses of its owned Configuration and Route, reflecting their statuses and conditions as its own.

See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#service

FieldDescription
apiVersion
string
serving.knative.dev/v1
kind
string
Service
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ServiceSpec
(Optional)

ConfigurationSpec
ConfigurationSpec

(Members of ConfigurationSpec are embedded into this type.)

ServiceSpec inlines an unrestricted ConfigurationSpec.

RouteSpec
RouteSpec

(Members of RouteSpec are embedded into this type.)

ServiceSpec inlines RouteSpec and restricts/defaults its fields via webhook. In particular, this spec can only reference this Service’s configuration and revisions (which also influences defaults).

status
ServiceStatus
(Optional)

ConfigurationSpec

(Appears on: Configuration, Configuration, ServiceSpec)

ConfigurationSpec holds the desired state of the Configuration (from the client).

FieldDescription
template
RevisionTemplateSpec
(Optional)

Template holds the latest specification for the Revision to be stamped out.

ConfigurationStatus

(Appears on: Configuration, Configuration)

ConfigurationStatus communicates the observed state of the Configuration (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

ConfigurationStatusFields
ConfigurationStatusFields

(Members of ConfigurationStatusFields are embedded into this type.)

ConfigurationStatusFields

(Appears on: ConfigurationStatus, ServiceStatus)

ConfigurationStatusFields holds the fields of Configuration’s status that are not generally shared. This is defined separately and inlined so that other types can readily consume these fields via duck typing.

FieldDescription
latestReadyRevisionName
string
(Optional)

LatestReadyRevisionName holds the name of the latest Revision stamped out from this Configuration that has had its “Ready” condition become “True”.

latestCreatedRevisionName
string
(Optional)

LatestCreatedRevisionName is the last revision that was created from this Configuration. It might not be ready yet, for that use LatestReadyRevisionName.

ContainerStatuses

(Appears on: RevisionStatus)

ContainerStatuses holds the information of container name and image digest value

FieldDescription
name
string
imageDigest
string

RevisionSpec

(Appears on: Revision, Revision, RevisionSpec, RevisionTemplateSpec)

RevisionSpec holds the desired state of the Revision (from the client).

FieldDescription
PodSpec
Kubernetes core/v1.PodSpec

(Members of PodSpec are embedded into this type.)

containerConcurrency
int64
(Optional)

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Defaults to 0 which means concurrency to the application is not limited, and the system decides the target concurrency for the autoscaler.

timeoutSeconds
int64
(Optional)

TimeoutSeconds holds the max duration the instance is allowed for responding to a request. If unspecified, a system default will be provided.

RevisionStatus

(Appears on: Revision, Revision)

RevisionStatus communicates the observed state of the Revision (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

serviceName
string
(Optional)

ServiceName holds the name of a core Kubernetes Service resource that load balances over the pods backing this Revision.

logUrl
string
(Optional)

LogURL specifies the generated logging url for this particular revision based on the revision url template specified in the controller’s config.

imageDigest
string
(Optional)

DeprecatedImageDigest holds the resolved digest for the image specified within .Spec.Container.Image. The digest is resolved during the creation of Revision. This field holds the digest value regardless of whether a tag or digest was originally specified in the Container object. It may be empty if the image comes from a registry listed to skip resolution. If multiple containers specified then DeprecatedImageDigest holds the digest for serving container. DEPRECATED: Use ContainerStatuses instead. TODO(savitaashture) Remove deprecatedImageDigest. ref https://kubernetes.io/docs/reference/using-api/deprecation-policy for deprecation.

containerStatuses
[]ContainerStatuses
(Optional)

ContainerStatuses is a slice of images present in .Spec.Container[*].Image to their respective digests and their container name. The digests are resolved during the creation of Revision. ContainerStatuses holds the container name and image digests for both serving and non serving containers. ref: http://bit.ly/image-digests

RevisionTemplateSpec

(Appears on: ConfigurationSpec)

RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RevisionSpec
(Optional)

PodSpec
Kubernetes core/v1.PodSpec

(Members of PodSpec are embedded into this type.)

containerConcurrency
int64
(Optional)

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Defaults to 0 which means concurrency to the application is not limited, and the system decides the target concurrency for the autoscaler.

timeoutSeconds
int64
(Optional)

TimeoutSeconds holds the max duration the instance is allowed for responding to a request. If unspecified, a system default will be provided.

RouteSpec

(Appears on: Route, Route, ServiceSpec)

RouteSpec holds the desired state of the Route (from the client).

FieldDescription
traffic
[]TrafficTarget
(Optional)

Traffic specifies how to distribute traffic over a collection of revisions and configurations.

RouteStatus

(Appears on: Route, Route)

RouteStatus communicates the observed state of the Route (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

RouteStatusFields
RouteStatusFields

(Members of RouteStatusFields are embedded into this type.)

RouteStatusFields

(Appears on: RouteStatus, ServiceStatus)

RouteStatusFields holds the fields of Route’s status that are not generally shared. This is defined separately and inlined so that other types can readily consume these fields via duck typing.

FieldDescription
url
knative.dev/pkg/apis.URL
(Optional)

URL holds the url that will distribute traffic over the provided traffic targets. It generally has the form http[s]://{route-name}.{route-namespace}.{cluster-level-suffix}

address
Addressable
(Optional)

Address holds the information needed for a Route to be the target of an event.

traffic
[]TrafficTarget
(Optional)

Traffic holds the configured traffic distribution. These entries will always contain RevisionName references. When ConfigurationName appears in the spec, this will hold the LatestReadyRevisionName that we last observed.

ServiceSpec

(Appears on: Service, Service)

ServiceSpec represents the configuration for the Service object. A Service’s specification is the union of the specifications for a Route and Configuration. The Service restricts what can be expressed in these fields, e.g. the Route must reference the provided Configuration; however, these limitations also enable friendlier defaulting, e.g. Route never needs a Configuration name, and may be defaulted to the appropriate “run latest” spec.

FieldDescription
ConfigurationSpec
ConfigurationSpec

(Members of ConfigurationSpec are embedded into this type.)

ServiceSpec inlines an unrestricted ConfigurationSpec.

RouteSpec
RouteSpec

(Members of RouteSpec are embedded into this type.)

ServiceSpec inlines RouteSpec and restricts/defaults its fields via webhook. In particular, this spec can only reference this Service’s configuration and revisions (which also influences defaults).

ServiceStatus

(Appears on: Service, Service)

ServiceStatus represents the Status stanza of the Service resource.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

ConfigurationStatusFields
ConfigurationStatusFields

(Members of ConfigurationStatusFields are embedded into this type.)

In addition to inlining ConfigurationSpec, we also inline the fields specific to ConfigurationStatus.

RouteStatusFields
RouteStatusFields

(Members of RouteStatusFields are embedded into this type.)

In addition to inlining RouteSpec, we also inline the fields specific to RouteStatus.

TrafficTarget

(Appears on: RouteSpec, RouteStatusFields, TrafficTarget)

TrafficTarget holds a single entry of the routing table for a Route.

FieldDescription
tag
string
(Optional)

Tag is optionally used to expose a dedicated url for referencing this target exclusively.

revisionName
string
(Optional)

RevisionName of a specific revision to which to send this portion of traffic. This is mutually exclusive with ConfigurationName.

configurationName
string
(Optional)

ConfigurationName of a configuration to whose latest revision we will send this portion of traffic. When the “status.latestReadyRevisionName” of the referenced configuration changes, we will automatically migrate traffic from the prior “latest ready” revision to the new one. This field is never set in Route’s status, only its spec. This is mutually exclusive with RevisionName.

latestRevision
bool
(Optional)

LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.

percent
int64
(Optional)

Percent indicates that percentage based routing should be used and the value indicates the percent of traffic that is be routed to this Revision or Configuration. 0 (zero) mean no traffic, 100 means all traffic. When percentage based routing is being used the follow rules apply: - the sum of all percent values must equal 100 - when not specified, the implied value for percent is zero for that particular Revision or Configuration

url
knative.dev/pkg/apis.URL
(Optional)

URL displays the URL for accessing named traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)


serving.knative.dev/v1alpha1

Resource Types:

Configuration

Configuration represents the “floating HEAD” of a linear history of Revisions, and optionally how the containers those revisions reference are built. Users create new Revisions by updating the Configuration’s spec. The “latest created” revision’s name is available under status, as is the “latest ready” revision’s name. See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration

FieldDescription
apiVersion
string
serving.knative.dev/v1alpha1
kind
string
Configuration
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ConfigurationSpec
(Optional)

Spec holds the desired state of the Configuration (from the client).



generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

build
k8s.io/apimachinery/pkg/runtime.RawExtension
(Optional)

Build optionally holds the specification for the build to perform to produce the Revision’s container image.

revisionTemplate
RevisionTemplateSpec
(Optional)

DeprecatedRevisionTemplate holds the latest specification for the Revision to be stamped out. If a Build specification is provided, then the DeprecatedRevisionTemplate’s BuildName field will be populated with the name of the Build object created to produce the container for the Revision. DEPRECATED Use Template instead.

template
RevisionTemplateSpec
(Optional)

Template holds the latest specification for the Revision to be stamped out.

status
ConfigurationStatus
(Optional)

Status communicates the observed state of the Configuration (from the controller).

Revision

Revision is an immutable snapshot of code and configuration. A revision references a container image, and optionally a build that is responsible for materializing that container image from source. Revisions are created by updates to a Configuration.

See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision

FieldDescription
apiVersion
string
serving.knative.dev/v1alpha1
kind
string
Revision
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RevisionSpec
(Optional)

Spec holds the desired state of the Revision (from the client).



RevisionSpec
RevisionSpec

(Members of RevisionSpec are embedded into this type.)

generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

servingState
DeprecatedRevisionServingStateType
(Optional)

DeprecatedServingState holds a value describing the desired state the Kubernetes resources should be in for this Revision. Users must not specify this when creating a revision. These values are no longer updated by the system.

container
Kubernetes core/v1.Container
(Optional)

DeprecatedContainer defines the unit of execution for this Revision. In the context of a Revision, we disallow a number of the fields of this Container, including: name and lifecycle. See also the runtime contract for more information about the execution environment: https://github.com/knative/serving/blob/master/docs/runtime-contract.md

status
RevisionStatus
(Optional)

Status communicates the observed state of the Revision (from the controller).

Route

Route is responsible for configuring ingress over a collection of Revisions. Some of the Revisions a Route distributes traffic over may be specified by referencing the Configuration responsible for creating them; in these cases the Route is additionally responsible for monitoring the Configuration for “latest ready” revision changes, and smoothly rolling out latest revisions. See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#route

FieldDescription
apiVersion
string
serving.knative.dev/v1alpha1
kind
string
Route
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RouteSpec
(Optional)

Spec holds the desired state of the Route (from the client).



generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

traffic
[]TrafficTarget
(Optional)

Traffic specifies how to distribute traffic over a collection of Knative Serving Revisions and Configurations.

status
RouteStatus
(Optional)

Status communicates the observed state of the Route (from the controller).

Service

Service acts as a top-level container that manages a set of Routes and Configurations which implement a network service. Service exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership. Service acts only as an orchestrator of the underlying Routes and Configurations (much as a kubernetes Deployment orchestrates ReplicaSets), and its usage is optional but recommended.

The Service’s controller will track the statuses of its owned Configuration and Route, reflecting their statuses and conditions as its own.

See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#service

FieldDescription
apiVersion
string
serving.knative.dev/v1alpha1
kind
string
Service
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ServiceSpec
(Optional)

generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

runLatest
RunLatestType
(Optional)

DeprecatedRunLatest defines a simple Service. It will automatically configure a route that keeps the latest ready revision from the supplied configuration running.

pinned
PinnedType
(Optional)

DeprecatedPinned is DEPRECATED in favor of ReleaseType

manual
ManualType
(Optional)

DeprecatedManual mode enables users to start managing the underlying Route and Configuration resources directly. This advanced usage is intended as a path for users to graduate from the limited capabilities of Service to the full power of Route.

release
ReleaseType
(Optional)

Release enables gradual promotion of new revisions by allowing traffic to be split between two revisions. This type replaces the deprecated Pinned type.

ConfigurationSpec
ConfigurationSpec

(Members of ConfigurationSpec are embedded into this type.)

We are moving to a shape where the Configuration and Route specifications are inlined into the Service, which gives them compatible shapes. We are staging this change here as a path to this in v1beta1, which drops the “mode” based specifications above. Ultimately all non-v1beta1 fields will be deprecated, and then dropped in v1beta1.

RouteSpec
RouteSpec

(Members of RouteSpec are embedded into this type.)

status
ServiceStatus
(Optional)

CannotConvertError

CannotConvertError is returned when a field cannot be converted.

FieldDescription
Message
string
Field
string

ConfigurationSpec

(Appears on: Configuration, PinnedType, ReleaseType, RunLatestType, ServiceSpec)

ConfigurationSpec holds the desired state of the Configuration (from the client).

FieldDescription
generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

build
k8s.io/apimachinery/pkg/runtime.RawExtension
(Optional)

Build optionally holds the specification for the build to perform to produce the Revision’s container image.

revisionTemplate
RevisionTemplateSpec
(Optional)

DeprecatedRevisionTemplate holds the latest specification for the Revision to be stamped out. If a Build specification is provided, then the DeprecatedRevisionTemplate’s BuildName field will be populated with the name of the Build object created to produce the container for the Revision. DEPRECATED Use Template instead.

template
RevisionTemplateSpec
(Optional)

Template holds the latest specification for the Revision to be stamped out.

ConfigurationStatus

(Appears on: Configuration)

ConfigurationStatus communicates the observed state of the Configuration (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

ConfigurationStatusFields
ConfigurationStatusFields

(Members of ConfigurationStatusFields are embedded into this type.)

ConfigurationStatusFields

(Appears on: ConfigurationStatus, ServiceStatus)

ConfigurationStatusFields holds all of the non-duckv1.Status status fields of a Route. These are defined outline so that we can also inline them into Service, and more easily copy them.

FieldDescription
latestReadyRevisionName
string
(Optional)

LatestReadyRevisionName holds the name of the latest Revision stamped out from this Configuration that has had its “Ready” condition become “True”.

latestCreatedRevisionName
string
(Optional)

LatestCreatedRevisionName is the last revision that was created from this Configuration. It might not be ready yet, for that use LatestReadyRevisionName.

ContainerStatuses

(Appears on: RevisionStatus)

ContainerStatuses holds the information of container name and image digest value

FieldDescription
name
string
imageDigest
string

DeprecatedRevisionServingStateType (string alias)

(Appears on: RevisionSpec)

DeprecatedRevisionServingStateType is an enumeration of the levels of serving readiness of the Revision. See also: https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting

ManualType

(Appears on: ServiceSpec)

ManualType contains the options for configuring a manual service. See ServiceSpec for more details.

PinnedType

(Appears on: ServiceSpec)

PinnedType is DEPRECATED. ReleaseType should be used instead. To get the behavior of PinnedType set ReleaseType.Revisions to []string{PinnedType.RevisionName} and ReleaseType.RolloutPercent to 0.

FieldDescription
revisionName
string
(Optional)

The revision name to pin this service to until changed to a different service type.

configuration
ConfigurationSpec
(Optional)

The configuration for this service.

ReleaseType

(Appears on: ServiceSpec)

ReleaseType contains the options for slowly releasing revisions. See ServiceSpec for more details.

FieldDescription
revisions
[]string
(Optional)

Revisions is an ordered list of 1 or 2 revisions. The first will have a TrafficTarget with a name of “current” and the second will have a name of “candidate”.

rolloutPercent
int
(Optional)

RolloutPercent is the percent of traffic that should be sent to the “candidate” revision. Valid values are between 0 and 99 inclusive.

configuration
ConfigurationSpec
(Optional)

The configuration for this service. All revisions from this service must come from a single configuration.

RevisionSpec

(Appears on: Revision, RevisionTemplateSpec)

RevisionSpec holds the desired state of the Revision (from the client).

FieldDescription
RevisionSpec
RevisionSpec

(Members of RevisionSpec are embedded into this type.)

generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

servingState
DeprecatedRevisionServingStateType
(Optional)

DeprecatedServingState holds a value describing the desired state the Kubernetes resources should be in for this Revision. Users must not specify this when creating a revision. These values are no longer updated by the system.

container
Kubernetes core/v1.Container
(Optional)

DeprecatedContainer defines the unit of execution for this Revision. In the context of a Revision, we disallow a number of the fields of this Container, including: name and lifecycle. See also the runtime contract for more information about the execution environment: https://github.com/knative/serving/blob/master/docs/runtime-contract.md

RevisionStatus

(Appears on: Revision)

RevisionStatus communicates the observed state of the Revision (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

serviceName
string
(Optional)

ServiceName holds the name of a core Kubernetes Service resource that load balances over the pods backing this Revision.

logUrl
string
(Optional)

LogURL specifies the generated logging url for this particular revision based on the revision url template specified in the controller’s config.

imageDigest
string
(Optional)

DeprecatedImageDigest holds the resolved digest for the image specified within .Spec.Container.Image. The digest is resolved during the creation of Revision. This field holds the digest value regardless of whether a tag or digest was originally specified in the Container object. It may be empty if the image comes from a registry listed to skip resolution. If multiple containers specified then DeprecatedImageDigest holds the digest for serving container. DEPRECATED: Use ContainerStatuses instead. TODO(savitaashture) Remove deprecatedImageDigest. ref https://kubernetes.io/docs/reference/using-api/deprecation-policy for deprecation.

containerStatuses
[]ContainerStatuses
(Optional)

ContainerStatuses is a slice of images present in .Spec.Container[*].Image to their respective digests and their container name. The digests are resolved during the creation of Revision. ContainerStatuses holds the container name and image digests for both serving and non serving containers. ref: http://bit.ly/image-digests

RevisionTemplateSpec

(Appears on: ConfigurationSpec)

RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RevisionSpec
(Optional)

RevisionSpec
RevisionSpec

(Members of RevisionSpec are embedded into this type.)

generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

servingState
DeprecatedRevisionServingStateType
(Optional)

DeprecatedServingState holds a value describing the desired state the Kubernetes resources should be in for this Revision. Users must not specify this when creating a revision. These values are no longer updated by the system.

container
Kubernetes core/v1.Container
(Optional)

DeprecatedContainer defines the unit of execution for this Revision. In the context of a Revision, we disallow a number of the fields of this Container, including: name and lifecycle. See also the runtime contract for more information about the execution environment: https://github.com/knative/serving/blob/master/docs/runtime-contract.md

RouteSpec

(Appears on: Route, ServiceSpec)

RouteSpec holds the desired state of the Route (from the client).

FieldDescription
generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

traffic
[]TrafficTarget
(Optional)

Traffic specifies how to distribute traffic over a collection of Knative Serving Revisions and Configurations.

RouteStatus

(Appears on: Route)

RouteStatus communicates the observed state of the Route (from the controller).

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

RouteStatusFields
RouteStatusFields

(Members of RouteStatusFields are embedded into this type.)

RouteStatusFields

(Appears on: RouteStatus, ServiceStatus)

RouteStatusFields holds all of the non-duckv1.Status status fields of a Route. These are defined outline so that we can also inline them into Service, and more easily copy them.

FieldDescription
url
knative.dev/pkg/apis.URL
(Optional)

URL holds the url that will distribute traffic over the provided traffic targets. It generally has the form http[s]://{route-name}.{route-namespace}.{cluster-level-suffix}

domain
string
(Optional)

DeprecatedDomain holds the top-level domain that will distribute traffic over the provided targets. It generally has the form {route-name}.{route-namespace}.{cluster-level-suffix}

domainInternal
string
(Optional)

DeprecatedDomainInternal holds the top-level domain that will distribute traffic over the provided targets from inside the cluster. It generally has the form {route-name}.{route-namespace}.svc.{cluster-domain-name} DEPRECATED: Use Address instead.

address
Addressable
(Optional)

Address holds the information needed for a Route to be the target of an event.

traffic
[]TrafficTarget
(Optional)

Traffic holds the configured traffic distribution. These entries will always contain RevisionName references. When ConfigurationName appears in the spec, this will hold the LatestReadyRevisionName that we last observed.

RunLatestType

(Appears on: ServiceSpec)

RunLatestType contains the options for always having a route to the latest configuration. See ServiceSpec for more details.

FieldDescription
configuration
ConfigurationSpec
(Optional)

The configuration for this service.

ServiceSpec

(Appears on: Service)

ServiceSpec represents the configuration for the Service object. Exactly one of its members (other than Generation) must be specified. Services can either track the latest ready revision of a configuration or be pinned to a specific revision.

FieldDescription
generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

runLatest
RunLatestType
(Optional)

DeprecatedRunLatest defines a simple Service. It will automatically configure a route that keeps the latest ready revision from the supplied configuration running.

pinned
PinnedType
(Optional)

DeprecatedPinned is DEPRECATED in favor of ReleaseType

manual
ManualType
(Optional)

DeprecatedManual mode enables users to start managing the underlying Route and Configuration resources directly. This advanced usage is intended as a path for users to graduate from the limited capabilities of Service to the full power of Route.

release
ReleaseType
(Optional)

Release enables gradual promotion of new revisions by allowing traffic to be split between two revisions. This type replaces the deprecated Pinned type.

ConfigurationSpec
ConfigurationSpec

(Members of ConfigurationSpec are embedded into this type.)

We are moving to a shape where the Configuration and Route specifications are inlined into the Service, which gives them compatible shapes. We are staging this change here as a path to this in v1beta1, which drops the “mode” based specifications above. Ultimately all non-v1beta1 fields will be deprecated, and then dropped in v1beta1.

RouteSpec
RouteSpec

(Members of RouteSpec are embedded into this type.)

ServiceStatus

(Appears on: Service)

ServiceStatus represents the Status stanza of the Service resource.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

RouteStatusFields
RouteStatusFields

(Members of RouteStatusFields are embedded into this type.)

ConfigurationStatusFields
ConfigurationStatusFields

(Members of ConfigurationStatusFields are embedded into this type.)

TrafficTarget

(Appears on: RouteSpec, RouteStatusFields)

TrafficTarget holds a single entry of the routing table for a Route.

FieldDescription
name
string
(Optional)

Name is optionally used to expose a dedicated hostname for referencing this target exclusively. It has the form: {name}.${route.status.domain}

TrafficTarget
TrafficTarget

(Members of TrafficTarget are embedded into this type.)

We inherit most of our fields by inlining the v1 type. Ultimately all non-v1 fields will be deprecated.


duck.knative.dev/v1

Resource Types:

AddressStatus

(Appears on: AddressableType, ChannelableStatus, ParallelStatus, ParallelStatus, SequenceStatus, SequenceStatus)

AddressStatus shows how we expect folks to embed Addressable in their Status field.

FieldDescription
address
Addressable

Addressable

(Appears on: AddressStatus, BrokerStatus, RouteStatusFields)

Addressable provides a generic mechanism for a custom resource definition to indicate a destination for message delivery.

Addressable is the schema for the destination information. This is typically stored in the object’s status, as this information may be generated by the controller.

FieldDescription
url
knative.dev/pkg/apis.URL

AddressableType

AddressableType is a skeleton type wrapping Addressable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Addressable ObjectReferences and access the Addressable data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
AddressStatus

CloudEventAttributes

(Appears on: SourceStatus)

CloudEventAttributes specifies the attributes that a Source uses as part of its CloudEvents.

FieldDescription
type
string

Type refers to the CloudEvent type attribute.

source
string

Source is the CloudEvents source attribute.

CloudEventOverrides

(Appears on: ApiServerSourceSpec, CamelSourceSpec, PingSourceSpec, SourceSpec)

CloudEventOverrides defines arguments for a Source that control the output format of the CloudEvents produced by the Source.

FieldDescription
extensions
map[string]string
(Optional)

Extensions specify what attribute are added or overridden on the outbound event. Each Extensions key-value pair are set on the event as an attribute extension independently.

Conditions ([]knative.dev/pkg/apis.Condition alias)

(Appears on: Status)

Conditions is a simple wrapper around apis.Conditions to implement duck.Implementable.

Destination

(Appears on: CouchDbSourceSpec, DeliverySpec, GitHubSourceSpec, GitLabSourceSpec, KafkaSourceSpec, ParallelBranch, ParallelBranch, ParallelSpec, ParallelSpec, PingSourceSpec, PrometheusSourceSpec, SequenceSpec, SequenceSpec, SequenceStep, SequenceStep, SourceSpec, SubscriptionSpec, SubscriptionSpec, TriggerSpec, TriggerSpec)

Destination represents a target of an invocation over HTTP.

FieldDescription
ref
KReference
(Optional)

Ref points to an Addressable.

uri
knative.dev/pkg/apis.URL
(Optional)

URI can be an absolute URL(non-empty scheme and non-empty host) pointing to the target or a relative URI. Relative URIs will be resolved using the base URI retrieved from Ref.

KRShaped

KRShaped is an interface for retrieving the duck elements of an arbitrary resource.

KReference

(Appears on: BrokerSpec, BrokerSpec, ChannelStatus, ChannelableStatus, DeliveryStatus, Destination)

KReference contains enough information to refer to another object. It’s a trimmed down version of corev1.ObjectReference.

FieldDescription
kind
string

Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

namespace
string
(Optional)

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ This is optional field, it gets defaulted to the object holding it if left out.

name
string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

apiVersion
string

API version of the referent.

KResource

KResource is a skeleton type wrapping Conditions in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Conditions ObjectReferences and access the Conditions data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
Status

PodSpecable

(Appears on: WithPodSpec)

PodSpecable is implemented by types containing a PodTemplateSpec in the manner of ReplicaSet, Deployment, DaemonSet, StatefulSet.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional)

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

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
Kubernetes core/v1.PodSpec
(Optional)

Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status



volumes
[]Kubernetes core/v1.Volume
(Optional)

List of volumes that can be mounted by containers belonging to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes

initContainers
[]Kubernetes core/v1.Container

List of initialization containers belonging to the pod. Init containers are executed in order prior to containers being started. If any init container fails, the pod is considered to have failed and is handled according to its restartPolicy. The name for an init container or normal container must be unique among all containers. Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes. The resourceRequirements of an init container are taken into account during scheduling by finding the highest request/limit for each resource type, and then using the max of of that value or the sum of the normal containers. Limits are applied to init containers in a similar fashion. Init containers cannot currently be added or removed. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

containers
[]Kubernetes core/v1.Container

List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at least one container in a Pod. Cannot be updated.

ephemeralContainers
[]Kubernetes core/v1.EphemeralContainer
(Optional)

List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing pod to perform user-initiated actions such as debugging. This list cannot be specified when creating a pod, and it cannot be modified by updating the pod spec. In order to add an ephemeral container to an existing pod, use the pod’s ephemeralcontainers subresource. This field is alpha-level and is only honored by servers that enable the EphemeralContainers feature.

restartPolicy
Kubernetes core/v1.RestartPolicy
(Optional)

Restart policy for all containers within the pod. One of Always, OnFailure, Never. Default to Always. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

terminationGracePeriodSeconds
int64
(Optional)

Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period will be used instead. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. Defaults to 30 seconds.

activeDeadlineSeconds
int64
(Optional)

Optional duration in seconds the pod may be active on the node relative to StartTime before the system will actively try to mark it failed and kill associated containers. Value must be a positive integer.

dnsPolicy
Kubernetes core/v1.DNSPolicy
(Optional)

Set DNS policy for the pod. Defaults to “ClusterFirst”. Valid values are ‘ClusterFirstWithHostNet’, ‘ClusterFirst’, ‘Default’ or ‘None’. DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy. To have DNS options set along with hostNetwork, you have to specify DNS policy explicitly to ‘ClusterFirstWithHostNet’.

nodeSelector
map[string]string
(Optional)

NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node’s labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

serviceAccountName
string
(Optional)

ServiceAccountName is the name of the ServiceAccount to use to run this pod. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/

serviceAccount
string
(Optional)

DeprecatedServiceAccount is a depreciated alias for ServiceAccountName. Deprecated: Use serviceAccountName instead.

automountServiceAccountToken
bool
(Optional)

AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.

nodeName
string
(Optional)

NodeName is a request to schedule this pod onto a specific node. If it is non-empty, the scheduler simply schedules this pod onto that node, assuming that it fits resource requirements.

hostNetwork
bool
(Optional)

Host networking requested for this pod. Use the host’s network namespace. If this option is set, the ports that will be used must be specified. Default to false.

hostPID
bool
(Optional)

Use the host’s pid namespace. Optional: Default to false.

hostIPC
bool
(Optional)

Use the host’s ipc namespace. Optional: Default to false.

shareProcessNamespace
bool
(Optional)

Share a single process namespace between all of the containers in a pod. When this is set containers will be able to view and signal processes from other containers in the same pod, and the first process in each container will not be assigned PID 1. HostPID and ShareProcessNamespace cannot both be set. Optional: Default to false. This field is beta-level and may be disabled with the PodShareProcessNamespace feature.

securityContext
Kubernetes core/v1.PodSecurityContext
(Optional)

SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field.

imagePullSecrets
[]Kubernetes core/v1.LocalObjectReference
(Optional)

ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. If specified, these secrets will be passed to individual puller implementations for them to use. For example, in the case of docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod

hostname
string
(Optional)

Specifies the hostname of the Pod If not specified, the pod’s hostname will be set to a system-defined value.

subdomain
string
(Optional)

If specified, the fully qualified Pod hostname will be “...svc.”. If not specified, the pod will not have a domainname at all.

affinity
Kubernetes core/v1.Affinity
(Optional)

If specified, the pod’s scheduling constraints

schedulerName
string
(Optional)

If specified, the pod will be dispatched by specified scheduler. If not specified, the pod will be dispatched by default scheduler.

tolerations
[]Kubernetes core/v1.Toleration
(Optional)

If specified, the pod’s tolerations.

hostAliases
[]Kubernetes core/v1.HostAlias
(Optional)

HostAliases is an optional list of hosts and IPs that will be injected into the pod’s hosts file if specified. This is only valid for non-hostNetwork pods.

priorityClassName
string
(Optional)

If specified, indicates the pod’s priority. “system-node-critical” and “system-cluster-critical” are two special keywords which indicate the highest priorities with the former being the highest priority. Any other name must be defined by creating a PriorityClass object with that name. If not specified, the pod priority will be default or zero if there is no default.

priority
int32
(Optional)

The priority value. Various system components use this field to find the priority of the pod. When Priority Admission Controller is enabled, it prevents users from setting this field. The admission controller populates this field from PriorityClassName. The higher the value, the higher the priority.

dnsConfig
Kubernetes core/v1.PodDNSConfig
(Optional)

Specifies the DNS parameters of a pod. Parameters specified here will be merged to the generated DNS configuration based on DNSPolicy.

readinessGates
[]Kubernetes core/v1.PodReadinessGate
(Optional)

If specified, all readiness gates will be evaluated for pod readiness. A pod is ready when all its containers are ready AND all conditions specified in the readiness gates have status equal to “True” More info: https://git.k8s.io/enhancements/keps/sig-network/0007-pod-ready%2B%2B.md

runtimeClassName
string
(Optional)

RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run. If unset or empty, the “legacy” RuntimeClass will be used, which is an implicit class with an empty definition that uses the default runtime handler. More info: https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md This is a beta feature as of Kubernetes v1.14.

enableServiceLinks
bool
(Optional)

EnableServiceLinks indicates whether information about services should be injected into pod’s environment variables, matching the syntax of Docker links. Optional: Defaults to true.

preemptionPolicy
Kubernetes core/v1.PreemptionPolicy
(Optional)

PreemptionPolicy is the Policy for preempting pods with lower priority. One of Never, PreemptLowerPriority. Defaults to PreemptLowerPriority if unset. This field is alpha-level and is only honored by servers that enable the NonPreemptingPriority feature.

overhead
Kubernetes core/v1.ResourceList
(Optional)

Overhead represents the resource overhead associated with running a pod for a given RuntimeClass. This field will be autopopulated at admission time by the RuntimeClass admission controller. If the RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests. The RuntimeClass admission controller will reject Pod create requests which have the overhead already set. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value defined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero. More info: https://git.k8s.io/enhancements/keps/sig-node/20190226-pod-overhead.md This field is alpha-level as of Kubernetes v1.16, and is only honored by servers that enable the PodOverhead feature.

topologySpreadConstraints
[]Kubernetes core/v1.TopologySpreadConstraint
(Optional)

TopologySpreadConstraints describes how a group of pods ought to spread across topology domains. Scheduler will schedule pods in a way which abides by the constraints. This field is alpha-level and is only honored by clusters that enables the EvenPodsSpread feature. All topologySpreadConstraints are ANDed.

Source

Source is the minimum resource shape to adhere to the Source Specification. This duck type is intended to allow implementors of Sources and Importers to verify their own resources meet the expectations. This is not a real resource. NOTE: The Source Specification is in progress and the shape and names could be modified until it has been accepted.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SourceSpec


sink
Destination

Sink is a reference to an object that will resolve to a uri to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

status
SourceStatus

SourceSpec

(Appears on: ApiServerSourceSpec, ContainerSourceSpec, PingSourceSpec, SinkBindingSpec, SinkBindingSpec, Source)

FieldDescription
sink
Destination

Sink is a reference to an object that will resolve to a uri to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

SourceStatus

(Appears on: ApiServerSourceStatus, ApiServerSourceStatus, AwsSqsSourceStatus, ContainerSourceStatus, CouchDbSourceStatus, GitHubBindingStatus, GitHubSourceStatus, GitLabBindingStatus, GitLabSourceStatus, KafkaSourceStatus, PingSourceStatus, PingSourceStatus, PrometheusSourceStatus, SinkBindingStatus, SinkBindingStatus, Source)

SourceStatus shows how we expect folks to embed Addressable in their Status field.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1beta1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

sinkUri
knative.dev/pkg/apis.URL
(Optional)

SinkURI is the current active sink URI that has been configured for the Source.

ceAttributes
[]CloudEventAttributes
(Optional)

CloudEventAttributes are the specific attributes that the Source uses as part of its CloudEvents.

Status

(Appears on: BrokerStatus, BrokerStatus, CamelSourceStatus, CertificateStatus, ChannelStatus, ChannelableCombinedStatus, ChannelableStatus, ChannelableStatus, ConfigMapPropagationStatus, ConfigurationStatus, ConfigurationStatus, EventTypeStatus, EventTypeStatus, InMemoryChannelStatus, IngressStatus, KResource, KafkaBindingStatus, MetricStatus, ParallelStatus, ParallelStatus, PodAutoscalerStatus, RevisionStatus, RevisionStatus, RouteStatus, RouteStatus, SequenceStatus, SequenceStatus, ServerlessServiceStatus, ServiceStatus, ServiceStatus, SourceStatus, SubscriptionStatus, SubscriptionStatus, TriggerStatus, TriggerStatus)

Status shows how we expect folks to embed Conditions in their Status field. WARNING: Adding fields to this struct will add them to all Knative resources.

FieldDescription
observedGeneration
int64
(Optional)

ObservedGeneration is the ‘Generation’ of the Service that was last processed by the controller.

conditions
Conditions
(Optional)

Conditions the latest available observations of a resource’s current state.

WithPod

WithPod is the shell that demonstrates how PodSpecable types wrap a PodSpec.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
WithPodSpec


template
PodSpecable

WithPodSpec

(Appears on: WithPod)

WithPodSpec is the shell around the PodSpecable within WithPod.

FieldDescription
template
PodSpecable

networking.internal.knative.dev/v1alpha1

Resource Types:

Certificate

Certificate is responsible for provisioning a SSL certificate for the given hosts. It is a Knative abstraction for various SSL certificate provisioning solutions (such as cert-manager or self-signed SSL certificate).

FieldDescription
apiVersion
string
networking.internal.knative.dev/v1alpha1
kind
string
Certificate
metadata
Kubernetes meta/v1.ObjectMeta
(Optional)

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

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
CertificateSpec
(Optional)

Spec is the desired state of the Certificate. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status



dnsNames
[]string

DNSNames is a list of DNS names the Certificate could support. The wildcard format of DNSNames (e.g. *.default.example.com) is supported.

secretName
string

SecretName is the name of the secret resource to store the SSL certificate in.

status
CertificateStatus
(Optional)

Status is the current state of the Certificate. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

Ingress

Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable URLs, load balance traffic, offer name based virtual hosting, etc.

This is heavily based on K8s Ingress https://godoc.org/k8s.io/api/networking/v1beta1#Ingress which some highlighted modifications.

FieldDescription
apiVersion
string
networking.internal.knative.dev/v1alpha1
kind
string
Ingress
metadata
Kubernetes meta/v1.ObjectMeta
(Optional)

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

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
IngressSpec
(Optional)

Spec is the desired state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status



generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

tls
[]IngressTLS
(Optional)

TLS configuration. Currently Ingress only supports a single TLS port: 443. If multiple members of this list specify different hosts, they will be multiplexed on the same port according to the hostname specified through the SNI TLS extension, if the ingress controller fulfilling the ingress supports SNI.

rules
[]IngressRule
(Optional)

A list of host rules used to configure the Ingress.

visibility
IngressVisibility

Visibility setting.

status
IngressStatus
(Optional)

Status is the current state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

ServerlessService

ServerlessService is a proxy for the K8s service objects containing the endpoints for the revision, whether those are endpoints of the activator or revision pods. See: https://knative.page.link/naxz for details.

FieldDescription
apiVersion
string
networking.internal.knative.dev/v1alpha1
kind
string
ServerlessService
metadata
Kubernetes meta/v1.ObjectMeta
(Optional)

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

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ServerlessServiceSpec
(Optional)

Spec is the desired state of the ServerlessService. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status



mode
ServerlessServiceOperationMode

Mode describes the mode of operation of the ServerlessService.

objectRef
Kubernetes core/v1.ObjectReference

ObjectRef defines the resource that this ServerlessService is responsible for making “serverless”.

ProtocolType
knative.dev/serving/pkg/apis/networking.ProtocolType

The application-layer protocol. Matches RevisionProtocolType set on the owning pa/revision. serving imports networking, so just use string.

numActivators
int32

NumActivators contains number of Activators that this revision should be assigned. O means — assign all.

status
ServerlessServiceStatus
(Optional)

Status is the current state of the ServerlessService. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statuss

CertificateSpec

(Appears on: Certificate)

CertificateSpec defines the desired state of a Certificate.

FieldDescription
dnsNames
[]string

DNSNames is a list of DNS names the Certificate could support. The wildcard format of DNSNames (e.g. *.default.example.com) is supported.

secretName
string

SecretName is the name of the secret resource to store the SSL certificate in.

CertificateStatus

(Appears on: Certificate)

CertificateStatus defines the observed state of a Certificate.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

When Certificate status is ready, it means: - The target secret exists - The target secret contains a certificate that has not expired - The target secret contains a private key valid for the certificate

notAfter
Kubernetes meta/v1.Time
(Optional)

The expiration time of the TLS certificate stored in the secret named by this resource in spec.secretName.

http01Challenges
[]HTTP01Challenge

HTTP01Challenges is a list of HTTP01 challenges that need to be fulfilled in order to get the TLS certificate..

HTTP01Challenge

(Appears on: CertificateStatus)

HTTP01Challenge defines the status of a HTTP01 challenge that a certificate needs to fulfill.

FieldDescription
url
knative.dev/pkg/apis.URL

URL is the URL that the HTTP01 challenge is expected to serve on.

serviceName
string

ServiceName is the name of the service to serve HTTP01 challenge requests.

serviceNamespace
string

ServiceNamespace is the namespace of the service to serve HTTP01 challenge requests.

servicePort
k8s.io/apimachinery/pkg/util/intstr.IntOrString

ServicePort is the port of the service to serve HTTP01 challenge requests.

HTTPIngressPath

(Appears on: HTTPIngressRuleValue)

HTTPIngressPath associates a path regex with a backend. Incoming URLs matching the path are forwarded to the backend.

FieldDescription
path
string
(Optional)

Path is an extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional “path” part of a URL as defined by RFC 3986. Paths must begin with a ‘/’. If unspecified, the path defaults to a catch all sending traffic to the backend.

splits
[]IngressBackendSplit

Splits defines the referenced service endpoints to which the traffic will be forwarded to.

appendHeaders
map[string]string
(Optional)

AppendHeaders allow specifying additional HTTP headers to add before forwarding a request to the destination service.

NOTE: This differs from K8s Ingress which doesn’t allow header appending.

timeout
Kubernetes meta/v1.Duration
(Optional)

Timeout for HTTP requests.

NOTE: This differs from K8s Ingress which doesn’t allow setting timeouts.

retries
HTTPRetry
(Optional)

Retry policy for HTTP requests.

NOTE: This differs from K8s Ingress which doesn’t allow retry settings.

HTTPIngressRuleValue

(Appears on: IngressRule)

HTTPIngressRuleValue is a list of http selectors pointing to backends. In the example: http:///? -> backend where where parts of the url correspond to RFC 3986, this resource will be used to match against everything after the last ‘/’ and before the first ‘?’ or ‘#’.

FieldDescription
paths
[]HTTPIngressPath

A collection of paths that map requests to backends.

If they are multiple matching paths, the first match takes precendent.

HTTPRetry

(Appears on: HTTPIngressPath)

HTTPRetry describes the retry policy to use when a HTTP request fails.

FieldDescription
attempts
int

Number of retries for a given request.

perTryTimeout
Kubernetes meta/v1.Duration

Timeout per retry attempt for a given request. format: 1h/1m/1s/1ms. MUST BE >=1ms.

IngressBackend

(Appears on: IngressBackendSplit)

IngressBackend describes all endpoints for a given service and port.

FieldDescription
serviceNamespace
string

Specifies the namespace of the referenced service.

NOTE: This differs from K8s Ingress to allow routing to different namespaces.

serviceName
string

Specifies the name of the referenced service.

servicePort
k8s.io/apimachinery/pkg/util/intstr.IntOrString

Specifies the port of the referenced service.

IngressBackendSplit

(Appears on: HTTPIngressPath)

IngressBackendSplit describes all endpoints for a given service and port.

FieldDescription
IngressBackend
IngressBackend

(Members of IngressBackend are embedded into this type.)

Specifies the backend receiving the traffic split.

percent
int

Specifies the split percentage, a number between 0 and 100. If only one split is specified, we default to 100.

NOTE: This differs from K8s Ingress to allow percentage split.

appendHeaders
map[string]string
(Optional)

AppendHeaders allow specifying additional HTTP headers to add before forwarding a request to the destination service.

NOTE: This differs from K8s Ingress which doesn’t allow header appending.

IngressRule

(Appears on: IngressSpec)

IngressRule represents the rules mapping the paths under a specified host to the related backend services. Incoming requests are first evaluated for a host match, then routed to the backend associated with the matching IngressRuleValue.

FieldDescription
hosts
[]string
(Optional)

Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the following deviations from the “host” part of the URI as defined in the RFC: 1. IPs are not allowed. Currently a rule value can only apply to the IP in the Spec of the parent . 2. The : delimiter is not respected because ports are not allowed. Currently the port of an Ingress is implicitly :80 for http and :443 for https. Both these may change in the future. If the host is unspecified, the Ingress routes all traffic based on the specified IngressRuleValue. If multiple matching Hosts were provided, the first rule will take precedent.

visibility
IngressVisibility
(Optional)

Visibility signifies whether this rule should ClusterLocal. If it’s not specified then it defaults to ExternalIP.

http
HTTPIngressRuleValue

HTTP represents a rule to apply against incoming requests. If the rule is satisfied, the request is routed to the specified backend.

IngressSpec

(Appears on: Ingress)

IngressSpec describes the Ingress the user wishes to exist.

In general this follows the same shape as K8s Ingress. Some notable differences: - Backends now can have namespace: - Traffic can be split across multiple backends. - Timeout & Retry can be configured. - Headers can be appended.

FieldDescription
generation
int64
(Optional)

DeprecatedGeneration was used prior in Kubernetes versions <1.11 when metadata.generation was not being incremented by the api server

This property will be dropped in future Knative releases and should not be used - use metadata.generation

Tracking issue: https://github.com/knative/serving/issues/643

tls
[]IngressTLS
(Optional)

TLS configuration. Currently Ingress only supports a single TLS port: 443. If multiple members of this list specify different hosts, they will be multiplexed on the same port according to the hostname specified through the SNI TLS extension, if the ingress controller fulfilling the ingress supports SNI.

rules
[]IngressRule
(Optional)

A list of host rules used to configure the Ingress.

visibility
IngressVisibility

Visibility setting.

IngressStatus

(Appears on: Ingress)

IngressStatus describe the current state of the Ingress.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

loadBalancer
LoadBalancerStatus
(Optional)

LoadBalancer contains the current status of the load-balancer. This is to be superseded by the combination of PublicLoadBalancer and PrivateLoadBalancer

publicLoadBalancer
LoadBalancerStatus
(Optional)

PublicLoadBalancer contains the current status of the load-balancer.

privateLoadBalancer
LoadBalancerStatus
(Optional)

PrivateLoadBalancer contains the current status of the load-balancer.

IngressTLS

(Appears on: IngressSpec)

IngressTLS describes the transport layer security associated with an Ingress.

FieldDescription
hosts
[]string
(Optional)

Hosts is a list of hosts included in the TLS certificate. The values in this list must match the name/s used in the tlsSecret. Defaults to the wildcard host setting for the loadbalancer controller fulfilling this Ingress, if left unspecified.

secretName
string

SecretName is the name of the secret used to terminate SSL traffic.

secretNamespace
string

SecretNamespace is the namespace of the secret used to terminate SSL traffic.

serverCertificate
string
(Optional)

ServerCertificate identifies the certificate filename in the secret. Defaults to tls.crt.

privateKey
string
(Optional)

PrivateKey identifies the private key filename in the secret. Defaults to tls.key.

IngressVisibility (string alias)

(Appears on: IngressRule, IngressSpec)

IngressVisibility describes whether the Ingress should be exposed to public gateways or not.

LoadBalancerIngressStatus

(Appears on: LoadBalancerStatus)

LoadBalancerIngressStatus represents the status of a load-balancer ingress point: traffic intended for the service should be sent to an ingress point.

FieldDescription
ip
string
(Optional)

IP is set for load-balancer ingress points that are IP based (typically GCE or OpenStack load-balancers)

domain
string
(Optional)

Domain is set for load-balancer ingress points that are DNS based (typically AWS load-balancers)

domainInternal
string
(Optional)

DomainInternal is set if there is a cluster-local DNS name to access the Ingress.

NOTE: This differs from K8s Ingress, since we also desire to have a cluster-local DNS name to allow routing in case of not having a mesh.

meshOnly
bool
(Optional)

MeshOnly is set if the Ingress is only load-balanced through a Service mesh.

LoadBalancerStatus

(Appears on: IngressStatus)

LoadBalancerStatus represents the status of a load-balancer.

FieldDescription
ingress
[]LoadBalancerIngressStatus
(Optional)

Ingress is a list containing ingress points for the load-balancer. Traffic intended for the service should be sent to these ingress points.

ServerlessServiceOperationMode (string alias)

(Appears on: ServerlessServiceSpec)

ServerlessServiceOperationMode is an enumeration of the modes of operation for the ServerlessService.

ServerlessServiceSpec

(Appears on: ServerlessService)

ServerlessServiceSpec describes the ServerlessService.

FieldDescription
mode
ServerlessServiceOperationMode

Mode describes the mode of operation of the ServerlessService.

objectRef
Kubernetes core/v1.ObjectReference

ObjectRef defines the resource that this ServerlessService is responsible for making “serverless”.

ProtocolType
knative.dev/serving/pkg/apis/networking.ProtocolType

The application-layer protocol. Matches RevisionProtocolType set on the owning pa/revision. serving imports networking, so just use string.

numActivators
int32

NumActivators contains number of Activators that this revision should be assigned. O means — assign all.

ServerlessServiceStatus

(Appears on: ServerlessService)

ServerlessServiceStatus describes the current state of the ServerlessService.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

serviceName
string
(Optional)

ServiceName holds the name of a core K8s Service resource that load balances over the pods backing this Revision (activator or revision).

privateServiceName
string
(Optional)

PrivateServiceName holds the name of a core K8s Service resource that load balances over the user service pods backing this Revision.


serving.knative.dev/v1beta1

Resource Types:

Configuration

Configuration represents the “floating HEAD” of a linear history of Revisions. Users create new Revisions by updating the Configuration’s spec. The “latest created” revision’s name is available under status, as is the “latest ready” revision’s name. See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration

FieldDescription
apiVersion
string
serving.knative.dev/v1beta1
kind
string
Configuration
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ConfigurationSpec
(Optional)

template
RevisionTemplateSpec
(Optional)

Template holds the latest specification for the Revision to be stamped out.

status
ConfigurationStatus
(Optional)

Revision

Revision is an immutable snapshot of code and configuration. A revision references a container image. Revisions are created by updates to a Configuration.

See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision

FieldDescription
apiVersion
string
serving.knative.dev/v1beta1
kind
string
Revision
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RevisionSpec
(Optional)

PodSpec
Kubernetes core/v1.PodSpec

(Members of PodSpec are embedded into this type.)

containerConcurrency
int64
(Optional)

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Defaults to 0 which means concurrency to the application is not limited, and the system decides the target concurrency for the autoscaler.

timeoutSeconds
int64
(Optional)

TimeoutSeconds holds the max duration the instance is allowed for responding to a request. If unspecified, a system default will be provided.

status
RevisionStatus
(Optional)

Route

Route is responsible for configuring ingress over a collection of Revisions. Some of the Revisions a Route distributes traffic over may be specified by referencing the Configuration responsible for creating them; in these cases the Route is additionally responsible for monitoring the Configuration for “latest ready revision” changes, and smoothly rolling out latest revisions. See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#route

FieldDescription
apiVersion
string
serving.knative.dev/v1beta1
kind
string
Route
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
RouteSpec
(Optional)

Spec holds the desired state of the Route (from the client).



traffic
[]TrafficTarget
(Optional)

Traffic specifies how to distribute traffic over a collection of revisions and configurations.

status
RouteStatus
(Optional)

Status communicates the observed state of the Route (from the controller).

Service

Service acts as a top-level container that manages a Route and Configuration which implement a network service. Service exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership. Service acts only as an orchestrator of the underlying Routes and Configurations (much as a kubernetes Deployment orchestrates ReplicaSets), and its usage is optional but recommended.

The Service’s controller will track the statuses of its owned Configuration and Route, reflecting their statuses and conditions as its own.

See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#service

FieldDescription
apiVersion
string
serving.knative.dev/v1beta1
kind
string
Service
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ServiceSpec
(Optional)

ConfigurationSpec
ConfigurationSpec

(Members of ConfigurationSpec are embedded into this type.)

ServiceSpec inlines an unrestricted ConfigurationSpec.

RouteSpec
RouteSpec

(Members of RouteSpec are embedded into this type.)

ServiceSpec inlines RouteSpec and restricts/defaults its fields via webhook. In particular, this spec can only reference this Service’s configuration and revisions (which also influences defaults).

status
ServiceStatus
(Optional)

eventing.knative.dev/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

Resource Types:

Broker

Broker collects a pool of events that are consumable using Triggers. Brokers provide a well-known endpoint for event delivery that senders can use with minimal knowledge of the event routing strategy. Receivers use Triggers to request delivery of events from a Broker’s pool to a specific URL or Addressable endpoint.

FieldDescription
apiVersion
string
eventing.knative.dev/v1alpha1
kind
string
Broker
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
BrokerSpec

Spec defines the desired state of the Broker.



channelTemplateSpec
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use to create all the Channels used internally by the Broker. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace). Deprecated: See spec.config to configure aditional broker options. Unless class is for channel based broker implementation.

config
KReference
(Optional)

Config is a KReference to the configuration that specifies configuration options for this Broker. For example, this could be a pointer to a ConfigMap. NOTE: this is for backwards compatibility with v1alpha1 <-> v1beta1 conversions.

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification to be used internally by the broker to create subscriptions.

status
BrokerStatus
(Optional)

Status represents the current state of the Broker. This data may be out of date.

EventType

FieldDescription
apiVersion
string
eventing.knative.dev/v1alpha1
kind
string
EventType
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
EventTypeSpec

Spec defines the desired state of the EventType.



type
string

Type represents the CloudEvents type. It is authoritative.

source
string
(Optional)

Source is a URI, it represents the CloudEvents source.

schema
string
(Optional)

Schema is a URI, it represents the CloudEvents schemaurl extension attribute. It may be a JSON schema, a protobuf schema, etc. It is optional.

broker
string
(Optional)

TODO remove https://github.com/knative/eventing/issues/2750 Broker refers to the Broker that can provide the EventType.

description
string
(Optional)

Description is an optional field used to describe the EventType, in any meaningful way.

status
EventTypeStatus
(Optional)

Status represents the current state of the EventType. This data may be out of date. TODO might be removed https://github.com/knative/eventing/issues/2750

Trigger

Trigger represents a request to have events delivered to a consumer from a Broker’s event pool.

FieldDescription
apiVersion
string
eventing.knative.dev/v1alpha1
kind
string
Trigger
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
TriggerSpec

Spec defines the desired state of the Trigger.



broker
string

Broker is the broker that this trigger receives events from. If not specified, will default to ‘default’.

filter
TriggerFilter
(Optional)

Filter is the filter to apply against all events from the Broker. Only events that pass this filter will be sent to the Subscriber. If not specified, will default to allowing all events.

subscriber
Destination

Subscriber is the addressable that receives events from the Broker that pass the Filter. It is required.

status
TriggerStatus
(Optional)

Status represents the current state of the Trigger. This data may be out of date.

BrokerSpec

(Appears on: Broker)

FieldDescription
channelTemplateSpec
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use to create all the Channels used internally by the Broker. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace). Deprecated: See spec.config to configure aditional broker options. Unless class is for channel based broker implementation.

config
KReference
(Optional)

Config is a KReference to the configuration that specifies configuration options for this Broker. For example, this could be a pointer to a ConfigMap. NOTE: this is for backwards compatibility with v1alpha1 <-> v1beta1 conversions.

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification to be used internally by the broker to create subscriptions.

BrokerStatus

(Appears on: Broker)

BrokerStatus represents the current state of a Broker.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

address
Addressable

Broker is Addressable. It currently exposes the endpoint as a fully-qualified DNS name which will distribute traffic over the provided targets from inside the cluster.

It generally has the form {broker}-router.{namespace}.svc.{cluster domain name}

triggerChannel
Kubernetes core/v1.ObjectReference

TriggerChannel is an objectref to the object for the TriggerChannel

EventTypeSpec

(Appears on: EventType)

FieldDescription
type
string

Type represents the CloudEvents type. It is authoritative.

source
string
(Optional)

Source is a URI, it represents the CloudEvents source.

schema
string
(Optional)

Schema is a URI, it represents the CloudEvents schemaurl extension attribute. It may be a JSON schema, a protobuf schema, etc. It is optional.

broker
string
(Optional)

TODO remove https://github.com/knative/eventing/issues/2750 Broker refers to the Broker that can provide the EventType.

description
string
(Optional)

Description is an optional field used to describe the EventType, in any meaningful way.

EventTypeStatus

(Appears on: EventType)

EventTypeStatus represents the current state of a EventType.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

TriggerFilter

(Appears on: TriggerSpec)

FieldDescription
sourceAndType
TriggerFilterSourceAndType
(Optional)

DeprecatedSourceAndType filters events based on exact matches on the CloudEvents type and source attributes. This field has been replaced by the Attributes field.

attributes
TriggerFilterAttributes
(Optional)

Attributes filters events by exact match on event context attributes. Each key in the map is compared with the equivalent key in the event context. An event passes the filter if all values are equal to the specified values.

Nested context attributes are not supported as keys. Only string values are supported.

TriggerFilterAttributes (map[string]string alias)

(Appears on: TriggerFilter)

TriggerFilterAttributes is a map of context attribute names to values for filtering by equality. Only exact matches will pass the filter. You can use the value “ to indicate all strings match.

TriggerFilterSourceAndType

(Appears on: TriggerFilter)

TriggerFilterSourceAndType filters events based on exact matches on the cloud event’s type and source attributes. Only exact matches will pass the filter. Either or both type and source can use the value “ to indicate all strings match.

FieldDescription
type
string
source
string

TriggerSpec

(Appears on: Trigger)

FieldDescription
broker
string

Broker is the broker that this trigger receives events from. If not specified, will default to ‘default’.

filter
TriggerFilter
(Optional)

Filter is the filter to apply against all events from the Broker. Only events that pass this filter will be sent to the Subscriber. If not specified, will default to allowing all events.

subscriber
Destination

Subscriber is the addressable that receives events from the Broker that pass the Filter. It is required.

TriggerStatus

(Appears on: Trigger)

TriggerStatus represents the current state of a Trigger.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

subscriberURI
knative.dev/pkg/apis.URL

SubscriberURI is the resolved URI of the receiver for this Trigger.


flows.knative.dev/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

Resource Types:

Parallel

Parallel defines conditional branches that will be wired in series through Channels and Subscriptions.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ParallelSpec

Spec defines the desired state of the Parallel.



branches
[]ParallelBranch

Branches is the list of Filter/Subscribers pairs.

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of a case Subscriber gets sent to when the case does not have a Reply

status
ParallelStatus
(Optional)

Status represents the current state of the Parallel. This data may be out of date.

ParallelBranch

(Appears on: ParallelSpec)

FieldDescription
filter
Destination

Filter is the expression guarding the branch

subscriber
Destination

Subscriber receiving the event when the filter passes

reply
Destination
(Optional)

Reply is a Reference to where the result of Subscriber of this case gets sent to. If not specified, sent the result to the Parallel Reply

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification for events to the subscriber This includes things like retries, DLQ, etc. Needed for Roundtripping v1alpha1 <-> v1beta1.

ParallelBranchStatus

(Appears on: ParallelStatus)

ParallelBranchStatus represents the current state of a Parallel branch

FieldDescription
filterSubscriptionStatus
ParallelSubscriptionStatus

FilterSubscriptionStatus corresponds to the filter subscription status.

filterChannelStatus
ParallelChannelStatus

FilterChannelStatus corresponds to the filter channel status.

subscriberSubscriptionStatus
ParallelSubscriptionStatus

SubscriptionStatus corresponds to the subscriber subscription status.

ParallelChannelStatus

(Appears on: ParallelBranchStatus, ParallelStatus)

FieldDescription
channel
Kubernetes core/v1.ObjectReference

Channel is the reference to the underlying channel.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Channel is ready or not.

ParallelSpec

(Appears on: Parallel)

FieldDescription
branches
[]ParallelBranch

Branches is the list of Filter/Subscribers pairs.

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of a case Subscriber gets sent to when the case does not have a Reply

ParallelStatus

(Appears on: Parallel)

ParallelStatus represents the current state of a Parallel.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

ingressChannelStatus
ParallelChannelStatus

IngressChannelStatus corresponds to the ingress channel status.

branchStatuses
[]ParallelBranchStatus

BranchStatuses is an array of corresponding to branch statuses. Matches the Spec.Branches array in the order.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the starting point to this Parallel. Sending to this will target the first subscriber. It generally has the form {channel}.{namespace}.svc.{cluster domain name}

ParallelSubscriptionStatus

(Appears on: ParallelBranchStatus)

FieldDescription
subscription
Kubernetes core/v1.ObjectReference

Subscription is the reference to the underlying Subscription.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Subscription is ready or not.

Sequence

Sequence defines a sequence of Subscribers that will be wired in series through Channels and Subscriptions.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SequenceSpec

Spec defines the desired state of the Sequence.



steps
[]SequenceStep

Steps is the list of Destinations (processors / functions) that will be called in the order provided.

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of the last Subscriber gets sent to.

status
SequenceStatus
(Optional)

Status represents the current state of the Sequence. This data may be out of date.

SequenceChannelStatus

(Appears on: SequenceStatus)

FieldDescription
channel
Kubernetes core/v1.ObjectReference

Channel is the reference to the underlying channel.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Channel is ready or not.

SequenceSpec

(Appears on: Sequence)

FieldDescription
steps
[]SequenceStep

Steps is the list of Destinations (processors / functions) that will be called in the order provided.

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of the last Subscriber gets sent to.

SequenceStatus

(Appears on: Sequence)

SequenceStatus represents the current state of a Sequence.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

subscriptionStatuses
[]SequenceSubscriptionStatus

SubscriptionStatuses is an array of corresponding Subscription statuses. Matches the Spec.Steps array in the order.

channelStatuses
[]SequenceChannelStatus

ChannelStatuses is an array of corresponding Channel statuses. Matches the Spec.Steps array in the order.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the starting point to this Sequence. Sending to this will target the first subscriber. It generally has the form {channel}.{namespace}.svc.{cluster domain name}

SequenceStep

(Appears on: SequenceSpec)

FieldDescription
Destination
Destination

(Members of Destination are embedded into this type.)

Subscriber receiving the step event

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification for events to the subscriber This includes things like retries, DLQ, etc. Needed for Roundtripping v1alpha1 <-> v1beta1.

SequenceSubscriptionStatus

(Appears on: SequenceStatus)

FieldDescription
subscription
Kubernetes core/v1.ObjectReference

Subscription is the reference to the underlying Subscription.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Subscription is ready or not.


messaging.knative.dev/v1beta1

Package v1beta1 is the v1beta1 version of the API.

Resource Types:

Channel

Channel represents a generic Channel. It is normally used when we want a Channel, but don’t need a specific Channel implementation.

FieldDescription
apiVersion
string
messaging.knative.dev/v1beta1
kind
string
Channel
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ChannelSpec

Spec defines the desired state of the Channel.



channelTemplate
ChannelTemplateSpec

ChannelTemplate specifies which Channel CRD to use to create the CRD Channel backing this Channel. This is immutable after creation. Normally this is set by the Channel defaulter, not directly by the user.

ChannelableSpec
ChannelableSpec

(Members of ChannelableSpec are embedded into this type.)

Channel conforms to ChannelableSpec

status
ChannelStatus
(Optional)

Status represents the current state of the Channel. This data may be out of date.

InMemoryChannel

InMemoryChannel is a resource representing an in memory channel

FieldDescription
apiVersion
string
messaging.knative.dev/v1beta1
kind
string
InMemoryChannel
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
InMemoryChannelSpec

Spec defines the desired state of the Channel.



ChannelableSpec
ChannelableSpec

(Members of ChannelableSpec are embedded into this type.)

Channel conforms to Duck type Channelable.

status
InMemoryChannelStatus
(Optional)

Status represents the current state of the Channel. This data may be out of date.

Subscription

Subscription routes events received on a Channel to a DNS name and corresponds to the subscriptions.channels.knative.dev CRD.

FieldDescription
apiVersion
string
messaging.knative.dev/v1beta1
kind
string
Subscription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SubscriptionSpec


channel
Kubernetes core/v1.ObjectReference

Reference to a channel that will be used to create the subscription You can specify only the following fields of the ObjectReference: - Kind - APIVersion - Name The resource pointed by this ObjectReference must meet the contract to the ChannelableSpec duck type. If the resource does not meet this contract it will be reflected in the Subscription’s status.

This field is immutable. We have no good answer on what happens to the events that are currently in the channel being consumed from and what the semantics there should be. For now, you can always delete the Subscription and recreate it to point to a different channel, giving the user more control over what semantics should be used (drain the channel first, possibly have events dropped, etc.)

subscriber
Destination
(Optional)

Subscriber is reference to (optional) function for processing events. Events from the Channel will be delivered here and replies are sent to a Destination as specified by the Reply.

reply
Destination
(Optional)

Reply specifies (optionally) how to handle events returned from the Subscriber target.

delivery
DeliverySpec
(Optional)

Delivery configuration

status
SubscriptionStatus

ChannelDefaulter

ChannelDefaulter sets the default Channel CRD and Arguments on Channels that do not specify any implementation.

ChannelSpec

(Appears on: Channel)

ChannelSpec defines which subscribers have expressed interest in receiving events from this Channel. It also defines the ChannelTemplate to use in order to create the CRD Channel backing this Channel.

FieldDescription
channelTemplate
ChannelTemplateSpec

ChannelTemplate specifies which Channel CRD to use to create the CRD Channel backing this Channel. This is immutable after creation. Normally this is set by the Channel defaulter, not directly by the user.

ChannelableSpec
ChannelableSpec

(Members of ChannelableSpec are embedded into this type.)

Channel conforms to ChannelableSpec

ChannelStatus

(Appears on: Channel)

ChannelStatus represents the current state of a Channel.

FieldDescription
ChannelableStatus
ChannelableStatus

(Members of ChannelableStatus are embedded into this type.)

Channel conforms to ChannelableStatus

channel
KReference

Channel is an KReference to the Channel CRD backing this Channel.

ChannelTemplateSpec

(Appears on: BrokerSpec, ChannelSpec, ChannelSpec, ParallelSpec, ParallelSpec, SequenceSpec, SequenceSpec)

FieldDescription
spec
k8s.io/apimachinery/pkg/runtime.RawExtension
(Optional)

Spec defines the Spec to use for each channel created. Passed in verbatim to the Channel CRD as Spec section.



ChannelTemplateSpecInternal

ChannelTemplateSpecInternal is an internal only version that includes ObjectMeta so that we can easily create new Channels off of it.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
k8s.io/apimachinery/pkg/runtime.RawExtension
(Optional)

Spec defines the Spec to use for each channel created. Passed in verbatim to the Channel CRD as Spec section.



InMemoryChannelSpec

(Appears on: InMemoryChannel)

InMemoryChannelSpec defines which subscribers have expressed interest in receiving events from this InMemoryChannel. arguments for a Channel.

FieldDescription
ChannelableSpec
ChannelableSpec

(Members of ChannelableSpec are embedded into this type.)

Channel conforms to Duck type Channelable.

InMemoryChannelStatus

(Appears on: InMemoryChannel)

ChannelStatus represents the current state of a Channel.

FieldDescription
ChannelableStatus
ChannelableStatus

(Members of ChannelableStatus are embedded into this type.)

Channel conforms to Duck type Channelable.

SubscriptionSpec

(Appears on: Subscription)

SubscriptionSpec specifies the Channel for incoming events, a Subscriber target for processing those events and where to put the result of the processing. Only From (where the events are coming from) is always required. You can optionally only Process the events (results in no output events) by leaving out the Result. You can also perform an identity transformation on the incoming events by leaving out the Subscriber and only specifying Result.

The following are all valid specifications: channel –[subscriber]–> reply Sink, no outgoing events: channel – subscriber no-op function (identity transformation): channel –> reply

FieldDescription
channel
Kubernetes core/v1.ObjectReference

Reference to a channel that will be used to create the subscription You can specify only the following fields of the ObjectReference: - Kind - APIVersion - Name The resource pointed by this ObjectReference must meet the contract to the ChannelableSpec duck type. If the resource does not meet this contract it will be reflected in the Subscription’s status.

This field is immutable. We have no good answer on what happens to the events that are currently in the channel being consumed from and what the semantics there should be. For now, you can always delete the Subscription and recreate it to point to a different channel, giving the user more control over what semantics should be used (drain the channel first, possibly have events dropped, etc.)

subscriber
Destination
(Optional)

Subscriber is reference to (optional) function for processing events. Events from the Channel will be delivered here and replies are sent to a Destination as specified by the Reply.

reply
Destination
(Optional)

Reply specifies (optionally) how to handle events returned from the Subscriber target.

delivery
DeliverySpec
(Optional)

Delivery configuration

SubscriptionStatus

(Appears on: Subscription)

SubscriptionStatus (computed) for a subscription

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

physicalSubscription
SubscriptionStatusPhysicalSubscription

PhysicalSubscription is the fully resolved values that this Subscription represents.

SubscriptionStatusPhysicalSubscription

(Appears on: SubscriptionStatus)

SubscriptionStatusPhysicalSubscription represents the fully resolved values for this Subscription.

FieldDescription
subscriberUri
knative.dev/pkg/apis.URL

SubscriberURI is the fully resolved URI for spec.subscriber.

replyUri
knative.dev/pkg/apis.URL

ReplyURI is the fully resolved URI for the spec.reply.

deadLetterSinkUri
knative.dev/pkg/apis.URL

ReplyURI is the fully resolved URI for the spec.delivery.deadLetterSink.


sources.knative.dev/v1alpha2

Package v1alpha2 contains API Schema definitions for the sources v1beta1 API group

Resource Types:

ApiServerSource

ApiServerSource is the Schema for the apiserversources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha2
kind
string
ApiServerSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ApiServerSourceSpec


SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

resources
[]APIVersionKindSelector

Resource are the resources this source will track and send related lifecycle events from the Kubernetes ApiServer, with an optional label selector to help filter.

owner
APIVersionKind
(Optional)

ResourceOwner is an additional filter to only track resources that are owned by a specific resource type. If ResourceOwner matches Resources[n] then Resources[n] is allowed to pass the ResourceOwner filter.

mode
string
(Optional)

EventMode controls the format of the event. Reference sends a dataref event type for the resource under watch. Resource send the full resource lifecycle event. Defaults to Reference

serviceAccountName
string
(Optional)

ServiceAccountName is the name of the ServiceAccount to use to run this source. Defaults to default if not set.

status
ApiServerSourceStatus

ContainerSource

ContainerSource is the Schema for the containersources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha2
kind
string
ContainerSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ContainerSourceSpec


SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

template
Kubernetes core/v1.PodTemplateSpec

Template describes the pods that will be created

status
ContainerSourceStatus

PingSource

PingSource is the Schema for the PingSources API.

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha2
kind
string
PingSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
PingSourceSpec


SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

schedule
string
(Optional)

Schedule is the cronjob schedule. Defaults to *.

jsonData
string
(Optional)

JsonData is json encoded data used as the body of the event posted to the sink. Default is empty. If set, datacontenttype will also be set to “application/json”.

status
PingSourceStatus

SinkBinding

SinkBinding describes a Binding that is also a Source. The sink (from the Source duck) is resolved to a URL and then projected into the subject by augmenting the runtime contract of the referenced containers to have a K_SINK environment variable holding the endpoint to which to send cloud events.

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha2
kind
string
SinkBinding
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SinkBindingSpec


SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

inherits duck/v1alpha1 BindingSpec, which currently provides: * Subject - Subject references the resource(s) whose “runtime contract” should be augmented by Binding implementations.

status
SinkBindingStatus

APIVersionKind

(Appears on: ApiServerSourceSpec, ApiServerSourceSpec)

APIVersionKind is an APIVersion and Kind tuple.

FieldDescription
apiVersion
string

APIVersion - the API version of the resource to watch.

kind
string

Kind of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

APIVersionKindSelector

(Appears on: ApiServerSourceSpec)

APIVersionKindSelector is an APIVersion Kind tuple with a LabelSelector.

FieldDescription
apiVersion
string

APIVersion - the API version of the resource to watch.

kind
string

Kind of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

selector
Kubernetes meta/v1.LabelSelector
(Optional)

LabelSelector filters this source to objects to those resources pass the label selector. More info: http://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors

ApiServerSourceSpec

(Appears on: ApiServerSource)

ApiServerSourceSpec defines the desired state of ApiServerSource

FieldDescription
SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

resources
[]APIVersionKindSelector

Resource are the resources this source will track and send related lifecycle events from the Kubernetes ApiServer, with an optional label selector to help filter.

owner
APIVersionKind
(Optional)

ResourceOwner is an additional filter to only track resources that are owned by a specific resource type. If ResourceOwner matches Resources[n] then Resources[n] is allowed to pass the ResourceOwner filter.

mode
string
(Optional)

EventMode controls the format of the event. Reference sends a dataref event type for the resource under watch. Resource send the full resource lifecycle event. Defaults to Reference

serviceAccountName
string
(Optional)

ServiceAccountName is the name of the ServiceAccount to use to run this source. Defaults to default if not set.

ApiServerSourceStatus

(Appears on: ApiServerSource)

ApiServerSourceStatus defines the observed state of ApiServerSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

ContainerSourceSpec

(Appears on: ContainerSource)

ContainerSourceSpec defines the desired state of ContainerSource

FieldDescription
SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

template
Kubernetes core/v1.PodTemplateSpec

Template describes the pods that will be created

ContainerSourceStatus

(Appears on: ContainerSource)

ContainerSourceStatus defines the observed state of ContainerSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

PingSourceSpec

(Appears on: PingSource)

PingSourceSpec defines the desired state of the PingSource.

FieldDescription
SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

schedule
string
(Optional)

Schedule is the cronjob schedule. Defaults to *.

jsonData
string
(Optional)

JsonData is json encoded data used as the body of the event posted to the sink. Default is empty. If set, datacontenttype will also be set to “application/json”.

PingSourceStatus

(Appears on: PingSource)

PingSourceStatus defines the observed state of PingSource.

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

SinkBindingSpec

(Appears on: SinkBinding)

SinkBindingSpec holds the desired state of the SinkBinding (from the client).

FieldDescription
SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

inherits duck/v1 SourceSpec, which currently provides: Sink - a reference to an object that will resolve to a domain name or a URI directly to use as the sink. CloudEventOverrides - defines overrides to control the output format and modifications of the event sent to the sink.

BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

inherits duck/v1alpha1 BindingSpec, which currently provides: * Subject - Subject references the resource(s) whose “runtime contract” should be augmented by Binding implementations.

SinkBindingStatus

(Appears on: SinkBinding)

SinkBindingStatus communicates the observed state of the SinkBinding (from the controller).

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.


configs.internal.knative.dev/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

Resource Types:

ConfigMapPropagation

ConfigMapPropagation is used to propagate configMaps from original namespace to current namespace

FieldDescription
apiVersion
string
configs.internal.knative.dev/v1alpha1
kind
string
ConfigMapPropagation
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ConfigMapPropagationSpec

Spec defines the desired state of the ConfigMapPropagation



originalNamespace
string

OriginalNamespace is the namespace where the original configMaps are in

selector
Kubernetes meta/v1.LabelSelector
(Optional)

Selector only selects original configMaps with corresponding labels

status
ConfigMapPropagationStatus
(Optional)

Status represents the current state of the EventType. This data may be out of date.

ConfigMapPropagationSpec

(Appears on: ConfigMapPropagation)

FieldDescription
originalNamespace
string

OriginalNamespace is the namespace where the original configMaps are in

selector
Kubernetes meta/v1.LabelSelector
(Optional)

Selector only selects original configMaps with corresponding labels

ConfigMapPropagationStatus

(Appears on: ConfigMapPropagation)

ConfigMapPropagationStatus represents the current state of a ConfigMapPropagation.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

copyConfigmaps
[]ConfigMapPropagationStatusCopyConfigMap
(Optional)

CopyConfigMaps is the status for each copied configmap.

ConfigMapPropagationStatusCopyConfigMap

(Appears on: ConfigMapPropagationStatus)

ConfigMapPropagationStatusCopyConfigMap represents the status of a copied configmap

FieldDescription
name
string

Name is copy configmap’s name

source
string

Source is “originalNamespace/originalConfigMapName”

operation
string

Operation represents the operation CMP takes for this configmap. The operations are copy|delete|stop

ready
string

Ready represents the operation is ready or not

reason
string

Reason indicates reasons if the operation is not ready

resourceVersionFromSource
string

ResourceVersion is the resourceVersion of original configmap


duck.knative.dev/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

Resource Types:

AddressStatus

(Appears on: AddressableType, ChannelStatus, ChannelableCombinedStatus, ChannelableStatus, InMemoryChannelStatus, KafkaChannelStatus, NatssChannelStatus)

AddressStatus shows how we expect folks to embed Addressable in their Status field.

FieldDescription
address
Addressable

Addressable

(Appears on: AddressStatus, BrokerStatus, RouteStatusFields)

Addressable provides a generic mechanism for a custom resource definition to indicate a destination for message delivery.

Addressable is the schema for the destination information. This is typically stored in the object’s status, as this information may be generated by the controller.

FieldDescription
Addressable
Addressable
hostname
string

AddressableType

AddressableType is a skeleton type wrapping Addressable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Addressable ObjectReferences and access the Addressable data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
AddressStatus

Binding

Binding is a duck type that specifies the partial schema to which all Binding implementations should adhere.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
BindingSpec


subject
knative.dev/pkg/tracker.Reference

Subject references the resource(s) whose “runtime contract” should be augmented by Binding implementations.

BindingSpec

(Appears on: Binding, GitHubBindingSpec, GitLabBindingSpec, KafkaBindingSpec, SinkBindingSpec, SinkBindingSpec)

BindingSpec specifies the spec portion of the Binding partial-schema.

FieldDescription
subject
knative.dev/pkg/tracker.Reference

Subject references the resource(s) whose “runtime contract” should be augmented by Binding implementations.

Channelable

Channelable is a skeleton type wrapping Subscribable and Addressable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Channelable ObjectReferences and access their subscription and address data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ChannelableSpec

Spec is the part where the Channelable fulfills the Subscribable contract.



SubscribableTypeSpec
SubscribableTypeSpec

(Members of SubscribableTypeSpec are embedded into this type.)

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

status
ChannelableStatus

ChannelableCombined

ChannelableCombined is a skeleton type wrapping Subscribable and Addressable of both v1alpha1 and v1beta1 duck types. This is not to be used by resource writers and is only used by Subscription Controller to synthesize patches and read the Status of the Channelable Resources. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ChannelableCombinedSpec

Spec is the part where the Channelable fulfills the Subscribable contract.



SubscribableTypeSpec
SubscribableTypeSpec

(Members of SubscribableTypeSpec are embedded into this type.)

SubscribableTypeSpec is for the v1alpha1 spec compatibility.

SubscribableSpec
SubscribableSpec

(Members of SubscribableSpec are embedded into this type.)

SubscribableSpec is for the v1beta1 spec compatibility.

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

status
ChannelableCombinedStatus

ChannelableCombinedSpec

(Appears on: ChannelableCombined)

ChannelableSpec contains Spec of the Channelable object

FieldDescription
SubscribableTypeSpec
SubscribableTypeSpec

(Members of SubscribableTypeSpec are embedded into this type.)

SubscribableTypeSpec is for the v1alpha1 spec compatibility.

SubscribableSpec
SubscribableSpec

(Members of SubscribableSpec are embedded into this type.)

SubscribableSpec is for the v1beta1 spec compatibility.

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

ChannelableCombinedStatus

(Appears on: ChannelableCombined)

ChannelableStatus contains the Status of a Channelable object.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the part where the Channelable fulfills the Addressable contract.

SubscribableTypeStatus
SubscribableTypeStatus

(Members of SubscribableTypeStatus are embedded into this type.)

SubscribableTypeStatus is the v1alpha1 part of the Subscribers status

SubscribableStatus
SubscribableStatus

(Members of SubscribableStatus are embedded into this type.)

SubscribableStatus is the v1beta1 part of the Subscribers status.

errorChannel
Kubernetes core/v1.ObjectReference
(Optional)

ErrorChannel is set by the channel when it supports native error handling via a channel

ChannelableSpec

(Appears on: Channelable)

ChannelableSpec contains Spec of the Channelable object

FieldDescription
SubscribableTypeSpec
SubscribableTypeSpec

(Members of SubscribableTypeSpec are embedded into this type.)

delivery
DeliverySpec
(Optional)

DeliverySpec contains options controlling the event delivery

ChannelableStatus

(Appears on: Channelable)

ChannelableStatus contains the Status of a Channelable object.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the part where the Channelable fulfills the Addressable contract.

SubscribableTypeStatus
SubscribableTypeStatus

(Members of SubscribableTypeStatus are embedded into this type.)

Subscribers is populated with the statuses of each of the Channelable’s subscribers.

errorChannel
Kubernetes core/v1.ObjectReference
(Optional)

ErrorChannel is set by the channel when it supports native error handling via a channel

LegacyTarget

LegacyTarget is a skeleton type wrapping LegacyTargetable in the manner we want to support unless they get migrated into supporting Legacy. We will typically use this type to deserialize LegacyTargetable ObjectReferences and access the LegacyTargetable data. This is not a real resource. ** Do not use this for any new resources **

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
LegacyTargetable

LegacyTargetable

(Appears on: LegacyTarget)

LegacyTargetable left around until we migrate to Addressable in the dependent resources. Addressable has more structure in the way it defines the fields. LegacyTargetable only assumed a single string in the Status field and we’re moving towards defining proper structs under Status rather than strings. This is to support existing resources until they migrate.

Do not use this for anything new, use Addressable

LegacyTargetable is the old schema for the addressable portion of the payload

For new resources use Addressable.

FieldDescription
domainInternal
string

Resource

Resource is a skeleton type wrapping all Kubernetes resources. It is typically used to watch arbitrary other resources (such as any Source or Addressable). This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.

Subscribable

(Appears on: ChannelSpec, InMemoryChannelSpec, KafkaChannelSpec, NatssChannelSpec, SubscribableTypeSpec)

Subscribable is the schema for the subscribable portion of the spec section of the resource.

FieldDescription
subscribers
[]SubscriberSpec

This is the list of subscriptions for this subscribable.

SubscribableStatus

(Appears on: SubscribableTypeStatus)

SubscribableStatus is the schema for the subscribable’s status portion of the status section of the resource.

FieldDescription
subscribers
[]SubscriberStatus

This is the list of subscription’s statuses for this channel.

SubscribableType

SubscribableType is a skeleton type wrapping Subscribable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize SubscribableType ObjectReferences and access the Subscription data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SubscribableTypeSpec

SubscribableTypeSpec is the part where Subscribable object is configured as to be compatible with Subscribable contract.



subscribable
Subscribable
status
SubscribableTypeStatus

SubscribableTypeStatus is the part where SubscribableStatus object is configured as to be compatible with Subscribable contract.

SubscribableTypeSpec

(Appears on: ChannelableCombinedSpec, ChannelableSpec, SubscribableType)

SubscribableTypeSpec shows how we expect folks to embed Subscribable in their Spec field.

FieldDescription
subscribable
Subscribable

SubscribableTypeStatus

(Appears on: ChannelStatus, ChannelableCombinedStatus, ChannelableStatus, InMemoryChannelStatus, KafkaChannelStatus, NatssChannelStatus, SubscribableType)

SubscribableTypeStatus shows how we expect folks to embed Subscribable in their Status field.

FieldDescription
subscribableStatus
SubscribableStatus

SubscriberSpec

(Appears on: Subscribable)

SubscriberSpec defines a single subscriber to a Subscribable. Ref is a reference to the Subscription this SubscriberSpec was created for SubscriberURI is the endpoint for the subscriber ReplyURI is the endpoint for the reply At least one of SubscriberURI and ReplyURI must be present

FieldDescription
uid
k8s.io/apimachinery/pkg/types.UID
(Optional)

UID is used to understand the origin of the subscriber.

generation
int64
(Optional)

Generation of the origin of the subscriber with uid:UID.

subscriberURI
knative.dev/pkg/apis.URL
(Optional)
replyURI
knative.dev/pkg/apis.URL
(Optional)
deadLetterSink
knative.dev/pkg/apis.URL
(Optional)
delivery
DeliverySpec
(Optional)

Target

Target is a skeleton type wrapping Targetable in the manner we expect resource writers defining compatible resources to embed it. We will typically use this type to deserialize Targetable ObjectReferences and access the Targetable data. This is not a real resource.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
TargetStatus

TargetStatus

(Appears on: Target)

TargetStatus shows how we expect folks to embed Targetable in their Status field.

FieldDescription
targetable
Targetable

Targetable

(Appears on: TargetStatus)

Targetable is an earlier version of the Callable interface. Callable is a higher-level interface which implements Addressable but further promises that the destination may synchronously return response messages in reply to a message.

Targetable implementations should instead implement Addressable and include an eventing.knative.dev/returns=any annotation.

Targetable is retired; implement Addressable for now.

FieldDescription
domainInternal
string

eventing.knative.dev/v1beta1

Package v1beta1 is the v1beta1 version of the API.

Resource Types:

Broker

Broker collects a pool of events that are consumable using Triggers. Brokers provide a well-known endpoint for event delivery that senders can use with minimal knowledge of the event routing strategy. Receivers use Triggers to request delivery of events from a Broker’s pool to a specific URL or Addressable endpoint.

FieldDescription
apiVersion
string
eventing.knative.dev/v1beta1
kind
string
Broker
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
BrokerSpec

Spec defines the desired state of the Broker.



config
KReference
(Optional)

Config is a KReference to the configuration that specifies configuration options for this Broker. For example, this could be a pointer to a ConfigMap.

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification for Events within the Broker mesh. This includes things like retries, DLQ, etc.

status
BrokerStatus
(Optional)

Status represents the current state of the Broker. This data may be out of date.

EventType

FieldDescription
apiVersion
string
eventing.knative.dev/v1beta1
kind
string
EventType
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
EventTypeSpec

Spec defines the desired state of the EventType.



type
string

Type represents the CloudEvents type. It is authoritative.

source
knative.dev/pkg/apis.URL
(Optional)

Source is a URI, it represents the CloudEvents source.

schema
knative.dev/pkg/apis.URL
(Optional)

Schema is a URI, it represents the CloudEvents schemaurl extension attribute. It may be a JSON schema, a protobuf schema, etc. It is optional.

schemaData
string
(Optional)

SchemaData allows the CloudEvents schema to be stored directly in the EventType. Content is dependent on the encoding. Optional attribute. The contents are not validated or manipulated by the system.

broker
string
(Optional)

TODO remove https://github.com/knative/eventing/issues/2750 Broker refers to the Broker that can provide the EventType.

description
string
(Optional)

Description is an optional field used to describe the EventType, in any meaningful way.

status
EventTypeStatus
(Optional)

Status represents the current state of the EventType. This data may be out of date. TODO might be removed https://github.com/knative/eventing/issues/2750

Trigger

Trigger represents a request to have events delivered to a consumer from a Broker’s event pool.

FieldDescription
apiVersion
string
eventing.knative.dev/v1beta1
kind
string
Trigger
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
TriggerSpec

Spec defines the desired state of the Trigger.



broker
string

Broker is the broker that this trigger receives events from. If not specified, will default to ‘default’.

filter
TriggerFilter
(Optional)

Filter is the filter to apply against all events from the Broker. Only events that pass this filter will be sent to the Subscriber. If not specified, will default to allowing all events.

subscriber
Destination

Subscriber is the addressable that receives events from the Broker that pass the Filter. It is required.

status
TriggerStatus
(Optional)

Status represents the current state of the Trigger. This data may be out of date.

BrokerSpec

(Appears on: Broker)

FieldDescription
config
KReference
(Optional)

Config is a KReference to the configuration that specifies configuration options for this Broker. For example, this could be a pointer to a ConfigMap.

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification for Events within the Broker mesh. This includes things like retries, DLQ, etc.

BrokerStatus

(Appears on: Broker)

BrokerStatus represents the current state of a Broker.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

address
Addressable

Broker is Addressable. It exposes the endpoint as an URI to get events delivered into the Broker mesh.

EventTypeSpec

(Appears on: EventType)

FieldDescription
type
string

Type represents the CloudEvents type. It is authoritative.

source
knative.dev/pkg/apis.URL
(Optional)

Source is a URI, it represents the CloudEvents source.

schema
knative.dev/pkg/apis.URL
(Optional)

Schema is a URI, it represents the CloudEvents schemaurl extension attribute. It may be a JSON schema, a protobuf schema, etc. It is optional.

schemaData
string
(Optional)

SchemaData allows the CloudEvents schema to be stored directly in the EventType. Content is dependent on the encoding. Optional attribute. The contents are not validated or manipulated by the system.

broker
string
(Optional)

TODO remove https://github.com/knative/eventing/issues/2750 Broker refers to the Broker that can provide the EventType.

description
string
(Optional)

Description is an optional field used to describe the EventType, in any meaningful way.

EventTypeStatus

(Appears on: EventType)

EventTypeStatus represents the current state of a EventType.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

TriggerFilter

(Appears on: TriggerSpec)

FieldDescription
attributes
TriggerFilterAttributes
(Optional)

Attributes filters events by exact match on event context attributes. Each key in the map is compared with the equivalent key in the event context. An event passes the filter if all values are equal to the specified values.

Nested context attributes are not supported as keys. Only string values are supported.

TriggerFilterAttributes (map[string]string alias)

(Appears on: TriggerFilter)

TriggerFilterAttributes is a map of context attribute names to values for filtering by equality. Only exact matches will pass the filter. You can use the value “ to indicate all strings match.

TriggerSpec

(Appears on: Trigger)

FieldDescription
broker
string

Broker is the broker that this trigger receives events from. If not specified, will default to ‘default’.

filter
TriggerFilter
(Optional)

Filter is the filter to apply against all events from the Broker. Only events that pass this filter will be sent to the Subscriber. If not specified, will default to allowing all events.

subscriber
Destination

Subscriber is the addressable that receives events from the Broker that pass the Filter. It is required.

TriggerStatus

(Appears on: Trigger)

TriggerStatus represents the current state of a Trigger.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

subscriberUri
knative.dev/pkg/apis.URL

SubscriberURI is the resolved URI of the receiver for this Trigger.


flows.knative.dev/v1beta1

Package v1beta1 is the v1beta1 version of the API.

Resource Types:

Parallel

Parallel defines conditional branches that will be wired in series through Channels and Subscriptions.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ParallelSpec

Spec defines the desired state of the Parallel.



branches
[]ParallelBranch

Branches is the list of Filter/Subscribers pairs.

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of a case Subscriber gets sent to when the case does not have a Reply

status
ParallelStatus
(Optional)

Status represents the current state of the Parallel. This data may be out of date.

ParallelBranch

(Appears on: ParallelSpec)

FieldDescription
filter
Destination
(Optional)

Filter is the expression guarding the branch

subscriber
Destination

Subscriber receiving the event when the filter passes

reply
Destination
(Optional)

Reply is a Reference to where the result of Subscriber of this case gets sent to. If not specified, sent the result to the Parallel Reply

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification for events to the subscriber This includes things like retries, DLQ, etc. Needed for Roundtripping v1alpha1 <-> v1beta1.

ParallelBranchStatus

(Appears on: ParallelStatus)

ParallelBranchStatus represents the current state of a Parallel branch

FieldDescription
filterSubscriptionStatus
ParallelSubscriptionStatus

FilterSubscriptionStatus corresponds to the filter subscription status.

filterChannelStatus
ParallelChannelStatus

FilterChannelStatus corresponds to the filter channel status.

subscriberSubscriptionStatus
ParallelSubscriptionStatus

SubscriptionStatus corresponds to the subscriber subscription status.

ParallelChannelStatus

(Appears on: ParallelBranchStatus, ParallelStatus)

FieldDescription
channel
Kubernetes core/v1.ObjectReference

Channel is the reference to the underlying channel.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Channel is ready or not.

ParallelSpec

(Appears on: Parallel)

FieldDescription
branches
[]ParallelBranch

Branches is the list of Filter/Subscribers pairs.

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of a case Subscriber gets sent to when the case does not have a Reply

ParallelStatus

(Appears on: Parallel)

ParallelStatus represents the current state of a Parallel.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

ingressChannelStatus
ParallelChannelStatus

IngressChannelStatus corresponds to the ingress channel status.

branchStatuses
[]ParallelBranchStatus

BranchStatuses is an array of corresponding to branch statuses. Matches the Spec.Branches array in the order.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the starting point to this Parallel. Sending to this will target the first subscriber. It generally has the form {channel}.{namespace}.svc.{cluster domain name}

ParallelSubscriptionStatus

(Appears on: ParallelBranchStatus)

FieldDescription
subscription
Kubernetes core/v1.ObjectReference

Subscription is the reference to the underlying Subscription.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Subscription is ready or not.

Sequence

Sequence defines a sequence of Subscribers that will be wired in series through Channels and Subscriptions.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SequenceSpec

Spec defines the desired state of the Sequence.



steps
[]SequenceStep

Steps is the list of Destinations (processors / functions) that will be called in the order provided. Each step has its own delivery options

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of the last Subscriber gets sent to.

status
SequenceStatus
(Optional)

Status represents the current state of the Sequence. This data may be out of date.

SequenceChannelStatus

(Appears on: SequenceStatus)

FieldDescription
channel
Kubernetes core/v1.ObjectReference

Channel is the reference to the underlying channel.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Channel is ready or not.

SequenceSpec

(Appears on: Sequence)

FieldDescription
steps
[]SequenceStep

Steps is the list of Destinations (processors / functions) that will be called in the order provided. Each step has its own delivery options

channelTemplate
ChannelTemplateSpec
(Optional)

ChannelTemplate specifies which Channel CRD to use. If left unspecified, it is set to the default Channel CRD for the namespace (or cluster, in case there are no defaults for the namespace).

reply
Destination
(Optional)

Reply is a Reference to where the result of the last Subscriber gets sent to.

SequenceStatus

(Appears on: Sequence)

SequenceStatus represents the current state of a Sequence.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

subscriptionStatuses
[]SequenceSubscriptionStatus

SubscriptionStatuses is an array of corresponding Subscription statuses. Matches the Spec.Steps array in the order.

channelStatuses
[]SequenceChannelStatus

ChannelStatuses is an array of corresponding Channel statuses. Matches the Spec.Steps array in the order.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

AddressStatus is the starting point to this Sequence. Sending to this will target the first subscriber. It generally has the form {channel}.{namespace}.svc.{cluster domain name}

SequenceStep

(Appears on: SequenceSpec)

FieldDescription
Destination
Destination

(Members of Destination are embedded into this type.)

Subscriber receiving the step event

delivery
DeliverySpec
(Optional)

Delivery is the delivery specification for events to the subscriber This includes things like retries, DLQ, etc.

SequenceSubscriptionStatus

(Appears on: SequenceStatus)

FieldDescription
subscription
Kubernetes core/v1.ObjectReference

Subscription is the reference to the underlying Subscription.

ready
knative.dev/pkg/apis.Condition

ReadyCondition indicates whether the Subscription is ready or not.


camel.apache.org/v1

Package v1 contains API Schema definitions for the camel v1 API group

Resource Types:

Artifact

(Appears on: BuildStatus, IntegrationKitStatus)

Artifact –

FieldDescription
id
string
location
string
target
string
checksum
string

BaseTask

(Appears on: BuilderTask, ContainerTask)

BaseTask –

FieldDescription
name
string
affinity
Kubernetes core/v1.Affinity
volumes
[]Kubernetes core/v1.Volume
volumeMounts
[]Kubernetes core/v1.VolumeMount

Build

Build is the Schema for the builds API

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
BuildSpec


tasks
[]Task

INSERT ADDITIONAL SPEC FIELDS - desired state of cluster Important: Run “operator-sdk generate k8s” to regenerate code after modifying this file

status
BuildStatus

BuildCondition

(Appears on: BuildStatus)

BuildCondition describes the state of a resource at a certain point.

FieldDescription
type
BuildConditionType

Type of integration condition.

status
Kubernetes core/v1.ConditionStatus

Status of the condition, one of True, False, Unknown.

lastUpdateTime
Kubernetes meta/v1.Time

The last time this condition was updated.

lastTransitionTime
Kubernetes meta/v1.Time

Last time the condition transitioned from one status to another.

reason
string

The reason for the condition’s last transition.

message
string

A human readable message indicating details about the transition.

BuildConditionType (string alias)

(Appears on: BuildCondition)

BuildConditionType –

BuildPhase (string alias)

(Appears on: BuildStatus)

BuildPhase –

BuildSpec

(Appears on: Build)

BuildSpec defines the desired state of Build

FieldDescription
tasks
[]Task

INSERT ADDITIONAL SPEC FIELDS - desired state of cluster Important: Run “operator-sdk generate k8s” to regenerate code after modifying this file

BuildStatus

(Appears on: Build)

BuildStatus defines the observed state of Build

FieldDescription
phase
BuildPhase
image
string
digest
string
baseImage
string
artifacts
[]Artifact
error
string
failure
Failure
startedAt
Kubernetes meta/v1.Time
platform
string
conditions
[]BuildCondition
duration
string

Change to Duration / ISO 8601 when CRD uses OpenAPI spec v3 https://github.com/OAI/OpenAPI-Specification/issues/845

BuilderTask

(Appears on: Task)

BuilderTask –

FieldDescription
BaseTask
BaseTask

(Members of BaseTask are embedded into this type.)

meta
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
image
string
baseImage
string
runtime
RuntimeSpec
sources
[]SourceSpec
resources
[]ResourceSpec
dependencies
[]string
steps
[]string
maven
MavenSpec
buildDir
string
properties
map[string]string
timeout
Kubernetes meta/v1.Duration

CamelArtifact

(Appears on: CamelArtifact, CamelCatalogSpec)

CamelArtifact –

FieldDescription
CamelArtifactDependency
CamelArtifactDependency

(Members of CamelArtifactDependency are embedded into this type.)

schemes
[]CamelScheme
languages
[]string
dataformats
[]string
dependencies
[]CamelArtifact
javaTypes
[]string

CamelArtifactDependency

(Appears on: CamelArtifact)

CamelArtifactDependency represent a maven’s dependency

FieldDescription
MavenArtifact
MavenArtifact

(Members of MavenArtifact are embedded into this type.)

exclusions
[]CamelArtifactExclusion

CamelArtifactExclusion

(Appears on: CamelArtifactDependency)

CamelArtifactExclusion –

FieldDescription
groupId
string
artifactId
string

CamelCatalog

CamelCatalog is the Schema for the camelcatalogs API

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
status
CamelCatalogStatus
spec
CamelCatalogSpec


runtime
RuntimeSpec
artifacts
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.CamelArtifact
loaders
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.CamelLoader

CamelCatalogSpec

(Appears on: CamelCatalog)

CamelCatalogSpec defines the desired state of CamelCatalog

FieldDescription
runtime
RuntimeSpec
artifacts
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.CamelArtifact
loaders
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.CamelLoader

CamelCatalogStatus

(Appears on: CamelCatalog)

CamelCatalogStatus defines the observed state of CamelCatalog

CamelLoader

(Appears on: CamelCatalogSpec)

CamelLoader –

FieldDescription
MavenArtifact
MavenArtifact

(Members of MavenArtifact are embedded into this type.)

languages
[]string
dependencies
[]MavenArtifact

CamelScheme

(Appears on: CamelArtifact)

CamelScheme –

FieldDescription
id
string
passive
bool
http
bool

Capability

(Appears on: RuntimeSpec)

Capability –

FieldDescription
dependencies
[]MavenArtifact
metadata
map[string]string

Configurable

Configurable –

ConfigurationSpec

(Appears on: IntegrationKitSpec, IntegrationPlatformSpec, IntegrationSpec, IntegrationStatus)

ConfigurationSpec –

FieldDescription
type
string
value
string

ContainerTask

(Appears on: ImageTask)

ContainerTask –

FieldDescription
BaseTask
BaseTask

(Members of BaseTask are embedded into this type.)

image
string
command
[]string
args
[]string
env
[]Kubernetes core/v1.EnvVar
workingDir
string
securityContext
Kubernetes core/v1.SecurityContext

DataSpec

(Appears on: ResourceSpec, SourceSpec)

DataSpec –

FieldDescription
name
string
content
string
contentRef
string
contentKey
string
compression
bool

Failure

(Appears on: BuildStatus, IntegrationKitStatus, IntegrationStatus)

Failure –

FieldDescription
reason
string
time
Kubernetes meta/v1.Time
recovery
FailureRecovery

FailureRecovery

(Appears on: Failure)

FailureRecovery –

FieldDescription
attempt
int
attemptMax
int
attemptTime
Kubernetes meta/v1.Time

ImageTask

(Appears on: Task)

ImageTask –

FieldDescription
ContainerTask
ContainerTask

(Members of ContainerTask are embedded into this type.)

builtImage
string

Integration

Integration is the Schema for the integrations API

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
IntegrationSpec


replicas
int32
sources
[]SourceSpec
resources
[]ResourceSpec
kit
string
dependencies
[]string
profile
TraitProfile
traits
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.TraitSpec
configuration
[]ConfigurationSpec
repositories
[]string
serviceAccountName
string
status
IntegrationStatus

IntegrationCondition

(Appears on: IntegrationStatus)

IntegrationCondition describes the state of a resource at a certain point.

FieldDescription
type
IntegrationConditionType

Type of integration condition.

status
Kubernetes core/v1.ConditionStatus

Status of the condition, one of True, False, Unknown.

lastUpdateTime
Kubernetes meta/v1.Time

The last time this condition was updated.

lastTransitionTime
Kubernetes meta/v1.Time

Last time the condition transitioned from one status to another.

reason
string

The reason for the condition’s last transition.

message
string

A human readable message indicating details about the transition.

IntegrationConditionType (string alias)

(Appears on: IntegrationCondition)

IntegrationConditionType –

IntegrationKit

IntegrationKit is the Schema for the integrationkits API

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
IntegrationKitSpec


image
string
dependencies
[]string
profile
TraitProfile
traits
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.TraitSpec
configuration
[]ConfigurationSpec
repositories
[]string
status
IntegrationKitStatus

IntegrationKitCondition

(Appears on: IntegrationKitStatus)

IntegrationKitCondition describes the state of a resource at a certain point.

FieldDescription
type
IntegrationKitConditionType

Type of integration condition.

status
Kubernetes core/v1.ConditionStatus

Status of the condition, one of True, False, Unknown.

lastUpdateTime
Kubernetes meta/v1.Time

The last time this condition was updated.

lastTransitionTime
Kubernetes meta/v1.Time

Last time the condition transitioned from one status to another.

reason
string

The reason for the condition’s last transition.

message
string

A human readable message indicating details about the transition.

IntegrationKitConditionType (string alias)

(Appears on: IntegrationKitCondition)

IntegrationKitConditionType –

IntegrationKitPhase (string alias)

(Appears on: IntegrationKitStatus)

IntegrationKitPhase –

IntegrationKitSpec

(Appears on: IntegrationKit)

IntegrationKitSpec defines the desired state of IntegrationKit

FieldDescription
image
string
dependencies
[]string
profile
TraitProfile
traits
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.TraitSpec
configuration
[]ConfigurationSpec
repositories
[]string

IntegrationKitStatus

(Appears on: IntegrationKit)

IntegrationKitStatus defines the observed state of IntegrationKit

FieldDescription
phase
IntegrationKitPhase
baseImage
string
image
string
digest
string
artifacts
[]Artifact
failure
Failure
runtimeVersion
string
runtimeProvider
RuntimeProvider
platform
string
conditions
[]IntegrationKitCondition
version
string

IntegrationPhase (string alias)

(Appears on: IntegrationStatus)

IntegrationPhase –

IntegrationPlatform

IntegrationPlatform is the Schema for the integrationplatforms API

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
IntegrationPlatformSpec


cluster
IntegrationPlatformCluster
profile
TraitProfile
build
IntegrationPlatformBuildSpec
resources
IntegrationPlatformResourcesSpec
traits
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.TraitSpec
configuration
[]ConfigurationSpec
status
IntegrationPlatformStatus

IntegrationPlatformBuildPublishStrategy (string alias)

(Appears on: IntegrationPlatformBuildSpec)

IntegrationPlatformBuildPublishStrategy enumerates all implemented publish strategies

IntegrationPlatformBuildSpec

(Appears on: IntegrationPlatformSpec)

IntegrationPlatformBuildSpec contains platform related build information

FieldDescription
buildStrategy
IntegrationPlatformBuildStrategy
publishStrategy
IntegrationPlatformBuildPublishStrategy
runtimeVersion
string
runtimeProvider
RuntimeProvider
baseImage
string
properties
map[string]string
registry
IntegrationPlatformRegistrySpec
timeout
Kubernetes meta/v1.Duration
persistentVolumeClaim
string
maven
MavenSpec
httpProxySecret
string
kanikoBuildCache
bool

IntegrationPlatformBuildStrategy (string alias)

(Appears on: IntegrationPlatformBuildSpec)

IntegrationPlatformBuildStrategy enumerates all implemented build strategies

IntegrationPlatformCluster (string alias)

(Appears on: IntegrationPlatformSpec)

IntegrationPlatformCluster is the kind of orchestration cluster the platform is installed into

IntegrationPlatformCondition

(Appears on: IntegrationPlatformStatus)

IntegrationPlatformCondition describes the state of a resource at a certain point.

FieldDescription
type
IntegrationPlatformConditionType

Type of integration condition.

status
Kubernetes core/v1.ConditionStatus

Status of the condition, one of True, False, Unknown.

lastUpdateTime
Kubernetes meta/v1.Time

The last time this condition was updated.

lastTransitionTime
Kubernetes meta/v1.Time

Last time the condition transitioned from one status to another.

reason
string

The reason for the condition’s last transition.

message
string

A human readable message indicating details about the transition.

IntegrationPlatformConditionType (string alias)

(Appears on: IntegrationPlatformCondition)

IntegrationPlatformConditionType –

IntegrationPlatformPhase (string alias)

(Appears on: IntegrationPlatformStatus)

IntegrationPlatformPhase –

IntegrationPlatformRegistrySpec

(Appears on: IntegrationPlatformBuildSpec)

IntegrationPlatformRegistrySpec –

FieldDescription
insecure
bool
address
string
secret
string
ca
string
organization
string

IntegrationPlatformResourcesSpec

(Appears on: IntegrationPlatformSpec)

IntegrationPlatformResourcesSpec contains platform related resources

FieldDescription
kits
[]string

IntegrationPlatformSpec

(Appears on: IntegrationPlatform, IntegrationPlatformStatus)

IntegrationPlatformSpec defines the desired state of IntegrationPlatform

FieldDescription
cluster
IntegrationPlatformCluster
profile
TraitProfile
build
IntegrationPlatformBuildSpec
resources
IntegrationPlatformResourcesSpec
traits
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.TraitSpec
configuration
[]ConfigurationSpec

IntegrationPlatformStatus

(Appears on: IntegrationPlatform)

IntegrationPlatformStatus defines the observed state of IntegrationPlatform

FieldDescription
IntegrationPlatformSpec
IntegrationPlatformSpec

(Members of IntegrationPlatformSpec are embedded into this type.)

phase
IntegrationPlatformPhase
conditions
[]IntegrationPlatformCondition
version
string

IntegrationSpec

(Appears on: CamelSourceOriginSpec, Integration)

IntegrationSpec defines the desired state of Integration

FieldDescription
replicas
int32
sources
[]SourceSpec
resources
[]ResourceSpec
kit
string
dependencies
[]string
profile
TraitProfile
traits
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.TraitSpec
configuration
[]ConfigurationSpec
repositories
[]string
serviceAccountName
string

IntegrationStatus

(Appears on: Integration)

IntegrationStatus defines the observed state of Integration

FieldDescription
phase
IntegrationPhase
digest
string
image
string
dependencies
[]string
profile
TraitProfile
kit
string
platform
string
generatedSources
[]SourceSpec
generatedResources
[]ResourceSpec
failure
Failure
runtimeVersion
string
runtimeProvider
RuntimeProvider
configuration
[]ConfigurationSpec
conditions
[]IntegrationCondition
version
string
replicas
int32
capabilities
[]string

Language (string alias)

(Appears on: SourceSpec)

Language –

MavenArtifact

(Appears on: CamelArtifactDependency, CamelLoader, Capability, RuntimeSpec)

MavenArtifact –

FieldDescription
groupId
string
artifactId
string
version
string

MavenSpec

(Appears on: BuilderTask, IntegrationPlatformBuildSpec)

MavenSpec –

FieldDescription
localRepository
string
settings
ValueSource
timeout
Kubernetes meta/v1.Duration

PlatformInjectable

PlatformInjectable –

ResourceCondition

ResourceCondition is a common type for all conditions

ResourceSpec

(Appears on: BuilderTask, IntegrationSpec, IntegrationStatus)

ResourceSpec –

FieldDescription
DataSpec
DataSpec
type
ResourceType
mountPath
string

ResourceType (string alias)

(Appears on: ResourceSpec)

ResourceType –

RuntimeProvider (string alias)

(Appears on: IntegrationKitStatus, IntegrationPlatformBuildSpec, IntegrationStatus, RuntimeSpec)

RuntimeProvider –

RuntimeSpec

(Appears on: BuilderTask, CamelCatalogSpec)

RuntimeSpec –

FieldDescription
version
string
provider
RuntimeProvider
applicationClass
string
dependencies
[]MavenArtifact
metadata
map[string]string
capabilities
map[string]github.com/apache/camel-k/pkg/apis/camel/v1.Capability

SourceSpec

(Appears on: BuilderTask, IntegrationSpec, IntegrationStatus)

SourceSpec –

FieldDescription
DataSpec
DataSpec
language
Language
loader
string

Loader is an optional id of the org.apache.camel.k.RoutesLoader that will interpret this source at runtime

interceptors
[]string

Interceptors are optional identifiers the org.apache.camel.k.RoutesLoader uses to pre/post process sources

Task

(Appears on: BuildSpec)

Task –

FieldDescription
builder
BuilderTask
image
ImageTask

TraitProfile (string alias)

(Appears on: IntegrationKitSpec, IntegrationPlatformSpec, IntegrationSpec, IntegrationStatus)

TraitProfile represents lists of traits that are enabled for the specific installation/integration

TraitSpec

(Appears on: IntegrationKitSpec, IntegrationPlatformSpec, IntegrationSpec)

A TraitSpec contains the configuration of a trait

FieldDescription
configuration
map[string]string

ValueSource

(Appears on: MavenSpec)

ValueSource –

FieldDescription
configMapKeyRef
Kubernetes core/v1.ConfigMapKeySelector

Selects a key of a ConfigMap.

secretKeyRef
Kubernetes core/v1.SecretKeySelector

Selects a key of a secret.


sources.knative.dev/v1alpha1

Package v1alpha1 contains API Schema definitions for the sources v1alpha1 API group

Resource Types:

ApiServerSource

ApiServerSource is the Schema for the apiserversources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
ApiServerSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ApiServerSourceSpec


resources
[]ApiServerResource

Resources is the list of resources to watch

serviceAccountName
string
(Optional)

ServiceAccountName is the name of the ServiceAccount to use to run this source.

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

owner
APIVersionKind
(Optional)

ResourceOwner is an additional filter to only track resources that are owned by a specific resource type. If ResourceOwner matches Resources[n] then Resources[n] is allowed to pass the ResourceOwner filter.

mode
string

Mode is the mode the receive adapter controller runs under: Ref or Resource. Ref sends only the reference to the resource. Resource send the full resource.

status
ApiServerSourceStatus

AwsSqsSource

AwsSqsSource is the Schema for the AWS SQS API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
AwsSqsSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
AwsSqsSourceSpec


queueUrl
string

QueueURL of the SQS queue that we will poll from.

awsCredsSecret
Kubernetes core/v1.SecretKeySelector
(Optional)

AwsCredsSecret is the credential to use to poll the AWS SQS

annotations
map[string]string
(Optional)

Annotations to add to the pod, mostly used for Kube2IAM role

sink
Kubernetes core/v1.ObjectReference
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink. This is where events will be received.

serviceAccountName
string

ServiceAccoutName is the name of the ServiceAccount that will be used to run the Receive Adapter Deployment.

status
AwsSqsSourceStatus

CamelSource

CamelSource is the Schema for the camelsources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
CamelSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
CamelSourceSpec


source
CamelSourceOriginSpec

Source is the reference to the integration flow to run.

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

status
CamelSourceStatus

CouchDbSource

CouchDbSource is the Schema for the githubsources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
CouchDbSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
CouchDbSourceSpec


serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the CouchDbSource exists.

credentials
Kubernetes core/v1.ObjectReference

CouchDbCredentials is the credential to use to access CouchDb. Must be a secret. Only Name and Namespace are used.

feed
FeedType

Feed changes how CouchDB sends the response. More information: https://docs.couchdb.org/en/stable/api/database/changes.html#changes-feeds

database
string

Database is the database to watch for changes

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

status
CouchDbSourceStatus

GitHubSource

GitHubSource is the Schema for the githubsources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
GitHubSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
GitHubSourceSpec


serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the GitHubSource exists.

ownerAndRepository
string

OwnerAndRepository is the GitHub owner/org and repository to receive events from. The repository may be left off to receive events from an entire organization. Examples: myuser/project myorganization

eventTypes
[]string

EventType is the type of event to receive from GitHub. These correspond to the “Webhook event name” values listed at https://developer.github.com/v3/activity/events/types/ - ie “pull_request”

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitHub access token

secretToken
SecretValueFromSource

SecretToken is the Kubernetes secret containing the GitHub secret token

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

githubAPIURL
string
(Optional)

API URL if using github enterprise (default https://api.github.com)

secure
bool
(Optional)

Secure can be set to true to configure the webhook to use https, or false to use http. Omitting it relies on the scheme of the Knative Service created (e.g. if auto-TLS is enabled it should do the right thing).

status
GitHubSourceStatus

GitLabSource

GitLabSource is the Schema for the gitlabsources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
GitLabSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
GitLabSourceSpec


serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the GitLabSource exists.

projectUrl
string

ProjectUrl is the url of the GitLab project for which we are interested to receive events from. Examples: https://gitlab.com/gitlab-org/gitlab-foss

eventTypes
[]string

EventType is the type of event to receive from Gitlab. These correspond to supported events to the add project hook https://docs.gitlab.com/ee/api/projects.html#add-project-hook

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitLab access token

secretToken
SecretValueFromSource

SecretToken is the Kubernetes secret containing the GitLab secret token

sslverify
bool

SslVerify if true configure webhook so the ssl verification is done when triggering the hook

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

status
GitLabSourceStatus

PingSource

PingSource is the Schema for the PingSources API.

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
PingSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
PingSourceSpec


schedule
string

Schedule is the cronjob schedule.

data
string

Data is the data posted to the target function.

sink
Destination

Sink is a reference to an object that will resolve to a uri to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

serviceAccountName
string

ServiceAccoutName is the name of the ServiceAccount that will be used to run the Receive Adapter Deployment. Deprecated: v1beta1 drops this field.

resources
PingResourceSpec

Resource limits and Request specifications of the Receive Adapter Deployment Deprecated: v1beta1 drops this field.

status
PingSourceStatus

PrometheusSource

PrometheusSource is the Schema for the prometheussources API

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
PrometheusSource
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
PrometheusSourceSpec


serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the PrometheusSource exists.

serverURL
string

ServerURL is the URL of the Prometheus server

promQL
string

PromQL is the Prometheus query for this source

authTokenFile
string
(Optional)

The name of the file containing the authenication token

caCertConfigMap
string
(Optional)

The name of the config map containing the CA certificate of the Prometheus service’s signer.

schedule
string

A crontab-formatted schedule for running the PromQL query

step
string
(Optional)

Query resolution step width in duration format or float number of seconds. Prometheus duration strings are of the form [0-9]+[smhdwy].

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a host name to use as the sink.

status
PrometheusSourceStatus

SinkBinding

SinkBinding describes a Binding that is also a Source. The sink (from the Source duck) is resolved to a URL and then projected into the subject by augmenting the runtime contract of the referenced containers to have a K_SINK environment variable holding the endpoint to which to send cloud events.

FieldDescription
apiVersion
string
sources.knative.dev/v1alpha1
kind
string
SinkBinding
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SinkBindingSpec


SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

status
SinkBindingStatus

ApiServerResource

(Appears on: ApiServerSourceSpec)

ApiServerResource defines the resource to watch

FieldDescription
apiVersion
string

API version of the resource to watch.

kind
string

Kind of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

labelSelector
Kubernetes meta/v1.LabelSelector

LabelSelector restricts this source to objects with the selected labels More info: http://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors

controllerSelector
Kubernetes meta/v1.OwnerReference

ControllerSelector restricts this source to objects with a controlling owner reference of the specified kind. Only apiVersion and kind are used. Both are optional. Deprecated: Per-resource owner refs will no longer be supported in v1alpha2, please use Spec.Owner as a GKV.

controller
bool

If true, send an event referencing the object controlling the resource Deprecated: Per-resource controller flag will no longer be supported in v1alpha2, please use Spec.Owner as a GKV.

ApiServerSourceSpec

(Appears on: ApiServerSource)

ApiServerSourceSpec defines the desired state of ApiServerSource

FieldDescription
resources
[]ApiServerResource

Resources is the list of resources to watch

serviceAccountName
string
(Optional)

ServiceAccountName is the name of the ServiceAccount to use to run this source.

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

owner
APIVersionKind
(Optional)

ResourceOwner is an additional filter to only track resources that are owned by a specific resource type. If ResourceOwner matches Resources[n] then Resources[n] is allowed to pass the ResourceOwner filter.

mode
string

Mode is the mode the receive adapter controller runs under: Ref or Resource. Ref sends only the reference to the resource. Resource send the full resource.

ApiServerSourceStatus

(Appears on: ApiServerSource)

ApiServerSourceStatus defines the observed state of ApiServerSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

AwsSqsSourceSpec

(Appears on: AwsSqsSource)

AwsSqsSourceSpec defines the desired state of the source.

FieldDescription
queueUrl
string

QueueURL of the SQS queue that we will poll from.

awsCredsSecret
Kubernetes core/v1.SecretKeySelector
(Optional)

AwsCredsSecret is the credential to use to poll the AWS SQS

annotations
map[string]string
(Optional)

Annotations to add to the pod, mostly used for Kube2IAM role

sink
Kubernetes core/v1.ObjectReference
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink. This is where events will be received.

serviceAccountName
string

ServiceAccoutName is the name of the ServiceAccount that will be used to run the Receive Adapter Deployment.

AwsSqsSourceStatus

(Appears on: AwsSqsSource)

AwsSqsSourceStatus defines the observed state of the source.

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

CamelSourceOriginSpec

(Appears on: CamelSourceSpec)

CamelSourceOriginSpec is the integration flow to run

FieldDescription
integration
IntegrationSpec

Integration is a kind of source that contains a Camel K integration

flow
Flow

Flow is a kind of source that contains a single Camel YAML flow route

CamelSourceSpec

(Appears on: CamelSource)

CamelSourceSpec defines the desired state of CamelSource

FieldDescription
source
CamelSourceOriginSpec

Source is the reference to the integration flow to run.

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

CamelSourceStatus

(Appears on: CamelSource)

CamelSourceStatus defines the observed state of CamelSource

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1alpha1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

sinkUri
string
(Optional)

SinkURI is the current active sink URI that has been configured for the CamelSource.

CouchDbSourceSpec

(Appears on: CouchDbSource)

CouchDbSourceSpec defines the desired state of CouchDbSource

FieldDescription
serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the CouchDbSource exists.

credentials
Kubernetes core/v1.ObjectReference

CouchDbCredentials is the credential to use to access CouchDb. Must be a secret. Only Name and Namespace are used.

feed
FeedType

Feed changes how CouchDB sends the response. More information: https://docs.couchdb.org/en/stable/api/database/changes.html#changes-feeds

database
string

Database is the database to watch for changes

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

CouchDbSourceStatus

(Appears on: CouchDbSource)

CouchDbSourceStatus defines the observed state of CouchDbSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

FeedType (string alias)

(Appears on: CouchDbSourceSpec)

FeedType is the type of Feed

Flow (map[string]interface{} alias)

(Appears on: CamelSourceOriginSpec)

Flow is an unstructured object representing a Camel Flow in YAML/JSON DSL

GitHubSourceSpec

(Appears on: GitHubSource)

GitHubSourceSpec defines the desired state of GitHubSource

FieldDescription
serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the GitHubSource exists.

ownerAndRepository
string

OwnerAndRepository is the GitHub owner/org and repository to receive events from. The repository may be left off to receive events from an entire organization. Examples: myuser/project myorganization

eventTypes
[]string

EventType is the type of event to receive from GitHub. These correspond to the “Webhook event name” values listed at https://developer.github.com/v3/activity/events/types/ - ie “pull_request”

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitHub access token

secretToken
SecretValueFromSource

SecretToken is the Kubernetes secret containing the GitHub secret token

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

githubAPIURL
string
(Optional)

API URL if using github enterprise (default https://api.github.com)

secure
bool
(Optional)

Secure can be set to true to configure the webhook to use https, or false to use http. Omitting it relies on the scheme of the Knative Service created (e.g. if auto-TLS is enabled it should do the right thing).

GitHubSourceStatus

(Appears on: GitHubSource)

GitHubSourceStatus defines the observed state of GitHubSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

webhookIDKey
string

WebhookIDKey is the ID of the webhook registered with GitHub

GitLabSourceSpec

(Appears on: GitLabSource)

GitLabSourceSpec defines the desired state of GitLabSource

FieldDescription
serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the GitLabSource exists.

projectUrl
string

ProjectUrl is the url of the GitLab project for which we are interested to receive events from. Examples: https://gitlab.com/gitlab-org/gitlab-foss

eventTypes
[]string

EventType is the type of event to receive from Gitlab. These correspond to supported events to the add project hook https://docs.gitlab.com/ee/api/projects.html#add-project-hook

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitLab access token

secretToken
SecretValueFromSource

SecretToken is the Kubernetes secret containing the GitLab secret token

sslverify
bool

SslVerify if true configure webhook so the ssl verification is done when triggering the hook

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

GitLabSourceStatus

(Appears on: GitLabSource)

GitLabSourceStatus defines the observed state of GitLabSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

Id
string

ID of the project hook registered with GitLab

KafkaLimitsSpec

(Appears on: KafkaResourceSpec)

FieldDescription
cpu
string
memory
string

KafkaRequestsSpec

(Appears on: KafkaResourceSpec)

FieldDescription
cpu
string
memory
string

KafkaResourceSpec

(Appears on: KafkaSourceSpec)

FieldDescription
requests
KafkaRequestsSpec
limits
KafkaLimitsSpec

KafkaSource

KafkaSource is the Schema for the kafkasources API.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
KafkaSourceSpec


KafkaAuthSpec
KafkaAuthSpec

(Members of KafkaAuthSpec are embedded into this type.)

topics
[]string

Topic topics to consume messages from

consumerGroup
string
(Optional)

ConsumerGroupID is the consumer group ID.

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

serviceAccountName
string

ServiceAccoutName is the name of the ServiceAccount that will be used to run the Receive Adapter Deployment.

resources
KafkaResourceSpec

Resource limits and Request specifications of the Receive Adapter Deployment

status
KafkaSourceStatus

KafkaSourceSpec

(Appears on: KafkaSource)

KafkaSourceSpec defines the desired state of the KafkaSource.

FieldDescription
KafkaAuthSpec
KafkaAuthSpec

(Members of KafkaAuthSpec are embedded into this type.)

topics
[]string

Topic topics to consume messages from

consumerGroup
string
(Optional)

ConsumerGroupID is the consumer group ID.

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a domain name to use as the sink.

serviceAccountName
string

ServiceAccoutName is the name of the ServiceAccount that will be used to run the Receive Adapter Deployment.

resources
KafkaResourceSpec

Resource limits and Request specifications of the Receive Adapter Deployment

KafkaSourceStatus

(Appears on: KafkaSource)

KafkaSourceStatus defines the observed state of KafkaSource.

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

PingLimitsSpec

(Appears on: PingResourceSpec)

FieldDescription
cpu
string
memory
string

PingRequestsSpec

(Appears on: PingResourceSpec)

FieldDescription
cpu
string
memory
string

PingResourceSpec

(Appears on: PingSourceSpec)

FieldDescription
requests
PingRequestsSpec
limits
PingLimitsSpec

PingSourceSpec

(Appears on: PingSource)

PingSourceSpec defines the desired state of the PingSource.

FieldDescription
schedule
string

Schedule is the cronjob schedule.

data
string

Data is the data posted to the target function.

sink
Destination

Sink is a reference to an object that will resolve to a uri to use as the sink.

ceOverrides
CloudEventOverrides
(Optional)

CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink.

serviceAccountName
string

ServiceAccoutName is the name of the ServiceAccount that will be used to run the Receive Adapter Deployment. Deprecated: v1beta1 drops this field.

resources
PingResourceSpec

Resource limits and Request specifications of the Receive Adapter Deployment Deprecated: v1beta1 drops this field.

PingSourceStatus

(Appears on: PingSource)

PingSourceStatus defines the observed state of PingSource.

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

PrometheusSourceSpec

(Appears on: PrometheusSource)

PrometheusSourceSpec defines the desired state of PrometheusSource

FieldDescription
serviceAccountName
string
(Optional)

ServiceAccountName holds the name of the Kubernetes service account as which the underlying K8s resources should be run. If unspecified this will default to the “default” service account for the namespace in which the PrometheusSource exists.

serverURL
string

ServerURL is the URL of the Prometheus server

promQL
string

PromQL is the Prometheus query for this source

authTokenFile
string
(Optional)

The name of the file containing the authenication token

caCertConfigMap
string
(Optional)

The name of the config map containing the CA certificate of the Prometheus service’s signer.

schedule
string

A crontab-formatted schedule for running the PromQL query

step
string
(Optional)

Query resolution step width in duration format or float number of seconds. Prometheus duration strings are of the form [0-9]+[smhdwy].

sink
Destination
(Optional)

Sink is a reference to an object that will resolve to a host name to use as the sink.

PrometheusSourceStatus

(Appears on: PrometheusSource)

PrometheusSourceStatus defines the observed state of PrometheusSource

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

inherits duck/v1 SourceStatus, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state. * SinkURI - the current active sink URI that has been configured for the Source.

SecretValueFromSource

(Appears on: GitHubSourceSpec)

SecretValueFromSource represents the source of a secret value

FieldDescription
secretKeyRef
Kubernetes core/v1.SecretKeySelector

The Secret key to select from.

SecretValueFromSource

(Appears on: GitLabSourceSpec)

SecretValueFromSource represents the source of a secret value

FieldDescription
secretKeyRef
Kubernetes core/v1.SecretKeySelector

The Secret key to select from.

SinkBindingSpec

(Appears on: SinkBinding)

SinkBindingSpec holds the desired state of the SinkBinding (from the client).

FieldDescription
SourceSpec
SourceSpec

(Members of SourceSpec are embedded into this type.)

BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

SinkBindingStatus

(Appears on: SinkBinding)

SinkBindingStatus communicates the observed state of the SinkBinding (from the controller).

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)


bindings.knative.dev/v1alpha1

Package v1alpha1 contains API Schema definitions for the sources v1alpha1 API group

Resource Types:

GitHubBinding

GitHubBinding describes a Binding that is also a Source. The sink (from the Source duck) is resolved to a URL and then projected into the subject by augmenting the runtime contract of the referenced containers to have a K_SINK environment variable holding the endpoint to which to send cloud events.

FieldDescription
apiVersion
string
bindings.knative.dev/v1alpha1
kind
string
GitHubBinding
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
GitHubBindingSpec


BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitHub access token

status
GitHubBindingStatus

GitLabBinding

GitLabBinding describes a Binding that is also a Source. The sink (from the Source duck) is resolved to a URL and then projected into the subject by augmenting the runtime contract of the referenced containers to have a K_SINK environment variable holding the endpoint to which to send cloud events.

FieldDescription
apiVersion
string
bindings.knative.dev/v1alpha1
kind
string
GitLabBinding
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
GitLabBindingSpec


BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitLab access token

status
GitLabBindingStatus

GitHubBindingSpec

(Appears on: GitHubBinding)

GitHubBindingSpec holds the desired state of the GitHubBinding (from the client).

FieldDescription
BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitHub access token

GitHubBindingStatus

(Appears on: GitHubBinding)

GitHubBindingStatus communicates the observed state of the GitHubBinding (from the controller).

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

GitLabBindingSpec

(Appears on: GitLabBinding)

GitLabBindingSpec holds the desired state of the GitLabBinding (from the client).

FieldDescription
BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

accessToken
SecretValueFromSource

AccessToken is the Kubernetes secret containing the GitLab access token

GitLabBindingStatus

(Appears on: GitLabBinding)

GitLabBindingStatus communicates the observed state of the GitLabBinding (from the controller).

FieldDescription
SourceStatus
SourceStatus

(Members of SourceStatus are embedded into this type.)

KafkaAuthSpec

(Appears on: KafkaBindingSpec, KafkaSourceSpec)

FieldDescription
bootstrapServers
[]string

Bootstrap servers are the Kafka servers the consumer will connect to.

net
KafkaNetSpec

KafkaBinding

KafkaBinding is the Schema for the kafkasources API.

FieldDescription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
KafkaBindingSpec


BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

KafkaAuthSpec
KafkaAuthSpec

(Members of KafkaAuthSpec are embedded into this type.)

status
KafkaBindingStatus

KafkaBindingSpec

(Appears on: KafkaBinding)

KafkaBindingSpec defines the desired state of the KafkaBinding.

FieldDescription
BindingSpec
BindingSpec

(Members of BindingSpec are embedded into this type.)

KafkaAuthSpec
KafkaAuthSpec

(Members of KafkaAuthSpec are embedded into this type.)

KafkaBindingStatus

(Appears on: KafkaBinding)

KafkaBindingStatus defines the observed state of KafkaBinding.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

KafkaNetSpec

(Appears on: KafkaAuthSpec)

FieldDescription
sasl
KafkaSASLSpec
tls
KafkaTLSSpec

KafkaSASLSpec

(Appears on: KafkaNetSpec)

FieldDescription
enable
bool
user
SecretValueFromSource
(Optional)

User is the Kubernetes secret containing the SASL username.

password
SecretValueFromSource
(Optional)

Password is the Kubernetes secret containing the SASL password.

KafkaTLSSpec

(Appears on: KafkaNetSpec)

FieldDescription
enable
bool
cert
SecretValueFromSource
(Optional)

Cert is the Kubernetes secret containing the client certificate.

key
SecretValueFromSource
(Optional)

Key is the Kubernetes secret containing the client key.

caCert
SecretValueFromSource
(Optional)

CACert is the Kubernetes secret containing the server CA cert.

SecretValueFromSource

(Appears on: KafkaSASLSpec, KafkaTLSSpec)

SecretValueFromSource represents the source of a secret value

FieldDescription
secretKeyRef
Kubernetes core/v1.SecretKeySelector

The Secret key to select from.

SecretValueFromSource

(Appears on: GitLabBindingSpec)

SecretValueFromSource represents the source of a secret value

FieldDescription
secretKeyRef
Kubernetes core/v1.SecretKeySelector

The Secret key to select from.

SecretValueFromSource

(Appears on: GitHubBindingSpec)

SecretValueFromSource represents the source of a secret value

FieldDescription
secretKeyRef
Kubernetes core/v1.SecretKeySelector

The Secret key to select from.


messaging.knative.dev/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

Resource Types:

Channel

Channel represents a generic Channel. It is normally used when we want a Channel, but don’t need a specific Channel implementation.

FieldDescription
apiVersion
string
messaging.knative.dev/v1alpha1
kind
string
Channel
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ChannelSpec

Spec defines the desired state of the Channel.



channelTemplate
ChannelTemplateSpec

ChannelTemplate specifies which Channel CRD to use to create the CRD Channel backing this Channel. This is immutable after creation. Normally this is set by the Channel defaulter, not directly by the user.

subscribable
Subscribable

Channel conforms to Duck type Subscribable.

delivery
DeliverySpec

Delivery options.

status
ChannelStatus
(Optional)

Status represents the current state of the Channel. This data may be out of date.

InMemoryChannel

InMemoryChannel is a resource representing an in memory channel

FieldDescription
apiVersion
string
messaging.knative.dev/v1alpha1
kind
string
InMemoryChannel
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
InMemoryChannelSpec

Spec defines the desired state of the Channel.



subscribable
Subscribable

Channel conforms to Duck type Subscribable.

delivery
DeliverySpec

For round tripping (v1beta1 <-> v1alpha1>

status
InMemoryChannelStatus
(Optional)

Status represents the current state of the Channel. This data may be out of date.

KafkaChannel

KafkaChannel is a resource representing a Kafka Channel.

FieldDescription
apiVersion
string
messaging.knative.dev/v1alpha1
kind
string
KafkaChannel
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
KafkaChannelSpec

Spec defines the desired state of the Channel.



numPartitions
int32

NumPartitions is the number of partitions of a Kafka topic. By default, it is set to 1.

replicationFactor
int16

ReplicationFactor is the replication factor of a Kafka topic. By default, it is set to 1.

subscribable
Subscribable

KafkaChannel conforms to Duck type Subscribable.

status
KafkaChannelStatus
(Optional)

Status represents the current state of the KafkaChannel. This data may be out of date.

NatssChannel

NatssChannel is a resource representing a NATSS Channel.

FieldDescription
apiVersion
string
messaging.knative.dev/v1alpha1
kind
string
NatssChannel
metadata
Kubernetes meta/v1.ObjectMeta
(Optional) Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
NatssChannelSpec

Spec defines the desired state of the Channel.



subscribable
Subscribable

NatssChannel conforms to Duck type Subscribable.

status
NatssChannelStatus
(Optional)

Status represents the current state of the NatssChannel. This data may be out of date.

Subscription

Subscription routes events received on a Channel to a DNS name and corresponds to the subscriptions.channels.knative.dev CRD.

FieldDescription
apiVersion
string
messaging.knative.dev/v1alpha1
kind
string
Subscription
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
SubscriptionSpec


generation
int64
(Optional)

TODO By enabling the status subresource metadata.generation should increment thus making this property obsolete.

We should be able to drop this property with a CRD conversion webhook in the future

channel
Kubernetes core/v1.ObjectReference

This field is immutable. We have no good answer on what happens to the events that are currently in the channel being consumed from and what the semantics there should be. For now, you can always delete the Subscription and recreate it to point to a different channel, giving the user more control over what semantics should be used (drain the channel first, possibly have events dropped, etc.)

subscriber
Destination
(Optional)

Subscriber is reference to (optional) function for processing events. Events from the Channel will be delivered here and replies are sent to a Destination as specified by the Reply.

reply
Destination
(Optional)

Reply specifies (optionally) how to handle events returned from the Subscriber target.

delivery
DeliverySpec
(Optional)

Delivery configuration

status
SubscriptionStatus

ChannelSpec

(Appears on: Channel)

ChannelSpec defines which subscribers have expressed interest in receiving events from this Channel. It also defines the ChannelTemplate to use in order to create the CRD Channel backing this Channel.

FieldDescription
channelTemplate
ChannelTemplateSpec

ChannelTemplate specifies which Channel CRD to use to create the CRD Channel backing this Channel. This is immutable after creation. Normally this is set by the Channel defaulter, not directly by the user.

subscribable
Subscribable

Channel conforms to Duck type Subscribable.

delivery
DeliverySpec

Delivery options.

ChannelStatus

(Appears on: Channel)

ChannelStatus represents the current state of a Channel.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

Channel is Addressable. It currently exposes the endpoint as a fully-qualified DNS name which will distribute traffic over the provided targets from inside the cluster.

It generally has the form {channel}.{namespace}.svc.{cluster domain name}

SubscribableTypeStatus
SubscribableTypeStatus

(Members of SubscribableTypeStatus are embedded into this type.)

Subscribers is populated with the statuses of each of the Channelable’s subscribers.

channel
Kubernetes core/v1.ObjectReference

Channel is an ObjectReference to the Channel CRD backing this Channel.

InMemoryChannelSpec

(Appears on: InMemoryChannel)

InMemoryChannelSpec defines which subscribers have expressed interest in receiving events from this InMemoryChannel. arguments for a Channel.

FieldDescription
subscribable
Subscribable

Channel conforms to Duck type Subscribable.

delivery
DeliverySpec

For round tripping (v1beta1 <-> v1alpha1>

InMemoryChannelStatus

(Appears on: InMemoryChannel)

ChannelStatus represents the current state of a Channel.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

InMemoryChannel is Addressable. It currently exposes the endpoint as a fully-qualified DNS name which will distribute traffic over the provided targets from inside the cluster.

It generally has the form {channel}.{namespace}.svc.{cluster domain name}

SubscribableTypeStatus
SubscribableTypeStatus

(Members of SubscribableTypeStatus are embedded into this type.)

Subscribers is populated with the statuses of each of the Channelable’s subscribers.

KafkaChannelSpec

(Appears on: KafkaChannel)

KafkaChannelSpec defines the specification for a KafkaChannel.

FieldDescription
numPartitions
int32

NumPartitions is the number of partitions of a Kafka topic. By default, it is set to 1.

replicationFactor
int16

ReplicationFactor is the replication factor of a Kafka topic. By default, it is set to 1.

subscribable
Subscribable

KafkaChannel conforms to Duck type Subscribable.

KafkaChannelStatus

(Appears on: KafkaChannel)

KafkaChannelStatus represents the current state of a KafkaChannel.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1beta1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

KafkaChannel is Addressable. It currently exposes the endpoint as a fully-qualified DNS name which will distribute traffic over the provided targets from inside the cluster.

It generally has the form {channel}.{namespace}.svc.{cluster domain name}

SubscribableTypeStatus
SubscribableTypeStatus

(Members of SubscribableTypeStatus are embedded into this type.)

Subscribers is populated with the statuses of each of the Channelable’s subscribers.

NatssChannelSpec

(Appears on: NatssChannel)

NatssChannelSpec defines the specification for a NatssChannel.

FieldDescription
subscribable
Subscribable

NatssChannel conforms to Duck type Subscribable.

NatssChannelStatus

(Appears on: NatssChannel)

NatssChannelStatus represents the current state of a NatssChannel.

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1beta1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

AddressStatus
AddressStatus

(Members of AddressStatus are embedded into this type.)

NatssChannel is Addressable. It currently exposes the endpoint as a fully-qualified DNS name which will distribute traffic over the provided targets from inside the cluster.

It generally has the form {channel}.{namespace}.svc.{cluster domain name}

SubscribableTypeStatus
SubscribableTypeStatus

(Members of SubscribableTypeStatus are embedded into this type.)

Subscribers is populated with the statuses of each of the Channelable’s subscribers.

SubscriptionSpec

(Appears on: Subscription)

SubscriptionSpec specifies the Channel for incoming events, a Subscriber target for processing those events and where to put the result of the processing. Only From (where the events are coming from) is always required. You can optionally only Process the events (results in no output events) by leaving out the Result. You can also perform an identity transformation on the incoming events by leaving out the Subscriber and only specifying Result.

The following are all valid specifications: channel –[subscriber]–> reply Sink, no outgoing events: channel – subscriber no-op function (identity transformation): channel –> reply

FieldDescription
generation
int64
(Optional)

TODO By enabling the status subresource metadata.generation should increment thus making this property obsolete.

We should be able to drop this property with a CRD conversion webhook in the future

channel
Kubernetes core/v1.ObjectReference

This field is immutable. We have no good answer on what happens to the events that are currently in the channel being consumed from and what the semantics there should be. For now, you can always delete the Subscription and recreate it to point to a different channel, giving the user more control over what semantics should be used (drain the channel first, possibly have events dropped, etc.)

subscriber
Destination
(Optional)

Subscriber is reference to (optional) function for processing events. Events from the Channel will be delivered here and replies are sent to a Destination as specified by the Reply.

reply
Destination
(Optional)

Reply specifies (optionally) how to handle events returned from the Subscriber target.

delivery
DeliverySpec
(Optional)

Delivery configuration

SubscriptionStatus

(Appears on: Subscription)

SubscriptionStatus (computed) for a subscription

FieldDescription
Status
Status

(Members of Status are embedded into this type.)

inherits duck/v1 Status, which currently provides: ObservedGeneration - the ‘Generation’ of the Service that was last processed by the controller. Conditions - the latest available observations of a resource’s current state.

physicalSubscription
SubscriptionStatusPhysicalSubscription

PhysicalSubscription is the fully resolved values that this Subscription represents.

SubscriptionStatusPhysicalSubscription

(Appears on: SubscriptionStatus)

SubscriptionStatusPhysicalSubscription represents the fully resolved values for this Subscription.

FieldDescription
subscriberURI
knative.dev/pkg/apis.URL

SubscriberURI is the fully resolved URI for spec.subscriber.

replyURI
knative.dev/pkg/apis.URL

ReplyURI is the fully resolved URI for the spec.reply.

deadLetterSinkURI
knative.dev/pkg/apis.URL

ReplyURI is the fully resolved URI for the spec.delivery.deadLetterSink.


Generated with gen-crd-api-reference-docs on git commit 709e07fc.