Skip to content
Snippets Groups Projects
0thanosrulerCustomResourceDefinition.yaml 343 KiB
Newer Older
paulfantom's avatar
paulfantom committed
                                      type: object
                                    type: array
                                  name:
                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
paulfantom's avatar
paulfantom committed
                                    type: string
                                  optional:
                                    description: optional field specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                    type: boolean
                                type: object
                                x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                              serviceAccountToken:
                                description: serviceAccountToken is information about the serviceAccountToken data to project
paulfantom's avatar
paulfantom committed
                                properties:
                                  audience:
                                    description: audience is the intended audience of the token. A recipient of a token must identify itself with an identifier specified in the audience of the token, and otherwise should reject the token. The audience defaults to the identifier of the apiserver.
paulfantom's avatar
paulfantom committed
                                    type: string
                                  expirationSeconds:
                                    description: expirationSeconds is the requested duration of validity of the service account token. As the token approaches expiration, the kubelet volume plugin will proactively rotate the service account token. The kubelet will start trying to rotate the token if the token is older than 80 percent of its time to live or if the token is older than 24 hours.Defaults to 1 hour and must be at least 10 minutes.
paulfantom's avatar
paulfantom committed
                                    format: int64
                                    type: integer
                                  path:
                                    description: path is the path relative to the mount point of the file to project the token into.
paulfantom's avatar
paulfantom committed
                                    type: string
                                required:
                                - path
                                type: object
                            type: object
                          type: array
                      type: object
                    quobyte:
                      description: quobyte represents a Quobyte mount on the host that shares a pod's lifetime
paulfantom's avatar
paulfantom committed
                      properties:
                        group:
                          description: group to map volume access to Default is no group
                          type: string
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: readOnly here will force the Quobyte volume to be mounted with read-only permissions. Defaults to false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        registry:
                          description: registry represents a single or multiple Quobyte Registry services specified as a string as host:port pair (multiple entries are separated with commas) which acts as the central registry for volumes
paulfantom's avatar
paulfantom committed
                          type: string
                        tenant:
                          description: tenant owning the given Quobyte volume in the Backend Used with dynamically provisioned Quobyte volumes, value is set by the plugin
paulfantom's avatar
paulfantom committed
                          type: string
                        user:
                          description: user to map volume access to Defaults to serivceaccount user
paulfantom's avatar
paulfantom committed
                          type: string
                        volume:
                          description: volume is a string that references an already created Quobyte volume by name.
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - registry
                      - volume
                      type: object
                    rbd:
                      description: 'rbd represents a Rados Block Device mount on the host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: 'fsType is the filesystem type of the volume that you want to mount. Tip: Ensure that the filesystem type is supported by the host operating system. Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd TODO: how do we prevent errors in the filesystem from compromising the machine'
paulfantom's avatar
paulfantom committed
                          type: string
                        image:
                          description: 'image is the rados image name. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
paulfantom's avatar
paulfantom committed
                          type: string
                        keyring:
                          description: 'keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
paulfantom's avatar
paulfantom committed
                          type: string
                        monitors:
                          description: 'monitors is a collection of Ceph monitors. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
paulfantom's avatar
paulfantom committed
                          items:
                            type: string
paulfantom's avatar
paulfantom committed
                          type: array
                        pool:
                          description: 'pool is the rados pool name. Default is rbd. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: 'readOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: 'secretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
                          properties:
paulfantom's avatar
paulfantom committed
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
paulfantom's avatar
paulfantom committed
                              type: string
                          type: object
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        user:
                          description: 'user is the rados user name. Default is admin. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
                          type: string
paulfantom's avatar
paulfantom committed
                      required:
                      - image
                      - monitors
                      type: object
                    scaleIO:
                      description: scaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: fsType is the filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. "ext4", "xfs", "ntfs". Default is "xfs".
paulfantom's avatar
paulfantom committed
                          type: string
                        gateway:
                          description: gateway is the host address of the ScaleIO API Gateway.
paulfantom's avatar
paulfantom committed
                          type: string
                        protectionDomain:
                          description: protectionDomain is the name of the ScaleIO Protection Domain for the configured storage.
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: readOnly Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: secretRef references to the secret for ScaleIO user and other sensitive information. If this is not provided, Login operation will fail.
                          properties:
paulfantom's avatar
paulfantom committed
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
paulfantom's avatar
paulfantom committed
                          type: object
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        sslEnabled:
                          description: sslEnabled Flag enable/disable SSL communication with Gateway, default false
paulfantom's avatar
paulfantom committed
                          type: boolean
                        storageMode:
                          description: storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned. Default is ThinProvisioned.
paulfantom's avatar
paulfantom committed
                          type: string
                        storagePool:
                          description: storagePool is the ScaleIO Storage Pool associated with the protection domain.
paulfantom's avatar
paulfantom committed
                          type: string
                        system:
                          description: system is the name of the storage system as configured in ScaleIO.
