apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"apiextensions.k8s.io/v1","kind":"CustomResourceDefinition","metadata":{"annotations":{"registry.knative.dev/eventTypes":"[\n {
\"type\": \"dev.knative.apiserver.resource.add\" },\n { \"type\": \"dev.knative.apiserver.resource.delete\"
},\n { \"type\": \"dev.knative.apiserver.resource.update\" },\n { \"type\":
\"dev.knative.apiserver.ref.add\" },\n { \"type\": \"dev.knative.apiserver.ref.delete\"
},\n { \"type\": \"dev.knative.apiserver.ref.update\" }\n]\n"},"creationTimestamp":null,"labels":{"duck.knative.dev/source":"true","eventing.knative.dev/release":"v0.24.0","eventing.knative.dev/source":"true","knative.dev/crd-install":"true"},"name":"apiserversources.sources.knative.dev"},"spec":{"group":"sources.knative.dev","names":{"categories":["all","knative","sources"],"kind":"ApiServerSource","plural":"apiserversources","singular":"apiserversource"},"scope":"Namespaced","versions":[{"additionalPrinterColumns":[{"jsonPath":".status.sinkUri","name":"Sink","type":"string"},{"jsonPath":".metadata.creationTimestamp","name":"Age","type":"date"},{"jsonPath":".status.conditions[?(@.type==\"Ready\")].status","name":"Ready","type":"string"},{"jsonPath":".status.conditions[?(@.type==\"Ready\")].reason","name":"Reason","type":"string"}],"name":"v1","schema":{"openAPIV3Schema":{"description":"ApiServerSource
is an event source that brings Kubernetes API server events into Knative.","properties":{"spec":{"properties":{"ceOverrides":{"description":"CloudEventOverrides
defines overrides to control the output format and modifications of the event
sent to the sink.","properties":{"extensions":{"description":"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.","type":"object","x-kubernetes-preserve-unknown-fields":true}},"type":"object"},"mode":{"description":"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`","type":"string"},"owner":{"description":"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.","properties":{"apiVersion":{"description":"APIVersion
- the API version of the resource to watch.","type":"string"},"kind":{"description":"Kind
of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds","type":"string"}},"type":"object"},"resources":{"description":"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.","items":{"properties":{"apiVersion":{"description":"APIVersion
- the API version of the resource to watch.","type":"string"},"kind":{"description":"Kind
of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds","type":"string"},"selector":{"description":"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","properties":{"matchExpressions":{"description":"matchExpressions
is a list of label selector requirements. The requirements are ANDed.","items":{"properties":{"key":{"description":"key
is the label key that the selector applies to.","type":"string"},"operator":{"description":"operator
represents a key''s relationship to a set of values. Valid operators are In,
NotIn, Exists and DoesNotExist.","type":"string"},"values":{"description":"values
is an array of string values. If the operator is In or NotIn, the values array
must be non-empty. If the operator is Exists or DoesNotExist, the values array
must be empty. This array is replaced during a strategic merge patch.","items":{"type":"string"},"type":"array"}},"type":"object"},"type":"array"},"matchLabels":{"description":"matchLabels
is a map of {key,value} pairs. A single {key,value} in the matchLabels map is
equivalent to an element of matchExpressions, whose key field is \"key\", the
operator is \"In\", and the values array contains only \"value\". The requirements
are ANDed.","type":"object","x-kubernetes-preserve-unknown-fields":true}},"type":"object"}},"type":"object"},"type":"array"},"serviceAccountName":{"description":"ServiceAccountName
is the name of the ServiceAccount to use to run this source. Defaults to default
if not set.","type":"string"},"sink":{"description":"Sink is a reference to
an object that will resolve to a uri to use as the sink.","properties":{"ref":{"description":"Ref
points to an Addressable.","properties":{"apiVersion":{"description":"API version
of the referent.","type":"string"},"kind":{"description":"Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds","type":"string"},"name":{"description":"Name
of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names","type":"string"},"namespace":{"description":"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.","type":"string"}},"type":"object"},"uri":{"description":"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.","type":"string"}},"type":"object"}},"required":["resources"],"type":"object"},"status":{"properties":{"annotations":{"description":"Annotations
is additional Status fields for the Resource to save some additional State as
well as convey more information to the user. This is roughly akin to Annotations
on any k8s resource, just the reconciler conveying richer information outwards.","type":"object","x-kubernetes-preserve-unknown-fields":true},"ceAttributes":{"description":"CloudEventAttributes
are the specific attributes that the Source uses as part of its CloudEvents.","items":{"properties":{"source":{"description":"Source
is the CloudEvents source attribute.","type":"string"},"type":{"description":"Type
refers to the CloudEvent type attribute.","type":"string"}},"type":"object"},"type":"array"},"conditions":{"description":"Conditions
the latest available observations of a resource''s current state.","items":{"properties":{"lastTransitionTime":{"description":"LastTransitionTime
is the last time the condition transitioned from one status to another. We use
VolatileTime in place of metav1.Time to exclude this from creating equality.Semantic
differences (all other things held constant).","type":"string"},"message":{"description":"A
human readable message indicating details about the transition.","type":"string"},"reason":{"description":"The
reason for the condition''s last transition.","type":"string"},"severity":{"description":"Severity
with which to treat failures of this type of condition. When this is not specified,
it defaults to Error.","type":"string"},"status":{"description":"Status of the
condition, one of True, False, Unknown.","type":"string"},"type":{"description":"Type
of condition.","type":"string"}},"required":["type","status"],"type":"object"},"type":"array"},"observedGeneration":{"description":"ObservedGeneration
is the ''Generation'' of the Service that was last processed by the controller.","format":"int64","type":"integer"},"sinkUri":{"description":"SinkURI
is the current active sink URI that has been configured for the Source.","type":"string"}},"type":"object"}},"type":"object"}},"served":true,"storage":true,"subresources":{"status":{}}}]}}
'
registry.knative.dev/eventTypes: "[\n { \"type\": \"dev.knative.apiserver.resource.add\"\
\ },\n { \"type\": \"dev.knative.apiserver.resource.delete\" },\n { \"type\"\
: \"dev.knative.apiserver.resource.update\" },\n { \"type\": \"dev.knative.apiserver.ref.add\"\
\ },\n { \"type\": \"dev.knative.apiserver.ref.delete\" },\n { \"type\": \"\
dev.knative.apiserver.ref.update\" }\n]\n"
creationTimestamp: '2021-08-30T18:59:50Z'
generation: 1
labels:
duck.knative.dev/source: 'true'
eventing.knative.dev/release: v0.24.0
eventing.knative.dev/source: 'true'
knative.dev/crd-install: 'true'
managedFields:
- apiVersion: apiextensions.k8s.io/v1
fieldsType: FieldsV1
fieldsV1:
f:status:
f:acceptedNames:
f:categories: {}
f:kind: {}
f:listKind: {}
f:plural: {}
f:singular: {}
f:conditions:
k:{"type":"Established"}:
.: {}
f:lastTransitionTime: {}
f:message: {}
f:reason: {}
f:status: {}
f:type: {}
k:{"type":"NamesAccepted"}:
.: {}
f:lastTransitionTime: {}
f:message: {}
f:reason: {}
f:status: {}
f:type: {}
manager: k3s
operation: Update
time: '2021-08-30T18:59:50Z'
- apiVersion: apiextensions.k8s.io/v1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.: {}
f:kubectl.kubernetes.io/last-applied-configuration: {}
f:registry.knative.dev/eventTypes: {}
f:labels:
.: {}
f:duck.knative.dev/source: {}
f:eventing.knative.dev/release: {}
f:eventing.knative.dev/source: {}
f:knative.dev/crd-install: {}
f:spec:
f:conversion:
.: {}
f:strategy: {}
f:group: {}
f:names:
f:categories: {}
f:kind: {}
f:listKind: {}
f:plural: {}
f:singular: {}
f:scope: {}
f:versions: {}
manager: manifestival
operation: Update
time: '2021-08-30T18:59:56Z'
name: apiserversources.sources.knative.dev
resourceVersion: '5924'
uid: 408c93db-4ee7-4d61-9607-9d48bb6bd6b5
spec:
conversion:
strategy: None
group: sources.knative.dev
names:
categories:
- all
- knative
- sources
kind: ApiServerSource
listKind: ApiServerSourceList
plural: apiserversources
singular: apiserversource
scope: Namespaced
versions:
- additionalPrinterColumns:
- jsonPath: .status.sinkUri
name: Sink
type: string
- jsonPath: .metadata.creationTimestamp
name: Age
type: date
- jsonPath: .status.conditions[?(@.type=="Ready")].status
name: Ready
type: string
- jsonPath: .status.conditions[?(@.type=="Ready")].reason
name: Reason
type: string
name: v1
schema:
openAPIV3Schema:
description: ApiServerSource is an event source that brings Kubernetes API
server events into Knative.
properties:
spec:
properties:
ceOverrides:
description: CloudEventOverrides defines overrides to control the
output format and modifications of the event sent to the sink.
properties:
extensions:
description: 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.
type: object
x-kubernetes-preserve-unknown-fields: true
type: object
mode:
description: 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`
type: string
owner:
description: 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.
properties:
apiVersion:
description: APIVersion - the API version of the resource to watch.
type: string
kind:
description: 'Kind of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
type: object
resources:
description: 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.
items:
properties:
apiVersion:
description: APIVersion - the API version of the resource to
watch.
type: string
kind:
description: 'Kind of the resource to watch. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
selector:
description: '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'
properties:
matchExpressions:
description: matchExpressions is a list of label selector
requirements. The requirements are ANDed.
items:
properties:
key:
description: key is the label key that the selector
applies to.
type: string
operator:
description: operator represents a key's relationship
to a set of values. Valid operators are In, NotIn,
Exists and DoesNotExist.
type: string
values:
description: values is an array of string values.
If the operator is In or NotIn, the values array
must be non-empty. If the operator is Exists or
DoesNotExist, the values array must be empty. This
array is replaced during a strategic merge patch.
items:
type: string
type: array
type: object
type: array
matchLabels:
description: matchLabels is a map of {key,value} pairs.
A single {key,value} in the matchLabels map is equivalent
to an element of matchExpressions, whose key field is
"key", the operator is "In", and the values array contains
only "value". The requirements are ANDed.
type: object
x-kubernetes-preserve-unknown-fields: true
type: object
type: object
type: array
serviceAccountName:
description: ServiceAccountName is the name of the ServiceAccount
to use to run this source. Defaults to default if not set.
type: string
sink:
description: Sink is a reference to an object that will resolve to
a uri to use as the sink.
properties:
ref:
description: Ref points to an Addressable.
properties:
apiVersion:
description: API version of the referent.
type: string
kind:
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
namespace:
description: '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.'
type: string
type: object
uri:
description: 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.
type: string
type: object
required:
- resources
type: object
status:
properties:
annotations:
description: Annotations is additional Status fields for the Resource
to save some additional State as well as convey more information
to the user. This is roughly akin to Annotations on any k8s resource,
just the reconciler conveying richer information outwards.
type: object
x-kubernetes-preserve-unknown-fields: true
ceAttributes:
description: CloudEventAttributes are the specific attributes that
the Source uses as part of its CloudEvents.
items:
properties:
source:
description: Source is the CloudEvents source attribute.
type: string
type:
description: Type refers to the CloudEvent type attribute.
type: string
type: object
type: array
conditions:
description: Conditions the latest available observations of a resource's
current state.
items:
properties:
lastTransitionTime:
description: LastTransitionTime is the last time the condition
transitioned from one status to another. We use VolatileTime
in place of metav1.Time to exclude this from creating equality.Semantic
differences (all other things held constant).
type: string
message:
description: A human readable message indicating details about
the transition.
type: string
reason:
description: The reason for the condition's last transition.
type: string
severity:
description: Severity with which to treat failures of this type
of condition. When this is not specified, it defaults to Error.
type: string
status:
description: Status of the condition, one of True, False, Unknown.
type: string
type:
description: Type of condition.
type: string
required:
- type
- status
type: object
type: array
observedGeneration:
description: ObservedGeneration is the 'Generation' of the Service
that was last processed by the controller.
format: int64
type: integer
sinkUri:
description: SinkURI is the current active sink URI that has been
configured for the Source.
type: string
type: object
type: object
served: true
storage: true
subresources:
status: {}
status:
acceptedNames:
categories:
- all
- knative
- sources
kind: ApiServerSource
listKind: ApiServerSourceList
plural: apiserversources
singular: apiserversource
conditions:
- lastTransitionTime: '2021-08-30T18:59:50Z'
message: no conflicts found
reason: NoConflicts
status: 'True'
type: NamesAccepted
- lastTransitionTime: '2021-08-30T18:59:50Z'
message: the initial names have been accepted
reason: InitialNamesAccepted
status: 'True'
type: Established
storedVersions:
- v1