();
+
+ /**
+ * No args constructor for use in serialization
+ */
+ public ReplySpec() {
+ }
+
+ public ReplySpec(Boolean discard, JsonataEventTransformationSpec jsonata) {
+ super();
+ this.discard = discard;
+ this.jsonata = jsonata;
+ }
+
+ /**
+ * 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.
+ */
+ @JsonProperty("discard")
+ public Boolean getDiscard() {
+ return discard;
+ }
+
+ /**
+ * 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.
+ */
+ @JsonProperty("discard")
+ public void setDiscard(Boolean discard) {
+ this.discard = discard;
+ }
+
+ /**
+ * ReplySpec is the configurations on how to handle responses from Sink.
+ */
+ @JsonProperty("jsonata")
+ public JsonataEventTransformationSpec getJsonata() {
+ return jsonata;
+ }
+
+ /**
+ * ReplySpec is the configurations on how to handle responses from Sink.
+ */
+ @JsonProperty("jsonata")
+ public void setJsonata(JsonataEventTransformationSpec jsonata) {
+ this.jsonata = jsonata;
+ }
+
+ @JsonIgnore
+ public ReplySpecBuilder edit() {
+ return new ReplySpecBuilder(this);
+ }
+
+ @JsonIgnore
+ public ReplySpecBuilder toBuilder() {
+ return edit();
+ }
+
+ @JsonAnyGetter
+ @JsonIgnore
+ public Map getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ public void setAdditionalProperties(Map additionalProperties) {
+ this.additionalProperties = additionalProperties;
+ }
+
+}
diff --git a/kubernetes-model-generator/openapi/generator/go.mod b/kubernetes-model-generator/openapi/generator/go.mod
index a603bae894..3b5e8f037e 100644
--- a/kubernetes-model-generator/openapi/generator/go.mod
+++ b/kubernetes-model-generator/openapi/generator/go.mod
@@ -41,11 +41,11 @@ require (
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff
k8s.io/metrics v0.33.0
knative.dev/caching v0.0.0-20250415164313-8f20a1163dbf
- knative.dev/eventing v0.44.5
+ knative.dev/eventing v0.45.0
knative.dev/eventing-awssqs v0.29.0
knative.dev/eventing-couchdb v0.28.0
knative.dev/eventing-github v0.44.0
- knative.dev/eventing-gitlab v0.44.0
+ knative.dev/eventing-gitlab v0.45.0
knative.dev/eventing-kafka-broker v0.44.2
knative.dev/eventing-prometheus v0.28.0
knative.dev/networking v0.0.0-20250415164913-6268d931d247
diff --git a/kubernetes-model-generator/openapi/generator/go.sum b/kubernetes-model-generator/openapi/generator/go.sum
index d413ea9003..c9f9c4bc5f 100644
--- a/kubernetes-model-generator/openapi/generator/go.sum
+++ b/kubernetes-model-generator/openapi/generator/go.sum
@@ -2053,16 +2053,16 @@ knative.dev/caching v0.0.0-20250415164313-8f20a1163dbf h1:qQnKB6mx+beHzsoKU8aKrR
knative.dev/caching v0.0.0-20250415164313-8f20a1163dbf/go.mod h1:q8ma7YxJ8Dofr+5kf3qR72A/7Zxl9uqQlOdMwNgCXY4=
knative.dev/eventing v0.28.0/go.mod h1:zxoB37kQxEkfCvKA7wZuHOPYInz6SFJzrhmG9IAd/iY=
knative.dev/eventing v0.29.0/go.mod h1:u5T5NZTDUsLR7yJwp5MDnBnDX5MhywD3yK3Rq+7gTtI=
-knative.dev/eventing v0.44.5 h1:t1332j5ckjlBrW8DO7QmccAKRP8tewsp9INkA9zH92Q=
-knative.dev/eventing v0.44.5/go.mod h1:4ndE/NDntPvunnUl/q7MFbkX0pS/vKaMUFOXFRf1GWA=
+knative.dev/eventing v0.45.0 h1:LwNmhsw94isfEFOtjN1tpcduD5EzTKo4nbenTxSLd4o=
+knative.dev/eventing v0.45.0/go.mod h1:Fz5VjV/vWVN93UfTX3lzc+uFrvJ9wxiiKrRIPhQxoj8=
knative.dev/eventing-awssqs v0.29.0 h1:3g9zaBMuSVpwj6BOFFQl/XbCVX9dIljqhoWKdLfDVp4=
knative.dev/eventing-awssqs v0.29.0/go.mod h1:jtY5Pd4QrwbLyiviNWav7FMtx9NWaABY3EqGGz3NBNA=
knative.dev/eventing-couchdb v0.28.0 h1:wdwmonQ1cOEx/I9Ev8IhKUIkBth4L/r5wTpDggGacls=
knative.dev/eventing-couchdb v0.28.0/go.mod h1:kUoJgfUkPBWJFA/0meZCZzuX/3003hEBctN+7xyKKMo=
knative.dev/eventing-github v0.44.0 h1:F6vaUWuPmmvEWtPBXpBoDm0eUu26f996AeWIjqWTP8s=
knative.dev/eventing-github v0.44.0/go.mod h1:gOzPGCmZnNxrmwroPrQMNnadTT2wk2CgcY63tLeqEzQ=
-knative.dev/eventing-gitlab v0.44.0 h1:Qa6nQhHwGwGed5Cke/QxYJb3ePtQHrmfDphju2mh3Ys=
-knative.dev/eventing-gitlab v0.44.0/go.mod h1:U0+Ryimxoc9o2nt3/lGBsPMSRoOWvRlEZTpoPXp2M+s=
+knative.dev/eventing-gitlab v0.45.0 h1:PxCxqGNwZfY3RwhyGucLyuwthRgoDUGiB1hUzPcqqAI=
+knative.dev/eventing-gitlab v0.45.0/go.mod h1:DuPMWbY7FnH5boAc1o8ohcYUBZ/97kak5ss5RJx0BEQ=
knative.dev/eventing-kafka-broker v0.44.2 h1:D7xjhDxctgxtVnuXWhN4QEFT+yMnXwluJLelDk0w5lQ=
knative.dev/eventing-kafka-broker v0.44.2/go.mod h1:YJhe0Hd+BZ+YaWXFGnvIaPO+y1bVr1wgfnvkW24AVn0=
knative.dev/eventing-prometheus v0.28.0 h1:2VjDEL0Ck9s++uomjlOL4/Y824ziZjXZYWcNQsm53P0=
diff --git a/kubernetes-model-generator/openapi/schemas/dev.knative.json b/kubernetes-model-generator/openapi/schemas/dev.knative.json
index 9e387c9b4d..049ea64766 100644
--- a/kubernetes-model-generator/openapi/schemas/dev.knative.json
+++ b/kubernetes-model-generator/openapi/schemas/dev.knative.json
@@ -4782,6 +4782,222 @@
"Scope": "Namespaced"
}
},
+ "dev.knative.eventing.v1alpha1.EventTransform": {
+ "description": "EventTransform represents an even transformation.",
+ "type": "object",
+ "properties": {
+ "apiVersion": {
+ "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
+ "type": "string"
+ },
+ "kind": {
+ "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
+ "type": "string"
+ },
+ "metadata": {
+ "default": {},
+ "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
+ },
+ "spec": {
+ "description": "Spec defines the desired state of the EventTransform.",
+ "default": {},
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.EventTransformSpec"
+ },
+ "status": {
+ "description": "Status represents the current state of the EventTransform. This data may be out of date.",
+ "default": {},
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.EventTransformStatus"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "object",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "EventTransform",
+ "Scope": "Namespaced"
+ }
+ },
+ "dev.knative.eventing.v1alpha1.EventTransformList": {
+ "description": "EventTransformList is a collection of EventTransform.",
+ "type": "object",
+ "required": [
+ "items"
+ ],
+ "properties": {
+ "apiVersion": {
+ "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
+ "type": "string"
+ },
+ "items": {
+ "type": "array",
+ "items": {
+ "default": {},
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.EventTransform"
+ }
+ },
+ "kind": {
+ "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
+ "type": "string"
+ },
+ "metadata": {
+ "default": {},
+ "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "list",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "EventTransformList",
+ "Scope": "Namespaced"
+ }
+ },
+ "dev.knative.eventing.v1alpha1.EventTransformSpec": {
+ "type": "object",
+ "properties": {
+ "jsonata": {
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.JsonataEventTransformationSpec"
+ },
+ "reply": {
+ "description": "Reply is the configuration on how to handle responses from Sink. It can only be set if Sink is set.",
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.ReplySpec"
+ },
+ "sink": {
+ "description": "Sink is a reference to an object that will resolve to a uri to use as the sink.\n\nIf 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.",
+ "$ref": "#/definitions/dev.knative.duck.v1.Destination"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "nested",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "EventTransformSpec",
+ "Scope": "Namespaced"
+ }
+ },
+ "dev.knative.eventing.v1alpha1.EventTransformStatus": {
+ "description": "EventTransformStatus represents the current state of a EventTransform.",
+ "type": "object",
+ "properties": {
+ "address": {
+ "description": "Address is a single Addressable address. If Addresses is present, Address will be ignored by clients.",
+ "$ref": "#/definitions/dev.knative.duck.v1.Addressable"
+ },
+ "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": {
+ "default": {},
+ "$ref": "#/definitions/dev.knative.duck.v1.Addressable"
+ }
+ },
+ "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",
+ "additionalProperties": {
+ "type": "string",
+ "default": ""
+ }
+ },
+ "auth": {
+ "description": "Auth defines the attributes that provide the generated service account name in the resource status.",
+ "$ref": "#/definitions/dev.knative.duck.v1.AuthStatus"
+ },
+ "ceAttributes": {
+ "description": "CloudEventAttributes are the specific attributes that the Source uses as part of its CloudEvents.",
+ "type": "array",
+ "items": {
+ "default": {},
+ "$ref": "#/definitions/dev.knative.duck.v1.CloudEventAttributes"
+ }
+ },
+ "conditions": {
+ "description": "Conditions the latest available observations of a resource's current state.",
+ "type": "array",
+ "items": {
+ "default": {},
+ "$ref": "#/definitions/dev.knative.pkg.apis.Condition"
+ },
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge"
+ },
+ "jsonata": {
+ "description": "JsonataTransformationStatus is the status associated with JsonataEventTransformationSpec.",
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.JsonataEventTransformationStatus"
+ },
+ "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.",
+ "$ref": "#/definitions/dev.knative.pkg.apis.URL"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "nested",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "EventTransformStatus",
+ "Scope": "Namespaced"
+ }
+ },
+ "dev.knative.eventing.v1alpha1.EventTransformations": {
+ "type": "object",
+ "properties": {
+ "jsonata": {
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.JsonataEventTransformationSpec"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "nested",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "EventTransformations",
+ "Scope": "Namespaced"
+ }
+ },
+ "dev.knative.eventing.v1alpha1.JsonataEventTransformationSpec": {
+ "type": "object",
+ "properties": {
+ "expression": {
+ "description": "Expression is the JSONata expression.",
+ "type": "string"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "nested",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "JsonataEventTransformationSpec",
+ "Scope": "Namespaced"
+ }
+ },
+ "dev.knative.eventing.v1alpha1.JsonataEventTransformationStatus": {
+ "type": "object",
+ "properties": {
+ "deployment": {
+ "default": {},
+ "$ref": "#/definitions/io.k8s.api.apps.v1.DeploymentStatus"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "nested",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "JsonataEventTransformationStatus",
+ "Scope": "Namespaced"
+ }
+ },
"dev.knative.eventing.v1alpha1.KafkaSink": {
"description": "KafkaSink is an addressable resource that represent a Kafka topic.",
"type": "object",
@@ -4952,6 +5168,26 @@
"Scope": "Namespaced"
}
},
+ "dev.knative.eventing.v1alpha1.ReplySpec": {
+ "description": "ReplySpec is the configurations on how to handle responses from Sink.",
+ "type": "object",
+ "properties": {
+ "discard": {
+ "description": "Discard discards responses from Sink and return empty response body.\n\nWhen 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.\n\nDefault: false.",
+ "type": "boolean"
+ },
+ "jsonata": {
+ "$ref": "#/definitions/dev.knative.eventing.v1alpha1.JsonataEventTransformationSpec"
+ }
+ },
+ "x-fabric8-info": {
+ "Type": "nested",
+ "Group": "eventing.knative.dev",
+ "Version": "v1alpha1",
+ "Kind": "ReplySpec",
+ "Scope": "Namespaced"
+ }
+ },
"dev.knative.eventing.v1alpha1.RequestReply": {
"description": "RequestRepluy represents synchronous interface to sending and receiving events from a Broker.",
"type": "object",