paulfantom's avatar
paulfantom committed
                          type: string
                        volumeName:
                          description: volumeName is the name of a volume already created in the ScaleIO system that is associated with this volume source.
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - gateway
                      - secretRef
                      - system
                      type: object
                    secret:
                      description: 'secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
paulfantom's avatar
paulfantom committed
                      properties:
                        defaultMode:
                          description: 'defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        items:
                          description: items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'.
paulfantom's avatar
paulfantom committed
                          items:
                            description: Maps a string key to a path within a volume.
                            properties:
                              key:
                                description: key is the key to project.
paulfantom's avatar
paulfantom committed
                                type: string
                              mode:
                                description: 'mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.'
paulfantom's avatar
paulfantom committed
                                format: int32
                                type: integer
                              path:
                                description: path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.
paulfantom's avatar
paulfantom committed
                                type: string
                            required:
                            - key
                            - path
                            type: object
                          type: array
                        optional:
                          description: optional field specify whether the Secret or its keys must be defined
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretName:
                          description: 'secretName is the name of the secret in the pod''s namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
paulfantom's avatar
paulfantom committed
                          type: string
                      type: object
                    storageos:
                      description: storageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: fsType is the filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: readOnly defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: secretRef specifies the secret to use for obtaining the StorageOS API credentials.  If not specified, default values will be attempted.
paulfantom's avatar
paulfantom committed
                          properties:
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                          type: object
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        volumeName:
                          description: volumeName is the human-readable name of the StorageOS volume.  Volume names are only unique within a namespace.
paulfantom's avatar
paulfantom committed
                          type: string
                        volumeNamespace:
                          description: volumeNamespace specifies the scope of the volume within StorageOS.  If no namespace is specified then the Pod's namespace will be used.  This allows the Kubernetes name scoping to be mirrored within StorageOS for tighter integration. Set VolumeName to any name to override the default behaviour. Set to "default" if you are not using namespaces within StorageOS. Namespaces that do not pre-exist within StorageOS will be created.
paulfantom's avatar
paulfantom committed
                          type: string
                      type: object
                    vsphereVolume:
                      description: vsphereVolume represents a vSphere volume attached and mounted on kubelets host machine
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: fsType is filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
paulfantom's avatar
paulfantom committed
                          type: string
                        storagePolicyID:
                          description: storagePolicyID is the storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName.
paulfantom's avatar
paulfantom committed
                          type: string
                        storagePolicyName:
                          description: storagePolicyName is the storage Policy Based Management (SPBM) profile name.
paulfantom's avatar
paulfantom committed
                          type: string
                        volumePath:
                          description: volumePath is the path that identifies vSphere volume vmdk
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - volumePath
                      type: object
                  required:
                  - name
                  type: object
                type: array
            type: object
          status:
            description: 'Most recent observed status of the ThanosRuler cluster. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status'
paulfantom's avatar
paulfantom committed
            properties:
              availableReplicas:
                description: Total number of available pods (ready for at least minReadySeconds) targeted by this ThanosRuler deployment.
paulfantom's avatar
paulfantom committed
                format: int32
                type: integer
              conditions:
                description: The current state of the Alertmanager object.
                items:
                  description: Condition represents the state of the resources associated with the Prometheus, Alertmanager or ThanosRuler resource.
                  properties:
                    lastTransitionTime:
                      description: lastTransitionTime is the time of the last update to the current status property.
                      format: date-time
                      type: string
                    message:
                      description: Human-readable message indicating details for the condition's last transition.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if `.metadata.generation` is currently 12, but the `.status.conditions[].observedGeneration` is 9, the condition is out of date with respect to the current state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition.
                      type: string
                    status:
                      description: Status of the condition.
                      type: string
                    type:
                      description: Type of the condition being reported.
                      type: string
                  required:
                  - lastTransitionTime
                  - status
                  - type
                  type: object
                type: array
                x-kubernetes-list-map-keys:
                - type
                x-kubernetes-list-type: map
paulfantom's avatar
paulfantom committed
              paused:
                description: Represents whether any actions on the underlying managed objects are being performed. Only delete actions will be performed.
paulfantom's avatar
paulfantom committed
                type: boolean
              replicas:
                description: Total number of non-terminated pods targeted by this ThanosRuler deployment (their labels match the selector).
paulfantom's avatar
paulfantom committed
                format: int32
                type: integer
              unavailableReplicas:
                description: Total number of unavailable pods targeted by this ThanosRuler deployment.
paulfantom's avatar
paulfantom committed
                format: int32
                type: integer
              updatedReplicas:
                description: Total number of non-terminated pods targeted by this ThanosRuler deployment that have the desired version spec.
paulfantom's avatar
paulfantom committed
                format: int32
                type: integer
            required:
            - availableReplicas
            - paused
            - replicas
            - unavailableReplicas
            - updatedReplicas
            type: object
        required:
        - spec
        type: object
    served: true
    storage: true