diff --git a/charts/knative-eventing/Chart.yaml b/charts/knative-eventing/Chart.yaml index 536d4a1..5820d98 100644 --- a/charts/knative-eventing/Chart.yaml +++ b/charts/knative-eventing/Chart.yaml @@ -8,7 +8,7 @@ annotations: artifacthub.io/recommendations: | - url: https://artifacthub.io/packages/helm/ahhhh/knative-serving apiVersion: v2 -appVersion: 1.16.3 +appVersion: 1.18.3 description: | Event-driven application platform for Kubernetes home: https://github.com/Ahhhh-man/charts @@ -23,4 +23,5 @@ name: knative-eventing sources: - https://github.com/Ahhhh-man/charts/tree/main/charts/knative-eventing type: application -version: 0.3.6 +version: 0.18.0 +kubeVersion: '>= 1.31.0-0' diff --git a/charts/knative-eventing/README.md b/charts/knative-eventing/README.md index 3aab96e..2b73704 100644 --- a/charts/knative-eventing/README.md +++ b/charts/knative-eventing/README.md @@ -1,6 +1,6 @@ # Knative Eventing Helm Chart -![AppVersion: 1.16.3](https://img.shields.io/badge/AppVersion-1.16.3-informational?style=flat-square) +![AppVersion: 1.18.3](https://img.shields.io/badge/AppVersion-1.18.3-informational?style=flat-square) Knative Eventing provides you with helpful tools that can be used to create event-driven applications, by easily attaching event sources, triggers, and other options to your Knative Services. diff --git a/charts/knative-eventing/templates/core/configmaps/eventing-integrations-images.yaml b/charts/knative-eventing/templates/core/configmaps/eventing-integrations-images.yaml new file mode 100644 index 0000000..e681652 --- /dev/null +++ b/charts/knative-eventing/templates/core/configmaps/eventing-integrations-images.yaml @@ -0,0 +1,32 @@ +# Copyright 2025 The Knative Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: v1 +kind: ConfigMap +metadata: + name: eventing-integrations-images + namespace: knative-eventing + labels: + {{- include "knative-eventing.labels" . | nindent 4 }} + annotations: + {{- include "knative-eventing.annotations" . | nindent 4 }} +data: + aws-ddb-streams-source: gcr.io/knative-releases/aws-ddb-streams-source@sha256:f3a1b04ea62ab0aafd9675d82dbd09186b154349a287e33581bd7435fa9b96b2 + timer-source: gcr.io/knative-releases/timer-source@sha256:ffa7dde82d5d30a3fd411ca7fda01e5a77157116c97cc17da0f7ac0b07032e93 + log-sink: gcr.io/knative-releases/log-sink@sha256:87da054374112c0e78c5a0bbcda09205c030507bde2d6629e5a32d593ff587ca + aws-sqs-source: gcr.io/knative-releases/aws-sqs-source@sha256:87a49ca30eceedcde2458ef48517c5d24669f904c9d88a80aa5de196115bacef + aws-sns-sink: gcr.io/knative-releases/aws-sns-sink@sha256:c997f8a226a6a89e29c98136ac47b81d6b9b673bc40cdb4a392d3df5f00969f2 + aws-s3-sink: gcr.io/knative-releases/aws-s3-sink@sha256:6998f21cb3fbf33980ee6814d7dab9c45543c39472afaab3f573dd53f8448d6d + aws-s3-source: gcr.io/knative-releases/aws-s3-source@sha256:87480e82fd46d1884c588c4ef05e2dfcf866a5a3ae5a3952bd60c7c51bc1919f + aws-sqs-sink: gcr.io/knative-releases/aws-sqs-sink@sha256:278f14bfcff3de55f7c93deb4c3001a19b58f86de00033235f0fb29baa3c0e0b diff --git a/charts/knative-eventing/templates/core/configmaps/eventing-transformations-images.yaml b/charts/knative-eventing/templates/core/configmaps/eventing-transformations-images.yaml new file mode 100644 index 0000000..f9f6b40 --- /dev/null +++ b/charts/knative-eventing/templates/core/configmaps/eventing-transformations-images.yaml @@ -0,0 +1,25 @@ +# Copyright 2025 The Knative Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: v1 +kind: ConfigMap +metadata: + name: eventing-transformations-images + namespace: knative-eventing + labels: + {{- include "knative-eventing.labels" . | nindent 4 }} + annotations: + {{- include "knative-eventing.annotations" . | nindent 4 }} +data: + transform-jsonata: gcr.io/knative-releases/transform-jsonata:v1.18.0@sha256:fd60d124074e146289f78a1c17d19ba338cc95c268c390741e22c05483a716d3 diff --git a/charts/knative-eventing/templates/core/deployments/controller.yaml b/charts/knative-eventing/templates/core/deployments/controller.yaml index 352630e..0fd5aea 100644 --- a/charts/knative-eventing/templates/core/deployments/controller.yaml +++ b/charts/knative-eventing/templates/core/deployments/controller.yaml @@ -96,6 +96,51 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name + - name: EVENT_TRANSFORM_JSONATA_IMAGE + valueFrom: + configMapKeyRef: + key: transform-jsonata + name: eventing-transformations-images + - name: INTEGRATION_SOURCE_TIMER_IMAGE + valueFrom: + configMapKeyRef: + key: timer-source + name: eventing-integrations-images + - name: INTEGRATION_SOURCE_AWS_S3_IMAGE + valueFrom: + configMapKeyRef: + key: aws-s3-source + name: eventing-integrations-images + - name: INTEGRATION_SOURCE_AWS_SQS_IMAGE + valueFrom: + configMapKeyRef: + key: aws-sqs-source + name: eventing-integrations-images + - name: INTEGRATION_SOURCE_AWS_DDB_STREAMS_IMAGE + valueFrom: + configMapKeyRef: + key: aws-ddb-streams-source + name: eventing-integrations-images + - name: INTEGRATION_SINK_LOG_IMAGE + valueFrom: + configMapKeyRef: + key: log-sink + name: eventing-integrations-images + - name: INTEGRATION_SINK_AWS_S3_IMAGE + valueFrom: + configMapKeyRef: + key: aws-s3-sink + name: eventing-integrations-images + - name: INTEGRATION_SINK_AWS_SQS_IMAGE + valueFrom: + configMapKeyRef: + key: aws-sqs-sink + name: eventing-integrations-images + - name: INTEGRATION_SINK_AWS_SNS_IMAGE + valueFrom: + configMapKeyRef: + key: aws-sns-sink + name: eventing-integrations-images securityContext: allowPrivilegeEscalation: false readOnlyRootFilesystem: true @@ -138,4 +183,4 @@ spec: containerPort: {{ $controller.containerPorts.profiling }} - name: probes containerPort: {{ $controller.containerPorts.probes }} -{{- end }} \ No newline at end of file +{{- end }} diff --git a/charts/knative-eventing/templates/core/deployments/pingsource-mt-adapter.yaml b/charts/knative-eventing/templates/core/deployments/pingsource-mt-adapter.yaml index 100b2b6..b173f8f 100644 --- a/charts/knative-eventing/templates/core/deployments/pingsource-mt-adapter.yaml +++ b/charts/knative-eventing/templates/core/deployments/pingsource-mt-adapter.yaml @@ -105,6 +105,8 @@ spec: - name: metrics containerPort: {{ $mtping.containerPorts.metrics }} protocol: TCP + - name: probes + containerPort: {{ $mtping.containerPorts.probes }} {{- with $mtping.resources }} resources: {{- toYaml . | nindent 6 }} @@ -126,5 +128,21 @@ spec: - ALL seccompProfile: type: RuntimeDefault + livenessProbe: + httpGet: + path: /health + port: probes + scheme: HTTP + initialDelaySeconds: 20 + periodSeconds: 10 + timeoutSeconds: 5 + readinessProbe: + httpGet: + path: /readiness + port: probes + scheme: HTTP + initialDelaySeconds: 20 + periodSeconds: 10 + timeoutSeconds: 5 serviceAccountName: {{ $mtping.serviceAccount.name }} {{- end }} diff --git a/charts/knative-eventing/templates/core/roles/addressable-resolvers-clusterrole.yaml b/charts/knative-eventing/templates/core/roles/addressable-resolvers-clusterrole.yaml index 2def5d2..32caaff 100644 --- a/charts/knative-eventing/templates/core/roles/addressable-resolvers-clusterrole.yaml +++ b/charts/knative-eventing/templates/core/roles/addressable-resolvers-clusterrole.yaml @@ -148,3 +148,41 @@ rules: - get - list - watch +--- +kind: ClusterRole +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: integrationsinks-addressable-resolver + labels: + duck.knative.dev/addressable: "true" + {{- include "knative-eventing.labels" . | nindent 4 }} +# Do not use this role directly. These rules will be added to the "addressable-resolver" role. +rules: + - apiGroups: + - sinks.knative.dev + resources: + - integrationsinks + - integrationsinks/status + verbs: + - get + - list + - watch +--- +kind: ClusterRole +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: eventtransforms-addressable-resolver + labels: + duck.knative.dev/addressable: "true" + {{- include "knative-eventing.labels" . | nindent 4 }} +# Do not use this role directly. These rules will be added to the "addressable-resolver" role. +rules: + - apiGroups: + - eventing.knative.dev + resources: + - eventtransforms + - eventtransforms/status + verbs: + - get + - list + - watch diff --git a/charts/knative-eventing/templates/core/roles/clusterrole-namespaced.yaml b/charts/knative-eventing/templates/core/roles/clusterrole-namespaced.yaml index 5299346..4e520c1 100644 --- a/charts/knative-eventing/templates/core/roles/clusterrole-namespaced.yaml +++ b/charts/knative-eventing/templates/core/roles/clusterrole-namespaced.yaml @@ -78,6 +78,19 @@ rules: --- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: knative-sinks-namespaced-admin + labels: + rbac.authorization.k8s.io/aggregate-to-admin: "true" + app.kubernetes.io/version: "test" + app.kubernetes.io/name: knative-eventing +rules: + - apiGroups: ["sinks.knative.dev"] + resources: ["*"] + verbs: ["*"] +--- +kind: ClusterRole +apiVersion: rbac.authorization.k8s.io/v1 metadata: name: knative-eventing-namespaced-edit labels: @@ -85,7 +98,7 @@ metadata: app.kubernetes.io/version: {{ include "knative-eventing.version" . }} app.kubernetes.io/name: knative-eventing rules: - - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"] + - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev", "sinks.knative.dev"] resources: ["*"] verbs: ["create", "update", "patch", "delete"] --- @@ -98,7 +111,6 @@ metadata: app.kubernetes.io/version: {{ include "knative-eventing.version" . }} app.kubernetes.io/name: knative-eventing rules: - - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"] + - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev", "sinks.knative.dev"] resources: ["*"] verbs: ["get", "list", "watch"] - diff --git a/charts/knative-eventing/templates/core/roles/controller-clusterroles.yaml b/charts/knative-eventing/templates/core/roles/controller-clusterroles.yaml index 6edb88c..54aaef4 100644 --- a/charts/knative-eventing/templates/core/roles/controller-clusterroles.yaml +++ b/charts/knative-eventing/templates/core/roles/controller-clusterroles.yaml @@ -60,11 +60,13 @@ rules: - "get" - "list" - "watch" - # PingSource controller manipulates Deployment owner reference + # PingSource and EventTransform controllers manipulate Deployment and ConfigMap owner reference - apiGroups: - "apps" + - "" resources: - "deployments/finalizers" + - "configmaps/finalizers" verbs: - "update" # The namespace annotation controller needs to manipulate RoleBindings. @@ -93,6 +95,8 @@ rules: - "eventtypes/status" - "eventpolicies" - "eventpolicies/status" + - "eventtransforms" + - "eventtransforms/status" verbs: - "get" - "list" @@ -106,6 +110,8 @@ rules: resources: - "jobsinks" - "jobsinks/status" + - "integrationsinks" + - "integrationsinks/status" verbs: - "get" - "list" @@ -120,12 +126,28 @@ rules: resources: - "brokers/finalizers" - "triggers/finalizers" + - "eventtransforms/finalizers" + verbs: + - "update" + # EventTransform controller manipulates SinkBinding owner reference + - apiGroups: + - "sources.knative.dev" + resources: + - "sinkbindings/finalizers" + verbs: + - "update" + # EventTransform controller manipulates Service owner reference + - apiGroups: + - "" + resources: + - "services/finalizers" verbs: - "update" - apiGroups: - "sinks.knative.dev" resources: - "jobsinks/finalizers" + - "integrationsinks/finalizers" verbs: - "update" # Our own resources and statuses we care about. @@ -203,4 +225,34 @@ rules: - "delete" - "patch" - "watch" - + - apiGroups: + - "cert-manager.io" + resources: + - "certificates" + verbs: + - "get" + - "list" + - "create" + - "update" + - "delete" + - "patch" + - "watch" + # EventTransform controller manipulates Certificate owner reference + - apiGroups: + - "cert-manager.io" + resources: + - "certificates/finalizers" + verbs: + - "update" + - apiGroups: + - "acme.cert-manager.io" + resources: + - "challenges" + verbs: + - "get" + - "list" + - "create" + - "update" + - "delete" + - "patch" + - "watch" diff --git a/charts/knative-eventing/templates/core/roles/source-observer-clusterrole.yaml b/charts/knative-eventing/templates/core/roles/source-observer-clusterrole.yaml index 5ecdc27..e0995d7 100644 --- a/charts/knative-eventing/templates/core/roles/source-observer-clusterrole.yaml +++ b/charts/knative-eventing/templates/core/roles/source-observer-clusterrole.yaml @@ -41,6 +41,7 @@ rules: - pingsources - sinkbindings - containersources + - integrationsources verbs: - get - list diff --git a/charts/knative-eventing/templates/core/roles/sources-controller-clusterroles.yaml b/charts/knative-eventing/templates/core/roles/sources-controller-clusterroles.yaml index 7d1ed98..c0cbd5b 100644 --- a/charts/knative-eventing/templates/core/roles/sources-controller-clusterroles.yaml +++ b/charts/knative-eventing/templates/core/roles/sources-controller-clusterroles.yaml @@ -62,6 +62,9 @@ rules: - "containersources" - "containersources/status" - "containersources/finalizers" + - "integrationsources" + - "integrationsources/status" + - "integrationsources/finalizers" verbs: - "get" - "list" diff --git a/charts/knative-eventing/templates/crds/eventpolicy.yaml b/charts/knative-eventing/templates/crds/eventpolicy.yaml index 4eac743..2dc4148 100644 --- a/charts/knative-eventing/templates/crds/eventpolicy.yaml +++ b/charts/knative-eventing/templates/crds/eventpolicy.yaml @@ -207,12 +207,4 @@ spec: - knative - eventing scope: Namespaced - conversion: - strategy: Webhook - webhook: - conversionReviewVersions: ["v1", "v1beta1"] - clientConfig: - service: - name: eventing-webhook - namespace: {{ .Release.Namespace }} {{- end }} diff --git a/charts/knative-eventing/templates/crds/eventtransforms.yaml b/charts/knative-eventing/templates/crds/eventtransforms.yaml new file mode 100644 index 0000000..9acca3b --- /dev/null +++ b/charts/knative-eventing/templates/crds/eventtransforms.yaml @@ -0,0 +1,279 @@ +# Copyright 2025 The Knative Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +{{- if .Values.crds.install }} +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: eventtransforms.eventing.knative.dev + labels: + {{- include "knative-eventing.labels" . | nindent 4 }} +spec: + group: eventing.knative.dev + versions: + - name: v1alpha1 + served: true + storage: true + subresources: + status: {} + schema: + openAPIV3Schema: + type: object + properties: + spec: + description: Spec defines the desired state of the EventTransform. + type: object + properties: + jsonata: + type: object + properties: + expression: + description: Expression is the JSONata expression (https://jsonata.org/). + type: string + reply: + description: | + Reply is the configuration on how to handle responses from Sink. It can only be set if Sink is set. + Only one "type" can be used. + The used type must match the top-level transformation, if you need to mix transformation types, use compositions and chain transformations together to achieve your desired outcome. + type: object + properties: + jsonata: + type: object + properties: + expression: + description: Expression is the JSONata expression (https://jsonata.org/). + type: string + discard: + description: | + Discard discards responses from Sink and return empty response body. + When set to false, it returns the exact sink response body. + When set to true, Discard is mutually exclusive with EventTransformations in the reply + section, it can either be discarded or transformed. + Default: false. + type: boolean + sink: + description: 'Sink is a reference to an object that will resolve to a uri to use as the sink. If not present, the transformation will send back the transformed event as response, this is useful to leverage the built-in Broker reply feature to re-publish a transformed event back to the broker. ' + type: object + properties: + CACerts: + description: CACerts are Certification Authority (CA) certificates in PEM format according to https://www.rfc-editor.org/rfc/rfc7468. If set, these CAs are appended to the set of CAs provided by the Addressable target, if any. + type: string + audience: + description: Audience is the OIDC audience. This need only be set, if the target is not an Addressable and thus the Audience can't be received from the Addressable itself. In case the Addressable specifies an Audience too, the Destinations Audience takes preference. + type: string + ref: + description: Ref points to an Addressable. + type: object + properties: + address: + description: Address points to a specific Address Name. + type: string + apiVersion: + description: API version of the referent. + type: string + group: + description: 'Group of the API, without the version of the group. This can be used as an alternative to the APIVersion, and then resolved using ResolveGroup. Note: This API is EXPERIMENTAL and might break anytime. For more details: https://github.com/knative/eventing/issues/5086' + 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 + 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 + status: + description: Status represents the current state of the EventTransform. This data may be out of date. + type: object + properties: + address: + description: Address is a single Addressable address. If Addresses is present, Address will be ignored by clients. + type: object + required: + - url + properties: + CACerts: + description: CACerts is the Certification Authority (CA) certificates in PEM format according to https://www.rfc-editor.org/rfc/rfc7468. + type: string + audience: + description: Audience is the OIDC audience for this address. + type: string + name: + description: Name is the name of the address. + type: string + url: + type: string + addresses: + description: Addresses is a list of addresses for different protocols (HTTP and HTTPS) If Addresses is present, Address must be ignored by clients. + type: array + items: + type: object + required: + - url + properties: + CACerts: + description: CACerts is the Certification Authority (CA) certificates in PEM format according to https://www.rfc-editor.org/rfc/rfc7468. + type: string + audience: + description: Audience is the OIDC audience for this address. + type: string + name: + description: Name is the name of the address. + type: string + url: + type: string + 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 + auth: + description: Auth defines the attributes that provide the generated service account name in the resource status. + type: object + required: + - serviceAccountName + properties: + serviceAccountName: + description: ServiceAccountName is the name of the generated service account used for this components OIDC authentication. + type: string + serviceAccountNames: + description: ServiceAccountNames is the list of names of the generated service accounts used for this components OIDC authentication. This list can have len() > 1, when the component uses multiple identities (e.g. in case of a Parallel). + type: array + items: + type: string + conditions: + description: Conditions the latest available observations of a resource's current state. + type: array + items: + type: object + required: + - type + - status + 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 + jsonata: + description: JsonataTransformationStatus is the status associated with JsonataEventTransformationSpec. + type: object + properties: + deployment: + type: object + properties: + availableReplicas: + description: Total number of available pods (ready for at least minReadySeconds) targeted by this deployment. + type: integer + format: int32 + collisionCount: + description: Count of hash collisions for the Deployment. The Deployment controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ReplicaSet. + type: integer + format: int32 + conditions: + description: Represents the latest available observations of a deployment's current state. + type: array + items: + type: object + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status to another. + type: string + lastUpdateTime: + description: The last time this condition was updated. + 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 + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of deployment condition. + type: string + observedGeneration: + description: The generation observed by the deployment controller. + type: integer + format: int64 + readyReplicas: + description: readyReplicas is the number of pods targeted by this Deployment with a Ready Condition. + type: integer + format: int32 + replicas: + description: Total number of non-terminated pods targeted by this deployment (their labels match the selector). + type: integer + format: int32 + unavailableReplicas: + description: Total number of unavailable pods targeted by this deployment. This is the total number of pods that are still required for the deployment to have 100% available capacity. They may either be pods that are running but not yet available or pods that still have not been created. + type: integer + format: int32 + updatedReplicas: + description: Total number of non-terminated pods targeted by this deployment that have the desired template spec. + type: integer + format: int32 + observedGeneration: + description: ObservedGeneration is the 'Generation' of the Service that was last processed by the controller. + type: integer + format: int64 + sinkAudience: + description: SinkAudience is the OIDC audience of the sink. + type: string + sinkCACerts: + description: SinkCACerts are Certification Authority (CA) certificates in PEM format according to https://www.rfc-editor.org/rfc/rfc7468. + type: string + sinkUri: + description: SinkURI is the current active sink URI that has been configured for the Source. + type: string + additionalPrinterColumns: + - name: URL + type: string + jsonPath: ".status.address.url" + - name: Sink + type: string + jsonPath: ".status.sinkUri" + - name: Ready + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].status" + - name: Reason + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].reason" + names: + kind: EventTransform + plural: eventtransforms + singular: eventtransform + categories: + - all + - knative + - eventing + scope: Namespaced +{{- end }} diff --git a/charts/knative-eventing/templates/crds/integrationsinks.yaml b/charts/knative-eventing/templates/crds/integrationsinks.yaml new file mode 100644 index 0000000..f9b808c --- /dev/null +++ b/charts/knative-eventing/templates/crds/integrationsinks.yaml @@ -0,0 +1,392 @@ +# Copyright 2020 The Knative Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +{{- if .Values.crds.install }} +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: integrationsinks.sinks.knative.dev + labels: + {{- include "knative-eventing.labels" . | nindent 4 }} +spec: + group: sinks.knative.dev + versions: + - name: v1alpha1 + served: true + storage: true + subresources: + status: {} + schema: + openAPIV3Schema: + description: 'IntegrationSink sends events to generic event sink' + type: object + properties: + spec: + description: Spec defines the desired state of the IntegrationSink. + type: object + properties: + log: + type: object + properties: + loggerName: + type: string + title: Logger Name + description: Name of the logging category to use + default: log-sink + level: + type: string + title: Log Level + description: Logging level to use + default: INFO + logMask: + type: boolean + title: Log Mask + description: Mask sensitive information like password or passphrase in the log + default: false + marker: + type: string + title: Marker + description: An optional Marker name to use + multiline: + type: boolean + title: Multiline + description: If enabled then each information is outputted on a newline + default: false + showAllProperties: + type: boolean + title: Show All Properties + description: Show all of the exchange properties (both internal and custom) + default: false + showBody: + type: boolean + title: Show Body + description: Show the message body + default: true + showBodyType: + type: boolean + title: Show Body Type + description: Show the body Java type + default: true + showExchangePattern: + type: boolean + title: Show Exchange Pattern + description: Shows the Message Exchange Pattern (or MEP for short) + default: true + showHeaders: + type: boolean + title: Show Headers + description: Show the headers received + default: false + showProperties: + type: boolean + title: Show Properties + description: Show the exchange properties (only custom). Use showAllProperties to show both internal and custom properties. + default: false + showStreams: + type: boolean + title: Show Streams + description: Show the stream bodies (they may not be available in following steps) + default: false + showCachedStreams: + type: boolean + title: Show Cached Streams + description: Whether Camel should show cached stream bodies or not. + default: true + aws: + type: object + properties: + s3: + type: object + properties: + arn: + type: string + title: Bucket Name + description: The S3 Bucket name or Amazon Resource Name (ARN). + deleteAfterRead: + type: boolean + title: Auto-delete Objects + description: Specifies to delete objects after consuming them. + default: true + moveAfterRead: + type: boolean + title: Move Objects After Delete + description: Move objects from S3 bucket to a different bucket after they have been retrieved. + default: false + destinationBucket: + type: string + title: Destination Bucket + description: Define the destination bucket where an object must be moved when moveAfterRead is set to true. + destinationBucketPrefix: + type: string + title: Destination Bucket Prefix + description: Define the destination bucket prefix to use when an object must be moved, and moveAfterRead is set to true. + destinationBucketSuffix: + type: string + title: Destination Bucket Suffix + description: Define the destination bucket suffix to use when an object must be moved, and moveAfterRead is set to true. + region: + type: string + title: AWS Region + description: The AWS region to access. + autoCreateBucket: + type: boolean + title: Autocreate Bucket + description: Specifies to automatically create the S3 bucket. + default: false + prefix: + type: string + title: Prefix + description: The AWS S3 bucket prefix to consider while searching. + example: folder/ + ignoreBody: + type: boolean + title: Ignore Body + description: If true, the S3 Object body is ignored. Setting this to true overrides any behavior defined by the `includeBody` option. If false, the S3 object is put in the body. + default: false + uriEndpointOverride: + type: string + title: Overwrite Endpoint URI + description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option. + overrideEndpoint: + type: boolean + title: Endpoint Overwrite + description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option. + default: false + forcePathStyle: + type: boolean + title: Force Path Style + description: Forces path style when accessing AWS S3 buckets. + default: false + delay: + type: integer + title: Delay + description: The number of milliseconds before the next poll of the selected bucket. + default: 500 + maxMessagesPerPoll: + type: integer + title: Max Messages Per Poll + description: Gets the maximum number of messages as a limit to poll at each polling. Gets the maximum number of messages as a limit to poll at each polling. The default value is 10. Use 0 or a negative number to set it as unlimited. + default: 10 + sqs: + type: object + properties: + arn: + type: string + title: Queue Name + description: The SQS Queue Name or ARN + deleteAfterRead: + type: boolean + title: Auto-delete Messages + description: Delete messages after consuming them + default: true + region: + type: string + title: AWS Region + description: The AWS region to access. + autoCreateQueue: + type: boolean + title: Autocreate Queue + description: Setting the autocreation of the SQS queue. + default: false + host: + type: string + title: AWS Host + description: The hostname of the Amazon AWS cloud. + default: amazonaws.com + protocol: + type: string + title: Protocol + description: The underlying protocol used to communicate with SQS + default: https + example: http or https + queueURL: + type: string + title: Queue URL + description: The full SQS Queue URL (required if using KEDA) + uriEndpointOverride: + type: string + title: Overwrite Endpoint URI + description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option. + overrideEndpoint: + type: boolean + title: Endpoint Overwrite + description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option. + default: false + delay: + type: integer + title: Delay + description: The number of milliseconds before the next poll of the selected stream + default: 500 + greedy: + type: boolean + title: Greedy Scheduler + description: If greedy is enabled, then the polling will happen immediately again, if the previous run polled 1 or more messages. + default: false + maxMessagesPerPoll: + type: integer + title: Max Messages Per Poll + description: The maximum number of messages to return. Amazon SQS never returns more messages than this value (however, fewer messages might be returned). Valid values 1 to 10. Default 1. + default: 1 + waitTimeSeconds: + type: integer + title: Wait Time Seconds + description: The duration (in seconds) for which the call waits for a message to arrive in the queue before returning. If a message is available, the call returns sooner than WaitTimeSeconds. If no messages are available and the wait time expires, the call does not return a message list. + visibilityTimeout: + type: integer + title: Visibility Timeout + description: The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request. + sns: + type: object + properties: + arn: + type: string + title: Topic Name + description: The SNS topic name name or Amazon Resource Name (ARN). + region: + type: string + title: AWS Region + description: The AWS region to access. + autoCreateTopic: + type: boolean + title: Autocreate Topic + description: Setting the autocreation of the SNS topic. + default: false + uriEndpointOverride: + type: string + title: Overwrite Endpoint URI + description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option. + overrideEndpoint: + type: boolean + title: Endpoint Overwrite + description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option. + default: false + auth: + description: 'Auth configurations' + type: object + properties: + secret: + description: 'Auth secret' + type: object + properties: + ref: + description: | + Secret reference. + type: object + required: + - name + properties: + name: + description: 'Secret name' + type: string + status: + description: Status represents the current state of the IntegrationSink. This data may be out of date. + type: object + properties: + address: + description: IntegrationSink is Addressable. It exposes the endpoints as URIs to get events delivered into the used Kamelet. + type: object + properties: + name: + type: string + url: + type: string + CACerts: + type: string + audience: + type: string + addresses: + description: IntegrationSink is Addressable. It exposes the endpoints as URIs to get events delivered into the used Kamelet. + type: array + items: + type: object + properties: + name: + type: string + url: + type: string + CACerts: + type: string + audience: + type: string + 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 + policies: + description: List of applied EventPolicies + type: array + items: + type: object + properties: + apiVersion: + description: The API version of the applied EventPolicy. This indicates, which version of EventPolicy is supported by the resource. + type: string + name: + description: The name of the applied EventPolicy + type: string + conditions: + description: Conditions the latest available observations of a resource's current state. + type: array + items: + type: object + required: + - type + - status + 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 + observedGeneration: + description: ObservedGeneration is the 'Generation' of the Service that was last processed by the controller. + type: integer + format: int64 + additionalPrinterColumns: + - name: URL + type: string + jsonPath: .status.address.url + - name: Age + type: date + jsonPath: .metadata.creationTimestamp + - name: Ready + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].status" + - name: Reason + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].reason" + names: + kind: IntegrationSink + plural: integrationsinks + singular: integrationsink + categories: + - all + - knative + - eventing + - sink + scope: Namespaced +{{- end }} diff --git a/charts/knative-eventing/templates/crds/integrationsources.yaml b/charts/knative-eventing/templates/crds/integrationsources.yaml new file mode 100644 index 0000000..ee26577 --- /dev/null +++ b/charts/knative-eventing/templates/crds/integrationsources.yaml @@ -0,0 +1,381 @@ +# Copyright 2020 The Knative Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +{{- if .Values.crds.install }} +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: integrationsources.sources.knative.dev + labels: + {{- include "knative-eventing.labels" . | nindent 4 }} +spec: + group: sources.knative.dev + versions: + - name: v1alpha1 + served: true + storage: true + subresources: + status: {} + schema: + openAPIV3Schema: + description: 'IntegrationSource is an event source that starts a container image which generates events under certain situations and sends messages to a sink URI' + type: object + properties: + spec: + type: object + properties: + ceOverrides: + description: CloudEventOverrides defines overrides to control the output format and modifications of the event sent to the sink. + type: object + 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 + sink: + description: Sink is a reference to an object that will resolve to a uri to use as the sink. + type: object + properties: + ref: + description: Ref points to an Addressable. + type: object + 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 + 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 + CACerts: + description: CACerts is the Certification Authority (CA) certificates in PEM format that the source trusts when sending events to the sink. + type: string + audience: + description: Audience is the OIDC audience. This only needs to be set if the target is not an Addressable and thus the Audience can't be received from the target itself. If specified, it takes precedence over the target's Audience. + type: string + timer: + type: object + properties: + period: + type: integer + title: Period + description: The interval (in milliseconds) to wait between producing the next message. + default: 1000 + message: + type: string + title: Message + description: The message to generate. + example: hello world + contentType: + type: string + title: Content Type + description: The content type of the generated message. + default: text/plain + repeatCount: + type: integer + title: Repeat Count + description: Specifies a maximum limit of number of fires + aws: + type: object + properties: + s3: + type: object + properties: + arn: + type: string + title: Bucket Name + description: The S3 Bucket name or Amazon Resource Name (ARN). + deleteAfterRead: + type: boolean + title: Auto-delete Objects + description: Specifies to delete objects after consuming them. + default: true + moveAfterRead: + type: boolean + title: Move Objects After Delete + description: Move objects from S3 bucket to a different bucket after they have been retrieved. + default: false + destinationBucket: + type: string + title: Destination Bucket + description: Define the destination bucket where an object must be moved when moveAfterRead is set to true. + destinationBucketPrefix: + type: string + title: Destination Bucket Prefix + description: Define the destination bucket prefix to use when an object must be moved, and moveAfterRead is set to true. + destinationBucketSuffix: + type: string + title: Destination Bucket Suffix + description: Define the destination bucket suffix to use when an object must be moved, and moveAfterRead is set to true. + region: + type: string + title: AWS Region + description: The AWS region to access. + autoCreateBucket: + type: boolean + title: Autocreate Bucket + description: Specifies to automatically create the S3 bucket. + default: false + prefix: + type: string + title: Prefix + description: The AWS S3 bucket prefix to consider while searching. + example: folder/ + ignoreBody: + type: boolean + title: Ignore Body + description: If true, the S3 Object body is ignored. Setting this to true overrides any behavior defined by the `includeBody` option. If false, the S3 object is put in the body. + default: false + uriEndpointOverride: + type: string + title: Overwrite Endpoint URI + description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option. + overrideEndpoint: + type: boolean + title: Endpoint Overwrite + description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option. + default: false + forcePathStyle: + type: boolean + title: Force Path Style + description: Forces path style when accessing AWS S3 buckets. + default: false + delay: + type: integer + title: Delay + description: The number of milliseconds before the next poll of the selected bucket. + default: 500 + maxMessagesPerPoll: + type: integer + title: Max Messages Per Poll + description: Gets the maximum number of messages as a limit to poll at each polling. Gets the maximum number of messages as a limit to poll at each polling. The default value is 10. Use 0 or a negative number to set it as unlimited. + default: 10 + sqs: + type: object + properties: + arn: + type: string + title: Queue Name + description: The SQS Queue Name or ARN + deleteAfterRead: + type: boolean + title: Auto-delete Messages + description: Delete messages after consuming them + default: true + region: + type: string + title: AWS Region + description: The AWS region to access. + autoCreateQueue: + type: boolean + title: Autocreate Queue + description: Setting the autocreation of the SQS queue. + default: false + host: + type: string + title: AWS Host + description: The hostname of the Amazon AWS cloud. + default: amazonaws.com + protocol: + type: string + title: Protocol + description: The underlying protocol used to communicate with SQS + default: https + example: http or https + queueURL: + type: string + title: Queue URL + description: The full SQS Queue URL (required if using KEDA) + uriEndpointOverride: + type: string + title: Overwrite Endpoint URI + description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option. + overrideEndpoint: + type: boolean + title: Endpoint Overwrite + description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option. + default: false + delay: + type: integer + title: Delay + description: The number of milliseconds before the next poll of the selected stream + default: 500 + greedy: + type: boolean + title: Greedy Scheduler + description: If greedy is enabled, then the polling will happen immediately again, if the previous run polled 1 or more messages. + default: false + maxMessagesPerPoll: + type: integer + title: Max Messages Per Poll + description: The maximum number of messages to return. Amazon SQS never returns more messages than this value (however, fewer messages might be returned). Valid values 1 to 10. Default 1. + default: 1 + waitTimeSeconds: + type: integer + title: Wait Time Seconds + description: The duration (in seconds) for which the call waits for a message to arrive in the queue before returning. If a message is available, the call returns sooner than WaitTimeSeconds. If no messages are available and the wait time expires, the call does not return a message list. + visibilityTimeout: + type: integer + title: Visibility Timeout + description: The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request. + ddbStreams: + type: object + properties: + table: + type: string + title: Table + description: The name of the DynamoDB table. + region: + type: string + title: AWS Region + description: The AWS region to access. + streamIteratorType: + type: string + title: Stream Iterator Type + description: Defines where in the DynamoDB stream to start getting records. There are two enums and the value can be one of FROM_LATEST and FROM_START. Note that using FROM_START can cause a significant delay before the stream has caught up to real-time. + default: FROM_LATEST + uriEndpointOverride: + type: string + title: Overwrite Endpoint URI + description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option. + overrideEndpoint: + type: boolean + title: Endpoint Overwrite + description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option. + default: false + delay: + type: integer + title: Delay + description: The number of milliseconds before the next poll from the database. + default: 500 + auth: + description: 'Auth configurations' + type: object + properties: + secret: + description: 'Auth secret' + type: object + properties: + ref: + description: | + Secret reference. + type: object + required: + - name + properties: + name: + description: 'Secret name' + type: string + status: + type: object + 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 + auth: + description: Auth provides the relevant information for OIDC authentication. + type: object + properties: + serviceAccountName: + description: ServiceAccountName is the name of the generated service account used for this components OIDC authentication. + type: string + serviceAccountNames: + description: ServiceAccountNames is the list of names of the generated service accounts used for this components OIDC authentication. + type: array + items: + type: string + ceAttributes: + description: CloudEventAttributes are the specific attributes that the Source uses as part of its CloudEvents. + type: array + items: + type: object + properties: + source: + description: Source is the CloudEvents source attribute. + type: string + type: + description: Type refers to the CloudEvent type attribute. + type: string + conditions: + description: Conditions the latest available observations of a resource's current state. + type: array + items: + type: object + required: + - type + - status + 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 + observedGeneration: + description: ObservedGeneration is the 'Generation' of the Service that was last processed by the controller. + type: integer + format: int64 + sinkUri: + description: SinkURI is the current active sink URI that has been configured for the Source. + type: string + sinkCACerts: + description: CACerts is the Certification Authority (CA) certificates in PEM format that the source trusts when sending events to the sink. + type: string + sinkAudience: + description: Audience is the OIDC audience of the sink. + type: string + additionalPrinterColumns: + - name: Sink + type: string + jsonPath: ".status.sinkUri" + - name: Age + type: date + jsonPath: .metadata.creationTimestamp + - name: Ready + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].status" + - name: Reason + type: string + jsonPath: ".status.conditions[?(@.type=='Ready')].reason" + names: + categories: + - all + - knative + - sources + kind: IntegrationSource + plural: integrationsources + singular: integrationsource + scope: Namespaced +{{- end }} diff --git a/charts/knative-eventing/templates/crds/jobsink.yaml b/charts/knative-eventing/templates/crds/jobsink.yaml index 3efac43..958144d 100644 --- a/charts/knative-eventing/templates/crds/jobsink.yaml +++ b/charts/knative-eventing/templates/crds/jobsink.yaml @@ -93,10 +93,6 @@ spec: name: description: The name of the applied EventPolicy type: string - observedGeneration: - description: ObservedGeneration is the 'Generation' of the Service that was last processed by the controller. - type: integer - format: int64 conditions: description: Conditions the latest available observations of a resource's current state. type: array diff --git a/charts/knative-eventing/templates/crds/requestreplies.yaml b/charts/knative-eventing/templates/crds/requestreplies.yaml new file mode 100644 index 0000000..48af930 --- /dev/null +++ b/charts/knative-eventing/templates/crds/requestreplies.yaml @@ -0,0 +1,213 @@ +# Copyright 2024 The Knative Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +{{- if .Values.crds.install }} +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: requestreplies.eventing.knative.dev + labels: + {{- include "knative-eventing.labels" . | nindent 4 }} +spec: + group: eventing.knative.dev + versions: + - name: v1alpha1 + served: true + storage: true + subresources: + status: {} + schema: + openAPIV3Schema: + type: object + properties: + spec: + description: Spec defines the desired state of the RequestReply. + type: object + properties: + brokerRef: + description: A KReference referring to the broker this RequestReply forwards events to. CrossNamespace references are not allowed. + type: object + properties: + apiVersion: + description: API Version of the broker. + type: string + kind: + description: 'Kind of the broker. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the broker. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + correlationAttribute: + description: The name of the cloudevent attribute where the correlation id will be set on new events. + type: string + replyAttribute: + description: The name of the cloudevents attribute which will hold the correlation id for an event which will be treated as a reply. + type: string + secrets: + description: A list of the names of one or more secrets used to sign the correlation ids and reply ids. The secrets must be in the same namespace as the requestreply resource. + type: array + items: + type: string + timeout: + description: A ISO8601 string representing how long RequestReply holds onto an incoming request before it times out without a reply. + type: string + delivery: + description: Delivery contains the delivery spec for each trigger to this Broker. Each trigger delivery spec, if any, overrides this global delivery spec. + type: object + properties: + backoffDelay: + description: 'BackoffDelay is the delay before retrying. More information on Duration format: - https://www.iso.org/iso-8601-date-and-time-format.html - https://en.wikipedia.org/wiki/ISO_8601 For linear policy, backoff delay is backoffDelay*. For exponential policy, backoff delay is backoffDelay*2^.' + type: string + backoffPolicy: + description: BackoffPolicy is the retry backoff policy (linear, exponential). + type: string + deadLetterSink: + description: DeadLetterSink is the sink receiving event that could not be sent to a destination. + type: object + properties: + ref: + description: Ref points to an Addressable. + type: object + 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 + 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 + CACerts: + description: Certification Authority (CA) certificates in PEM format that the source trusts when sending events to the sink. + type: string + audience: + description: Audience is the OIDC audience. This only needs to be set if the target is not an Addressable and thus the Audience can't be received from the target itself. If specified, it takes precedence over the target's Audience. + type: string + retry: + description: Retry is the minimum number of retries the sender should attempt when sending an event before moving it to the dead letter sink. + type: integer + format: int32 + x-kubernetes-preserve-unknown-fields: true # This is necessary to enable the experimental feature delivery-timeout + status: + description: Status represents the current state of the RequestReply. This data may be out of date. + type: object + 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 + conditions: + description: Conditions the latest available observations of a resource's current state. + type: array + items: + type: object + required: + - type + - status + 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 + address: + description: RequestReply is Addressable. It exposes the endpoint as an URI to get events delivered. + type: object + properties: + name: + type: string + url: + type: string + CACerts: + type: string + audience: + type: string + addresses: + description: RequestReply is Addressable. It exposes the endpoints as URIs to get events delivered. + type: array + items: + type: object + properties: + name: + type: string + url: + type: string + CACerts: + type: string + audience: + type: string + policies: + description: List of applied EventPolicies + type: array + items: + type: object + properties: + apiVersion: + description: The API version of the applied EventPolicy. This indicates whichversion of EventPolicy is supported by the resource. + type: string + name: + description: The name of the applied EventPolicy + type: string + observedGeneration: + description: ObservedGeneration is the 'Generation' of the Service that was last processed by the controller. + type: integer + format: int64 + additionalPrinterColumns: + - name: URL + type: string + jsonPath: ".status.address.url" + - name: Ready + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].status" + - name: Reason + type: string + jsonPath: ".status.conditions[?(@.type==\"Ready\")].reason" + names: + kind: RequestReply + plural: requestreplies + singular: requestreply + categories: + - all + - knative + - eventing + scope: Namespaced + conversion: + strategy: Webhook + webhook: + conversionReviewVersions: ["v1", "v1beta1"] + clientConfig: + service: + name: eventing-webhook + namespace: knative-eventing +{{- end }} diff --git a/charts/knative-eventing/values.yaml b/charts/knative-eventing/values.yaml index 27ef89a..1925ae5 100644 --- a/charts/knative-eventing/values.yaml +++ b/charts/knative-eventing/values.yaml @@ -156,7 +156,7 @@ controller: registry: gcr.io repository: knative-releases/knative.dev/eventing/cmd/controller tag: "" - digest: sha256:59df8234b78293ba2bed205412b7954d89e9f984bbbc06304db80cfae17732ad + digest: sha256:ce51558f682c971060d42ca7d4c77500644c3729dc11b35e395fca9710b3bc50 pullPolicy: IfNotPresent ## e.g. ## pullSecrets: @@ -174,7 +174,7 @@ controller: registry: gcr.io repository: knative-releases/knative.dev/eventing/cmd/apiserver_receive_adapter tag: "" - digest: sha256:950cd3722edec8a2c2dc172041c91f3e0767ea04953ab46cbb5299f3c260339c + digest: sha256:a3bff70afe19197888ca4fb199413cd5f50f764657e8c69471e4e2b0561ee836 ## @param controller.containerPorts.metrics ## @param controller.containerPorts.profiling ## @param controller.containerPorts.probes @@ -263,7 +263,7 @@ jobsink: registry: gcr.io repository: knative-releases/knative.dev/eventing/cmd/jobsink tag: "" - digest: sha256:179fc419e15fb5fbc910519d215704f76b31d578ea0c01fb03f644dfbb80482e + digest: sha256:db31f3058da6d13dfa0294877a3a6a45c75ea2ee41d6b4c2f7ac4eb52e419804 pullPolicy: IfNotPresent ## e.g. ## pullSecrets: @@ -358,7 +358,7 @@ mtping: registry: gcr.io repository: knative-releases/knative.dev/eventing/cmd/mtping tag: "" - digest: sha256:b53e8328a443353bb81679b42ad308e20086ab28461f6837833cf7b305d7013a + digest: sha256:adaf68a6923c7ef64e4cd8d0a08b7ff0ecaa9b99bdc73b4f944c1c0643c03ee2 pullPolicy: IfNotPresent ## e.g. ## pullSecrets: @@ -369,6 +369,7 @@ mtping: ## containerPorts: metrics: 9090 + probes: 8080 ## @param mtping.serviceAccount.create Specifies whether a ServiceAccount should be created ## @param mtping.serviceAccount.name The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template ## @param mtping.serviceAccount.annotations Annotations to add to the ServiceAccount Metadata @@ -423,7 +424,7 @@ webhook: registry: gcr.io repository: knative-releases/knative.dev/eventing/cmd/webhook tag: "" - digest: sha256:85a30e337fa82da02759548d13782983735b2e8df89bac01fea20e0d35343003 + digest: sha256:29b4ea133bd78d1e89179ced50c58f86291c14ea40661af2e2e888bb551e3967 pullPolicy: IfNotPresent ## e.g. ## pullSecrets: diff --git a/helmfile.yaml b/helmfile.yaml index b22b1e6..9038b4a 100644 --- a/helmfile.yaml +++ b/helmfile.yaml @@ -17,3 +17,7 @@ releases: - name: net-kourier namespace: knative-serving chart: ./charts/net-kourier + +- name: knative-eventing + namespace: knative-eventing + chart: ./charts/knative-eventing