--- # Source: rook-ceph/charts/rook-ceph/templates/resources.yaml apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.19.0 helm.sh/resource-policy: keep name: cephbuckettopics.ceph.rook.io spec: group: ceph.rook.io names: kind: CephBucketTopic listKind: CephBucketTopicList plural: cephbuckettopics shortNames: - cephbt singular: cephbuckettopic scope: Namespaced versions: - additionalPrinterColumns: - jsonPath: .status.phase name: Phase type: string - jsonPath: .metadata.creationTimestamp name: Age type: date name: v1 schema: openAPIV3Schema: description: CephBucketTopic represents a Ceph Object Topic for Bucket Notifications 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: type: object spec: description: BucketTopicSpec represent the spec of a Bucket Topic properties: endpoint: description: Contains the endpoint spec of the topic properties: amqp: description: Spec of AMQP endpoint properties: ackLevel: default: broker description: The ack level required for this topic (none/broker/routeable) enum: - none - broker - routeable type: string disableVerifySSL: description: Indicate whether the server certificate is validated by the client or not type: boolean exchange: description: Name of the exchange that is used to route messages based on topics minLength: 1 type: string uri: description: The URI of the AMQP endpoint to push notification to minLength: 1 type: string required: - exchange - uri type: object http: description: Spec of HTTP endpoint properties: disableVerifySSL: description: Indicate whether the server certificate is validated by the client or not type: boolean sendCloudEvents: description: 'Send the notifications with the CloudEvents header: https://github.com/cloudevents/spec/blob/main/cloudevents/adapters/aws-s3.md' type: boolean uri: description: The URI of the HTTP endpoint to push notification to minLength: 1 type: string required: - uri type: object kafka: description: Spec of Kafka endpoint properties: ackLevel: default: broker description: The ack level required for this topic (none/broker) enum: - none - broker type: string disableVerifySSL: description: Indicate whether the server certificate is validated by the client or not type: boolean mechanism: default: PLAIN description: The authentication mechanism for this topic (PLAIN/SCRAM-SHA-512/SCRAM-SHA-256/GSSAPI/OAUTHBEARER) enum: - PLAIN - SCRAM-SHA-512 - SCRAM-SHA-256 - GSSAPI - OAUTHBEARER type: string passwordSecretRef: description: The kafka password to use for authentication properties: key: description: The key of the secret to select from. Must be a valid secret key. type: string name: default: "" description: |- Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names type: string optional: description: Specify whether the Secret or its key must be defined type: boolean required: - key type: object x-kubernetes-map-type: atomic uri: description: The URI of the Kafka endpoint to push notification to minLength: 1 type: string useSSL: description: Indicate whether to use SSL when communicating with the broker type: boolean userSecretRef: description: The kafka user name to use for authentication properties: key: description: The key of the secret to select from. Must be a valid secret key. type: string name: default: "" description: |- Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names type: string optional: description: Specify whether the Secret or its key must be defined type: boolean required: - key type: object x-kubernetes-map-type: atomic required: - uri type: object type: object objectStoreName: description: The name of the object store on which to define the topic minLength: 1 type: string objectStoreNamespace: description: The namespace of the object store on which to define the topic minLength: 1 type: string opaqueData: description: Data which is sent in each event type: string persistent: description: Indication whether notifications to this endpoint are persistent or not type: boolean required: - endpoint - objectStoreName - objectStoreNamespace type: object status: description: BucketTopicStatus represents the Status of a CephBucketTopic properties: ARN: description: The ARN of the topic generated by the RGW nullable: true type: string observedGeneration: description: ObservedGeneration is the latest generation observed by the controller. format: int64 type: integer phase: type: string secrets: items: properties: name: description: name is unique within a namespace to reference a secret resource. type: string namespace: description: namespace defines the space within which the secret name must be unique. type: string resourceVersion: type: string uid: description: |- UID is a type that holds unique ID values, including UUIDs. Because we don't ONLY use UUIDs, this is an alias to string. Being a type captures intent and helps make sure that UIDs and names do not get conflated. type: string type: object x-kubernetes-map-type: atomic type: array type: object x-kubernetes-preserve-unknown-fields: true required: - metadata - spec type: object served: true storage: true subresources: status: {}