Files
infrastructure/clusters/cl01tl/manifests/rook-ceph/CustomResourceDefinition-cephbuckettopics.ceph.rook.io

238 lines
11 KiB
Io

---
# 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: {}