github.com/argoproj/argo-events@v1.9.1/pkg/apis/eventbus/v1alpha1/openapi_generated.go (about) 1 //go:build !ignore_autogenerated 2 // +build !ignore_autogenerated 3 4 /* 5 Copyright 2021 BlackRock, Inc. 6 7 Licensed under the Apache License, Version 2.0 (the "License"); 8 you may not use this file except in compliance with the License. 9 You may obtain a copy of the License at 10 11 http://www.apache.org/licenses/LICENSE-2.0 12 13 Unless required by applicable law or agreed to in writing, software 14 distributed under the License is distributed on an "AS IS" BASIS, 15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 See the License for the specific language governing permissions and 17 limitations under the License. 18 */ 19 20 // Code generated by openapi-gen. DO NOT EDIT. 21 22 // This file was autogenerated by openapi-gen. Do not edit it manually! 23 24 package v1alpha1 25 26 import ( 27 common "k8s.io/kube-openapi/pkg/common" 28 spec "k8s.io/kube-openapi/pkg/validation/spec" 29 ) 30 31 func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition { 32 return map[string]common.OpenAPIDefinition{ 33 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.BusConfig": schema_pkg_apis_eventbus_v1alpha1_BusConfig(ref), 34 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate": schema_pkg_apis_eventbus_v1alpha1_ContainerTemplate(ref), 35 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBus": schema_pkg_apis_eventbus_v1alpha1_EventBus(ref), 36 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusList": schema_pkg_apis_eventbus_v1alpha1_EventBusList(ref), 37 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusSpec": schema_pkg_apis_eventbus_v1alpha1_EventBusSpec(ref), 38 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusStatus": schema_pkg_apis_eventbus_v1alpha1_EventBusStatus(ref), 39 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamBus": schema_pkg_apis_eventbus_v1alpha1_JetStreamBus(ref), 40 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamConfig": schema_pkg_apis_eventbus_v1alpha1_JetStreamConfig(ref), 41 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaBus": schema_pkg_apis_eventbus_v1alpha1_KafkaBus(ref), 42 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaConsumerGroup": schema_pkg_apis_eventbus_v1alpha1_KafkaConsumerGroup(ref), 43 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSBus": schema_pkg_apis_eventbus_v1alpha1_NATSBus(ref), 44 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSConfig": schema_pkg_apis_eventbus_v1alpha1_NATSConfig(ref), 45 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NativeStrategy": schema_pkg_apis_eventbus_v1alpha1_NativeStrategy(ref), 46 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.PersistenceStrategy": schema_pkg_apis_eventbus_v1alpha1_PersistenceStrategy(ref), 47 } 48 } 49 50 func schema_pkg_apis_eventbus_v1alpha1_BusConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { 51 return common.OpenAPIDefinition{ 52 Schema: spec.Schema{ 53 SchemaProps: spec.SchemaProps{ 54 Description: "BusConfig has the finalized configuration for EventBus", 55 Type: []string{"object"}, 56 Properties: map[string]spec.Schema{ 57 "nats": { 58 SchemaProps: spec.SchemaProps{ 59 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSConfig"), 60 }, 61 }, 62 "jetstream": { 63 SchemaProps: spec.SchemaProps{ 64 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamConfig"), 65 }, 66 }, 67 "kafka": { 68 SchemaProps: spec.SchemaProps{ 69 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaBus"), 70 }, 71 }, 72 }, 73 }, 74 }, 75 Dependencies: []string{ 76 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamConfig", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaBus", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSConfig"}, 77 } 78 } 79 80 func schema_pkg_apis_eventbus_v1alpha1_ContainerTemplate(ref common.ReferenceCallback) common.OpenAPIDefinition { 81 return common.OpenAPIDefinition{ 82 Schema: spec.Schema{ 83 SchemaProps: spec.SchemaProps{ 84 Description: "ContainerTemplate defines customized spec for a container", 85 Type: []string{"object"}, 86 Properties: map[string]spec.Schema{ 87 "resources": { 88 SchemaProps: spec.SchemaProps{ 89 Default: map[string]interface{}{}, 90 Ref: ref("k8s.io/api/core/v1.ResourceRequirements"), 91 }, 92 }, 93 "imagePullPolicy": { 94 SchemaProps: spec.SchemaProps{ 95 Type: []string{"string"}, 96 Format: "", 97 }, 98 }, 99 "securityContext": { 100 SchemaProps: spec.SchemaProps{ 101 Ref: ref("k8s.io/api/core/v1.SecurityContext"), 102 }, 103 }, 104 }, 105 }, 106 }, 107 Dependencies: []string{ 108 "k8s.io/api/core/v1.ResourceRequirements", "k8s.io/api/core/v1.SecurityContext"}, 109 } 110 } 111 112 func schema_pkg_apis_eventbus_v1alpha1_EventBus(ref common.ReferenceCallback) common.OpenAPIDefinition { 113 return common.OpenAPIDefinition{ 114 Schema: spec.Schema{ 115 SchemaProps: spec.SchemaProps{ 116 Description: "EventBus is the definition of a eventbus resource", 117 Type: []string{"object"}, 118 Properties: map[string]spec.Schema{ 119 "kind": { 120 SchemaProps: spec.SchemaProps{ 121 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", 122 Type: []string{"string"}, 123 Format: "", 124 }, 125 }, 126 "apiVersion": { 127 SchemaProps: spec.SchemaProps{ 128 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", 129 Type: []string{"string"}, 130 Format: "", 131 }, 132 }, 133 "metadata": { 134 SchemaProps: spec.SchemaProps{ 135 Default: map[string]interface{}{}, 136 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 137 }, 138 }, 139 "spec": { 140 SchemaProps: spec.SchemaProps{ 141 Default: map[string]interface{}{}, 142 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusSpec"), 143 }, 144 }, 145 "status": { 146 SchemaProps: spec.SchemaProps{ 147 Default: map[string]interface{}{}, 148 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusStatus"), 149 }, 150 }, 151 }, 152 Required: []string{"metadata", "spec"}, 153 }, 154 }, 155 Dependencies: []string{ 156 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusSpec", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBusStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"}, 157 } 158 } 159 160 func schema_pkg_apis_eventbus_v1alpha1_EventBusList(ref common.ReferenceCallback) common.OpenAPIDefinition { 161 return common.OpenAPIDefinition{ 162 Schema: spec.Schema{ 163 SchemaProps: spec.SchemaProps{ 164 Description: "EventBusList is the list of eventbus resources", 165 Type: []string{"object"}, 166 Properties: map[string]spec.Schema{ 167 "kind": { 168 SchemaProps: spec.SchemaProps{ 169 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", 170 Type: []string{"string"}, 171 Format: "", 172 }, 173 }, 174 "apiVersion": { 175 SchemaProps: spec.SchemaProps{ 176 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", 177 Type: []string{"string"}, 178 Format: "", 179 }, 180 }, 181 "metadata": { 182 SchemaProps: spec.SchemaProps{ 183 Default: map[string]interface{}{}, 184 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 185 }, 186 }, 187 "items": { 188 SchemaProps: spec.SchemaProps{ 189 Type: []string{"array"}, 190 Items: &spec.SchemaOrArray{ 191 Schema: &spec.Schema{ 192 SchemaProps: spec.SchemaProps{ 193 Default: map[string]interface{}{}, 194 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBus"), 195 }, 196 }, 197 }, 198 }, 199 }, 200 }, 201 Required: []string{"metadata", "items"}, 202 }, 203 }, 204 Dependencies: []string{ 205 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.EventBus", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"}, 206 } 207 } 208 209 func schema_pkg_apis_eventbus_v1alpha1_EventBusSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 210 return common.OpenAPIDefinition{ 211 Schema: spec.Schema{ 212 SchemaProps: spec.SchemaProps{ 213 Description: "EventBusSpec refers to specification of eventbus resource", 214 Type: []string{"object"}, 215 Properties: map[string]spec.Schema{ 216 "nats": { 217 SchemaProps: spec.SchemaProps{ 218 Description: "NATS eventbus", 219 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSBus"), 220 }, 221 }, 222 "jetstream": { 223 SchemaProps: spec.SchemaProps{ 224 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamBus"), 225 }, 226 }, 227 "kafka": { 228 SchemaProps: spec.SchemaProps{ 229 Description: "Kafka eventbus", 230 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaBus"), 231 }, 232 }, 233 "jetstreamExotic": { 234 SchemaProps: spec.SchemaProps{ 235 Description: "Exotic JetStream", 236 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamConfig"), 237 }, 238 }, 239 }, 240 }, 241 }, 242 Dependencies: []string{ 243 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamBus", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.JetStreamConfig", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaBus", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSBus"}, 244 } 245 } 246 247 func schema_pkg_apis_eventbus_v1alpha1_EventBusStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 248 return common.OpenAPIDefinition{ 249 Schema: spec.Schema{ 250 SchemaProps: spec.SchemaProps{ 251 Description: "EventBusStatus holds the status of the eventbus resource", 252 Type: []string{"object"}, 253 Properties: map[string]spec.Schema{ 254 "conditions": { 255 VendorExtensible: spec.VendorExtensible{ 256 Extensions: spec.Extensions{ 257 "x-kubernetes-patch-merge-key": "type", 258 "x-kubernetes-patch-strategy": "merge", 259 }, 260 }, 261 SchemaProps: spec.SchemaProps{ 262 Description: "Conditions are the latest available observations of a resource's current state.", 263 Type: []string{"array"}, 264 Items: &spec.SchemaOrArray{ 265 Schema: &spec.Schema{ 266 SchemaProps: spec.SchemaProps{ 267 Default: map[string]interface{}{}, 268 Ref: ref("github.com/argoproj/argo-events/pkg/apis/common.Condition"), 269 }, 270 }, 271 }, 272 }, 273 }, 274 "config": { 275 SchemaProps: spec.SchemaProps{ 276 Description: "Config holds the fininalized configuration of EventBus", 277 Default: map[string]interface{}{}, 278 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.BusConfig"), 279 }, 280 }, 281 }, 282 }, 283 }, 284 Dependencies: []string{ 285 "github.com/argoproj/argo-events/pkg/apis/common.Condition", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.BusConfig"}, 286 } 287 } 288 289 func schema_pkg_apis_eventbus_v1alpha1_JetStreamBus(ref common.ReferenceCallback) common.OpenAPIDefinition { 290 return common.OpenAPIDefinition{ 291 Schema: spec.Schema{ 292 SchemaProps: spec.SchemaProps{ 293 Description: "JetStreamBus holds the JetStream EventBus information", 294 Type: []string{"object"}, 295 Properties: map[string]spec.Schema{ 296 "version": { 297 SchemaProps: spec.SchemaProps{ 298 Description: "JetStream version, such as \"2.7.3\"", 299 Type: []string{"string"}, 300 Format: "", 301 }, 302 }, 303 "replicas": { 304 SchemaProps: spec.SchemaProps{ 305 Description: "JetStream StatefulSet size", 306 Type: []string{"integer"}, 307 Format: "int32", 308 }, 309 }, 310 "containerTemplate": { 311 SchemaProps: spec.SchemaProps{ 312 Description: "ContainerTemplate contains customized spec for Nats JetStream container", 313 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate"), 314 }, 315 }, 316 "reloaderContainerTemplate": { 317 SchemaProps: spec.SchemaProps{ 318 Description: "ReloaderContainerTemplate contains customized spec for config reloader container", 319 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate"), 320 }, 321 }, 322 "metricsContainerTemplate": { 323 SchemaProps: spec.SchemaProps{ 324 Description: "MetricsContainerTemplate contains customized spec for metrics container", 325 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate"), 326 }, 327 }, 328 "persistence": { 329 SchemaProps: spec.SchemaProps{ 330 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.PersistenceStrategy"), 331 }, 332 }, 333 "metadata": { 334 SchemaProps: spec.SchemaProps{ 335 Description: "Metadata sets the pods's metadata, i.e. annotations and labels", 336 Ref: ref("github.com/argoproj/argo-events/pkg/apis/common.Metadata"), 337 }, 338 }, 339 "nodeSelector": { 340 SchemaProps: spec.SchemaProps{ 341 Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/", 342 Type: []string{"object"}, 343 AdditionalProperties: &spec.SchemaOrBool{ 344 Allows: true, 345 Schema: &spec.Schema{ 346 SchemaProps: spec.SchemaProps{ 347 Default: "", 348 Type: []string{"string"}, 349 Format: "", 350 }, 351 }, 352 }, 353 }, 354 }, 355 "tolerations": { 356 SchemaProps: spec.SchemaProps{ 357 Description: "If specified, the pod's tolerations.", 358 Type: []string{"array"}, 359 Items: &spec.SchemaOrArray{ 360 Schema: &spec.Schema{ 361 SchemaProps: spec.SchemaProps{ 362 Default: map[string]interface{}{}, 363 Ref: ref("k8s.io/api/core/v1.Toleration"), 364 }, 365 }, 366 }, 367 }, 368 }, 369 "securityContext": { 370 SchemaProps: spec.SchemaProps{ 371 Description: "SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field.", 372 Ref: ref("k8s.io/api/core/v1.PodSecurityContext"), 373 }, 374 }, 375 "imagePullSecrets": { 376 VendorExtensible: spec.VendorExtensible{ 377 Extensions: spec.Extensions{ 378 "x-kubernetes-patch-merge-key": "name", 379 "x-kubernetes-patch-strategy": "merge", 380 }, 381 }, 382 SchemaProps: spec.SchemaProps{ 383 Description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. If specified, these secrets will be passed to individual puller implementations for them to use. For example, in the case of docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod", 384 Type: []string{"array"}, 385 Items: &spec.SchemaOrArray{ 386 Schema: &spec.Schema{ 387 SchemaProps: spec.SchemaProps{ 388 Default: map[string]interface{}{}, 389 Ref: ref("k8s.io/api/core/v1.LocalObjectReference"), 390 }, 391 }, 392 }, 393 }, 394 }, 395 "priorityClassName": { 396 SchemaProps: spec.SchemaProps{ 397 Description: "If specified, indicates the Redis pod's priority. \"system-node-critical\" and \"system-cluster-critical\" are two special keywords which indicate the highest priorities with the former being the highest priority. Any other name must be defined by creating a PriorityClass object with that name. If not specified, the pod priority will be default or zero if there is no default. More info: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/", 398 Type: []string{"string"}, 399 Format: "", 400 }, 401 }, 402 "priority": { 403 SchemaProps: spec.SchemaProps{ 404 Description: "The priority value. Various system components use this field to find the priority of the Redis pod. When Priority Admission Controller is enabled, it prevents users from setting this field. The admission controller populates this field from PriorityClassName. The higher the value, the higher the priority. More info: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/", 405 Type: []string{"integer"}, 406 Format: "int32", 407 }, 408 }, 409 "affinity": { 410 SchemaProps: spec.SchemaProps{ 411 Description: "The pod's scheduling constraints More info: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/", 412 Ref: ref("k8s.io/api/core/v1.Affinity"), 413 }, 414 }, 415 "serviceAccountName": { 416 SchemaProps: spec.SchemaProps{ 417 Description: "ServiceAccountName to apply to the StatefulSet", 418 Type: []string{"string"}, 419 Format: "", 420 }, 421 }, 422 "settings": { 423 SchemaProps: spec.SchemaProps{ 424 Description: "JetStream configuration, if not specified, global settings in controller-config will be used. See https://docs.nats.io/running-a-nats-service/configuration#jetstream. Only configure \"max_memory_store\" or \"max_file_store\", do not set \"store_dir\" as it has been hardcoded.", 425 Type: []string{"string"}, 426 Format: "", 427 }, 428 }, 429 "startArgs": { 430 SchemaProps: spec.SchemaProps{ 431 Description: "Optional arguments to start nats-server. For example, \"-D\" to enable debugging output, \"-DV\" to enable debugging and tracing. Check https://docs.nats.io/ for all the available arguments.", 432 Type: []string{"array"}, 433 Items: &spec.SchemaOrArray{ 434 Schema: &spec.Schema{ 435 SchemaProps: spec.SchemaProps{ 436 Default: "", 437 Type: []string{"string"}, 438 Format: "", 439 }, 440 }, 441 }, 442 }, 443 }, 444 "streamConfig": { 445 SchemaProps: spec.SchemaProps{ 446 Description: "Optional configuration for the streams to be created in this JetStream service, if specified, it will be merged with the default configuration in controller-config. It accepts a YAML format configuration, available fields include, \"maxBytes\", \"maxMsgs\", \"maxAge\" (e.g. 72h), \"replicas\" (1, 3, 5), \"duplicates\" (e.g. 5m).", 447 Type: []string{"string"}, 448 Format: "", 449 }, 450 }, 451 "maxPayload": { 452 SchemaProps: spec.SchemaProps{ 453 Description: "Maximum number of bytes in a message payload, 0 means unlimited. Defaults to 1MB", 454 Type: []string{"string"}, 455 Format: "", 456 }, 457 }, 458 }, 459 }, 460 }, 461 Dependencies: []string{ 462 "github.com/argoproj/argo-events/pkg/apis/common.Metadata", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.PersistenceStrategy", "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.LocalObjectReference", "k8s.io/api/core/v1.PodSecurityContext", "k8s.io/api/core/v1.Toleration"}, 463 } 464 } 465 466 func schema_pkg_apis_eventbus_v1alpha1_JetStreamConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { 467 return common.OpenAPIDefinition{ 468 Schema: spec.Schema{ 469 SchemaProps: spec.SchemaProps{ 470 Type: []string{"object"}, 471 Properties: map[string]spec.Schema{ 472 "url": { 473 SchemaProps: spec.SchemaProps{ 474 Description: "JetStream (Nats) URL", 475 Type: []string{"string"}, 476 Format: "", 477 }, 478 }, 479 "accessSecret": { 480 SchemaProps: spec.SchemaProps{ 481 Description: "Secret for auth", 482 Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), 483 }, 484 }, 485 "streamConfig": { 486 SchemaProps: spec.SchemaProps{ 487 Type: []string{"string"}, 488 Format: "", 489 }, 490 }, 491 }, 492 }, 493 }, 494 Dependencies: []string{ 495 "k8s.io/api/core/v1.SecretKeySelector"}, 496 } 497 } 498 499 func schema_pkg_apis_eventbus_v1alpha1_KafkaBus(ref common.ReferenceCallback) common.OpenAPIDefinition { 500 return common.OpenAPIDefinition{ 501 Schema: spec.Schema{ 502 SchemaProps: spec.SchemaProps{ 503 Description: "KafkaBus holds the KafkaBus EventBus information", 504 Type: []string{"object"}, 505 Properties: map[string]spec.Schema{ 506 "url": { 507 SchemaProps: spec.SchemaProps{ 508 Description: "URL to kafka cluster, multiple URLs separated by comma", 509 Type: []string{"string"}, 510 Format: "", 511 }, 512 }, 513 "topic": { 514 SchemaProps: spec.SchemaProps{ 515 Description: "Topic name, defaults to {namespace_name}-{eventbus_name}", 516 Type: []string{"string"}, 517 Format: "", 518 }, 519 }, 520 "version": { 521 SchemaProps: spec.SchemaProps{ 522 Description: "Kafka version, sarama defaults to the oldest supported stable version", 523 Type: []string{"string"}, 524 Format: "", 525 }, 526 }, 527 "tls": { 528 SchemaProps: spec.SchemaProps{ 529 Description: "TLS configuration for the kafka client.", 530 Ref: ref("github.com/argoproj/argo-events/pkg/apis/common.TLSConfig"), 531 }, 532 }, 533 "sasl": { 534 SchemaProps: spec.SchemaProps{ 535 Description: "SASL configuration for the kafka client", 536 Ref: ref("github.com/argoproj/argo-events/pkg/apis/common.SASLConfig"), 537 }, 538 }, 539 "consumerGroup": { 540 SchemaProps: spec.SchemaProps{ 541 Description: "Consumer group for kafka client", 542 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaConsumerGroup"), 543 }, 544 }, 545 }, 546 }, 547 }, 548 Dependencies: []string{ 549 "github.com/argoproj/argo-events/pkg/apis/common.SASLConfig", "github.com/argoproj/argo-events/pkg/apis/common.TLSConfig", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.KafkaConsumerGroup"}, 550 } 551 } 552 553 func schema_pkg_apis_eventbus_v1alpha1_KafkaConsumerGroup(ref common.ReferenceCallback) common.OpenAPIDefinition { 554 return common.OpenAPIDefinition{ 555 Schema: spec.Schema{ 556 SchemaProps: spec.SchemaProps{ 557 Type: []string{"object"}, 558 Properties: map[string]spec.Schema{ 559 "groupName": { 560 SchemaProps: spec.SchemaProps{ 561 Description: "Consumer group name, defaults to {namespace_name}-{sensor_name}", 562 Type: []string{"string"}, 563 Format: "", 564 }, 565 }, 566 "rebalanceStrategy": { 567 SchemaProps: spec.SchemaProps{ 568 Description: "Rebalance strategy can be one of: sticky, roundrobin, range. Range is the default.", 569 Type: []string{"string"}, 570 Format: "", 571 }, 572 }, 573 "startOldest": { 574 SchemaProps: spec.SchemaProps{ 575 Description: "When starting up a new group do we want to start from the oldest event (true) or the newest event (false), defaults to false", 576 Type: []string{"boolean"}, 577 Format: "", 578 }, 579 }, 580 }, 581 }, 582 }, 583 } 584 } 585 586 func schema_pkg_apis_eventbus_v1alpha1_NATSBus(ref common.ReferenceCallback) common.OpenAPIDefinition { 587 return common.OpenAPIDefinition{ 588 Schema: spec.Schema{ 589 SchemaProps: spec.SchemaProps{ 590 Description: "NATSBus holds the NATS eventbus information", 591 Type: []string{"object"}, 592 Properties: map[string]spec.Schema{ 593 "native": { 594 SchemaProps: spec.SchemaProps{ 595 Description: "Native means to bring up a native NATS service", 596 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NativeStrategy"), 597 }, 598 }, 599 "exotic": { 600 SchemaProps: spec.SchemaProps{ 601 Description: "Exotic holds an exotic NATS config", 602 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSConfig"), 603 }, 604 }, 605 }, 606 }, 607 }, 608 Dependencies: []string{ 609 "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NATSConfig", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.NativeStrategy"}, 610 } 611 } 612 613 func schema_pkg_apis_eventbus_v1alpha1_NATSConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { 614 return common.OpenAPIDefinition{ 615 Schema: spec.Schema{ 616 SchemaProps: spec.SchemaProps{ 617 Description: "NATSConfig holds the config of NATS", 618 Type: []string{"object"}, 619 Properties: map[string]spec.Schema{ 620 "url": { 621 SchemaProps: spec.SchemaProps{ 622 Description: "NATS streaming url", 623 Type: []string{"string"}, 624 Format: "", 625 }, 626 }, 627 "clusterID": { 628 SchemaProps: spec.SchemaProps{ 629 Description: "Cluster ID for nats streaming", 630 Type: []string{"string"}, 631 Format: "", 632 }, 633 }, 634 "auth": { 635 SchemaProps: spec.SchemaProps{ 636 Description: "Auth strategy, default to AuthStrategyNone", 637 Type: []string{"string"}, 638 Format: "", 639 }, 640 }, 641 "accessSecret": { 642 SchemaProps: spec.SchemaProps{ 643 Description: "Secret for auth", 644 Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), 645 }, 646 }, 647 }, 648 }, 649 }, 650 Dependencies: []string{ 651 "k8s.io/api/core/v1.SecretKeySelector"}, 652 } 653 } 654 655 func schema_pkg_apis_eventbus_v1alpha1_NativeStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { 656 return common.OpenAPIDefinition{ 657 Schema: spec.Schema{ 658 SchemaProps: spec.SchemaProps{ 659 Description: "NativeStrategy indicates to install a native NATS service", 660 Type: []string{"object"}, 661 Properties: map[string]spec.Schema{ 662 "replicas": { 663 SchemaProps: spec.SchemaProps{ 664 Description: "Size is the NATS StatefulSet size", 665 Type: []string{"integer"}, 666 Format: "int32", 667 }, 668 }, 669 "auth": { 670 SchemaProps: spec.SchemaProps{ 671 Type: []string{"string"}, 672 Format: "", 673 }, 674 }, 675 "persistence": { 676 SchemaProps: spec.SchemaProps{ 677 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.PersistenceStrategy"), 678 }, 679 }, 680 "containerTemplate": { 681 SchemaProps: spec.SchemaProps{ 682 Description: "ContainerTemplate contains customized spec for NATS container", 683 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate"), 684 }, 685 }, 686 "metricsContainerTemplate": { 687 SchemaProps: spec.SchemaProps{ 688 Description: "MetricsContainerTemplate contains customized spec for metrics container", 689 Ref: ref("github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate"), 690 }, 691 }, 692 "nodeSelector": { 693 SchemaProps: spec.SchemaProps{ 694 Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/", 695 Type: []string{"object"}, 696 AdditionalProperties: &spec.SchemaOrBool{ 697 Allows: true, 698 Schema: &spec.Schema{ 699 SchemaProps: spec.SchemaProps{ 700 Default: "", 701 Type: []string{"string"}, 702 Format: "", 703 }, 704 }, 705 }, 706 }, 707 }, 708 "tolerations": { 709 SchemaProps: spec.SchemaProps{ 710 Description: "If specified, the pod's tolerations.", 711 Type: []string{"array"}, 712 Items: &spec.SchemaOrArray{ 713 Schema: &spec.Schema{ 714 SchemaProps: spec.SchemaProps{ 715 Default: map[string]interface{}{}, 716 Ref: ref("k8s.io/api/core/v1.Toleration"), 717 }, 718 }, 719 }, 720 }, 721 }, 722 "metadata": { 723 SchemaProps: spec.SchemaProps{ 724 Description: "Metadata sets the pods's metadata, i.e. annotations and labels", 725 Ref: ref("github.com/argoproj/argo-events/pkg/apis/common.Metadata"), 726 }, 727 }, 728 "securityContext": { 729 SchemaProps: spec.SchemaProps{ 730 Description: "SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field.", 731 Ref: ref("k8s.io/api/core/v1.PodSecurityContext"), 732 }, 733 }, 734 "maxAge": { 735 SchemaProps: spec.SchemaProps{ 736 Description: "Max Age of existing messages, i.e. \"72h\", “4h35m”", 737 Type: []string{"string"}, 738 Format: "", 739 }, 740 }, 741 "imagePullSecrets": { 742 VendorExtensible: spec.VendorExtensible{ 743 Extensions: spec.Extensions{ 744 "x-kubernetes-patch-merge-key": "name", 745 "x-kubernetes-patch-strategy": "merge", 746 }, 747 }, 748 SchemaProps: spec.SchemaProps{ 749 Description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. If specified, these secrets will be passed to individual puller implementations for them to use. For example, in the case of docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod", 750 Type: []string{"array"}, 751 Items: &spec.SchemaOrArray{ 752 Schema: &spec.Schema{ 753 SchemaProps: spec.SchemaProps{ 754 Default: map[string]interface{}{}, 755 Ref: ref("k8s.io/api/core/v1.LocalObjectReference"), 756 }, 757 }, 758 }, 759 }, 760 }, 761 "serviceAccountName": { 762 SchemaProps: spec.SchemaProps{ 763 Description: "ServiceAccountName to apply to NATS StatefulSet", 764 Type: []string{"string"}, 765 Format: "", 766 }, 767 }, 768 "priorityClassName": { 769 SchemaProps: spec.SchemaProps{ 770 Description: "If specified, indicates the EventSource pod's priority. \"system-node-critical\" and \"system-cluster-critical\" are two special keywords which indicate the highest priorities with the former being the highest priority. Any other name must be defined by creating a PriorityClass object with that name. If not specified, the pod priority will be default or zero if there is no default. More info: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/", 771 Type: []string{"string"}, 772 Format: "", 773 }, 774 }, 775 "priority": { 776 SchemaProps: spec.SchemaProps{ 777 Description: "The priority value. Various system components use this field to find the priority of the EventSource pod. When Priority Admission Controller is enabled, it prevents users from setting this field. The admission controller populates this field from PriorityClassName. The higher the value, the higher the priority. More info: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/", 778 Type: []string{"integer"}, 779 Format: "int32", 780 }, 781 }, 782 "affinity": { 783 SchemaProps: spec.SchemaProps{ 784 Description: "The pod's scheduling constraints More info: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/", 785 Ref: ref("k8s.io/api/core/v1.Affinity"), 786 }, 787 }, 788 "maxMsgs": { 789 SchemaProps: spec.SchemaProps{ 790 Description: "Maximum number of messages per channel, 0 means unlimited. Defaults to 1000000", 791 Type: []string{"integer"}, 792 Format: "int64", 793 }, 794 }, 795 "maxBytes": { 796 SchemaProps: spec.SchemaProps{ 797 Description: "Total size of messages per channel, 0 means unlimited. Defaults to 1GB", 798 Type: []string{"string"}, 799 Format: "", 800 }, 801 }, 802 "maxSubs": { 803 SchemaProps: spec.SchemaProps{ 804 Description: "Maximum number of subscriptions per channel, 0 means unlimited. Defaults to 1000", 805 Type: []string{"integer"}, 806 Format: "int64", 807 }, 808 }, 809 "maxPayload": { 810 SchemaProps: spec.SchemaProps{ 811 Description: "Maximum number of bytes in a message payload, 0 means unlimited. Defaults to 1MB", 812 Type: []string{"string"}, 813 Format: "", 814 }, 815 }, 816 "raftHeartbeatTimeout": { 817 SchemaProps: spec.SchemaProps{ 818 Description: "Specifies the time in follower state without a leader before attempting an election, i.e. \"72h\", “4h35m”. Defaults to 2s", 819 Type: []string{"string"}, 820 Format: "", 821 }, 822 }, 823 "raftElectionTimeout": { 824 SchemaProps: spec.SchemaProps{ 825 Description: "Specifies the time in candidate state without a leader before attempting an election, i.e. \"72h\", “4h35m”. Defaults to 2s", 826 Type: []string{"string"}, 827 Format: "", 828 }, 829 }, 830 "raftLeaseTimeout": { 831 SchemaProps: spec.SchemaProps{ 832 Description: "Specifies how long a leader waits without being able to contact a quorum of nodes before stepping down as leader, i.e. \"72h\", “4h35m”. Defaults to 1s", 833 Type: []string{"string"}, 834 Format: "", 835 }, 836 }, 837 "raftCommitTimeout": { 838 SchemaProps: spec.SchemaProps{ 839 Description: "Specifies the time without an Apply() operation before sending an heartbeat to ensure timely commit, i.e. \"72h\", “4h35m”. Defaults to 100ms", 840 Type: []string{"string"}, 841 Format: "", 842 }, 843 }, 844 }, 845 }, 846 }, 847 Dependencies: []string{ 848 "github.com/argoproj/argo-events/pkg/apis/common.Metadata", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.ContainerTemplate", "github.com/argoproj/argo-events/pkg/apis/eventbus/v1alpha1.PersistenceStrategy", "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.LocalObjectReference", "k8s.io/api/core/v1.PodSecurityContext", "k8s.io/api/core/v1.Toleration"}, 849 } 850 } 851 852 func schema_pkg_apis_eventbus_v1alpha1_PersistenceStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { 853 return common.OpenAPIDefinition{ 854 Schema: spec.Schema{ 855 SchemaProps: spec.SchemaProps{ 856 Description: "PersistenceStrategy defines the strategy of persistence", 857 Type: []string{"object"}, 858 Properties: map[string]spec.Schema{ 859 "storageClassName": { 860 SchemaProps: spec.SchemaProps{ 861 Description: "Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1", 862 Type: []string{"string"}, 863 Format: "", 864 }, 865 }, 866 "accessMode": { 867 SchemaProps: spec.SchemaProps{ 868 Description: "Available access modes such as ReadWriteOnce, ReadWriteMany https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes", 869 Type: []string{"string"}, 870 Format: "", 871 }, 872 }, 873 "volumeSize": { 874 SchemaProps: spec.SchemaProps{ 875 Description: "Volume size, e.g. 10Gi", 876 Ref: ref("k8s.io/apimachinery/pkg/api/resource.Quantity"), 877 }, 878 }, 879 }, 880 }, 881 }, 882 Dependencies: []string{ 883 "k8s.io/apimachinery/pkg/api/resource.Quantity"}, 884 } 885 }