Skip to content
Snippets Groups Projects
prometheus-operator-0thanosrulerCustomResourceDefinition.yaml 248 KiB
Newer Older
paulfantom's avatar
paulfantom committed
                                type: object
                              type: array
                            path:
                              description: Path to access on the HTTP server.
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                            scheme:
Jesse Bye's avatar
Jesse Bye committed
                              description: Scheme to use for connecting to the host. Defaults to HTTP.
paulfantom's avatar
paulfantom committed
                              type: string
                          required:
                          - port
                          type: object
                        initialDelaySeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        periodSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        successThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
paulfantom's avatar
paulfantom committed
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'Optional: Host name to connect to, defaults to the pod IP.'
paulfantom's avatar
paulfantom committed
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                          required:
                          - port
                          type: object
                        timeoutSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                      type: object
                    stdin:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    stdinOnce:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false
paulfantom's avatar
paulfantom committed
                      type: boolean
                    terminationMessagePath:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Optional: Path at which the file to which the container''s termination message will be written is mounted into the container''s filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.'
paulfantom's avatar
paulfantom committed
                      type: string
                    terminationMessagePolicy:
Jesse Bye's avatar
Jesse Bye committed
                      description: Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                    tty:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    volumeDevices:
Jesse Bye's avatar
Jesse Bye committed
                      description: volumeDevices is the list of block devices to be used by the container.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: volumeDevice describes a mapping of a raw block device within a container.
                        properties:
paulfantom's avatar
paulfantom committed
                          devicePath:
Jesse Bye's avatar
Jesse Bye committed
                            description: devicePath is the path inside of the container that the device will be mapped to.
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            description: name must match the name of a persistentVolumeClaim in the pod
                            type: string
                        required:
paulfantom's avatar
paulfantom committed
                        - devicePath
                        - name
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
                    volumeMounts:
Jesse Bye's avatar
Jesse Bye committed
                      description: Pod volumes to mount into the container's filesystem. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: VolumeMount describes a mounting of a Volume within a container.
                        properties:
paulfantom's avatar
paulfantom committed
                          mountPath:
Jesse Bye's avatar
Jesse Bye committed
                            description: Path within the container at which the volume should be mounted.  Must not contain ':'.
paulfantom's avatar
paulfantom committed
                            type: string
                          mountPropagation:
Jesse Bye's avatar
Jesse Bye committed
                            description: mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10.
paulfantom's avatar
paulfantom committed
                            type: string
                          name:
                            description: This must match the Name of a Volume.
                            type: string
                          readOnly:
Jesse Bye's avatar
Jesse Bye committed
                            description: Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false.
paulfantom's avatar
paulfantom committed
                            type: boolean
                          subPath:
Jesse Bye's avatar
Jesse Bye committed
                            description: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
paulfantom's avatar
paulfantom committed
                            type: string
                          subPathExpr:
Jesse Bye's avatar
Jesse Bye committed
                            description: Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive.
                            type: string
                        required:
paulfantom's avatar
paulfantom committed
                        - mountPath
                        - name
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
                    workingDir:
Jesse Bye's avatar
Jesse Bye committed
                      description: Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                  required:
                  - name
                  type: object
                type: array
              enforcedNamespaceLabel:
Jesse Bye's avatar
Jesse Bye committed
                description: EnforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created. The label value will always be the namespace of the object that is being created.
paulfantom's avatar
paulfantom committed
                type: string
              evaluationInterval:
                description: Interval between consecutive evaluations.
                type: string
              externalPrefix:
Jesse Bye's avatar
Jesse Bye committed
                description: The external URL the Thanos Ruler instances will be available under. This is necessary to generate correct URLs. This is necessary if Thanos Ruler is not served from root of a DNS name.
paulfantom's avatar
paulfantom committed
                type: string
              grpcServerTlsConfig:
Jesse Bye's avatar
Jesse Bye committed
                description: 'GRPCServerTLSConfig configures the gRPC server from which Thanos Querier reads recorded rule data. Note: Currently only the CAFile, CertFile, and KeyFile fields are supported. Maps to the ''--grpc-server-tls-*'' CLI args.'
paulfantom's avatar
paulfantom committed
                properties:
                  ca:
                    description: Struct containing the CA cert to use for the targets.
                    properties:
paulfantom's avatar
paulfantom committed
                      configMap:
                        description: ConfigMap containing data to use for the targets.
                        properties:
paulfantom's avatar
paulfantom committed
                          key:
                            description: The key to select.
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            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
                          optional:
Jesse Bye's avatar
Jesse Bye committed
                            description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                            type: boolean
                        required:
                        - key
                        type: object
paulfantom's avatar
paulfantom committed
                      secret:
                        description: Secret containing data to use for the targets.
                        properties:
paulfantom's avatar
paulfantom committed
                          key:
Jesse Bye's avatar
Jesse Bye committed
                            description: The key of the secret to select from.  Must be a valid secret key.
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            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
                          optional:
Jesse Bye's avatar
Jesse Bye committed
                            description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                            type: boolean
                        required:
                        - key
                        type: object
                    type: object
paulfantom's avatar
paulfantom committed
                  caFile:
Jesse Bye's avatar
Jesse Bye committed
                    description: Path to the CA cert in the Prometheus container to use for the targets.
paulfantom's avatar
paulfantom committed
                    type: string
                  cert:
                    description: Struct containing the client cert file for the targets.
                    properties:
paulfantom's avatar
paulfantom committed
                      configMap:
                        description: ConfigMap containing data to use for the targets.
                        properties:
paulfantom's avatar
paulfantom committed
                          key:
                            description: The key to select.
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            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
                          optional:
Jesse Bye's avatar
Jesse Bye committed
                            description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                            type: boolean
paulfantom's avatar
paulfantom committed
                        - key
                        type: object
paulfantom's avatar
paulfantom committed
                      secret:
                        description: Secret containing data to use for the targets.
                        properties:
paulfantom's avatar
paulfantom committed
                          key:
Jesse Bye's avatar
Jesse Bye committed
                            description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                            type: string
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            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
                          optional:
Jesse Bye's avatar
Jesse Bye committed
                            description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                            type: boolean
paulfantom's avatar
paulfantom committed
                        - key
                        type: object
                    type: object
paulfantom's avatar
paulfantom committed
                  certFile:
Jesse Bye's avatar
Jesse Bye committed
                    description: Path to the client cert file in the Prometheus container for the targets.
                    type: string
paulfantom's avatar
paulfantom committed
                  insecureSkipVerify:
                    description: Disable target certificate validation.
                    type: boolean
paulfantom's avatar
paulfantom committed
                  keyFile:
Jesse Bye's avatar
Jesse Bye committed
                    description: Path to the client key file in the Prometheus container for the targets.
paulfantom's avatar
paulfantom committed
                    type: string
                  keySecret:
                    description: Secret containing the client key file for the targets.
                    properties:
                      key:
Jesse Bye's avatar
Jesse Bye committed
                        description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                        type: string
                      name:
Jesse Bye's avatar
Jesse Bye committed
                        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:
Jesse Bye's avatar
Jesse Bye committed
                        description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                        type: boolean
                    required:
                    - key
                    type: object
                  serverName:
                    description: Used to verify the hostname for the targets.
                    type: string
                type: object
paulfantom's avatar
paulfantom committed
              image:
                description: Thanos container image URL.
                type: string
              imagePullSecrets:
Jesse Bye's avatar
Jesse Bye committed
                description: An optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
paulfantom's avatar
paulfantom committed
                items:
Jesse Bye's avatar
Jesse Bye committed
                  description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
                  properties:
                    name:
Jesse Bye's avatar
Jesse Bye committed
                      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
paulfantom's avatar
paulfantom committed
                type: array
              initContainers:
Jesse Bye's avatar
Jesse Bye committed
                description: 'InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. fetch secrets for injection into the ThanosRuler configuration from external sources. Any errors during the execution of an initContainer will lead to a restart of the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ Using initContainers for any use case other then secret fetching is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice.'
paulfantom's avatar
paulfantom committed
                items:
Jesse Bye's avatar
Jesse Bye committed
                  description: A single application container that you want to run within a pod.
paulfantom's avatar
paulfantom committed
                  properties:
                    args:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Arguments to the entrypoint. The docker image''s CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container''s environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
paulfantom's avatar
paulfantom committed
                      items:
                        type: string
                      type: array
                    command:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Entrypoint array. Not executed within a shell. The docker image''s ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container''s environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
paulfantom's avatar
paulfantom committed
                      items:
                        type: string
                      type: array
                    env:
Jesse Bye's avatar
Jesse Bye committed
                      description: List of environment variables to set in the container. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: EnvVar represents an environment variable present in a Container.
paulfantom's avatar
paulfantom committed
                        properties:
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            description: Name of the environment variable. Must be a C_IDENTIFIER.
paulfantom's avatar
paulfantom committed
                            type: string
                          value:
Jesse Bye's avatar
Jesse Bye committed
                            description: 'Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".'
paulfantom's avatar
paulfantom committed
                            type: string
                          valueFrom:
Jesse Bye's avatar
Jesse Bye committed
                            description: Source for the environment variable's value. Cannot be used if value is not empty.
paulfantom's avatar
paulfantom committed
                            properties:
                              configMapKeyRef:
                                description: Selects a key of a ConfigMap.
                                properties:
                                  key:
                                    description: The key to select.
                                    type: string
                                  name:
Jesse Bye's avatar
Jesse Bye committed
                                    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:
Jesse Bye's avatar
Jesse Bye committed
                                    description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                                    type: boolean
                                required:
                                - key
                                type: object
                              fieldRef:
Jesse Bye's avatar
Jesse Bye committed
                                description: 'Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels, metadata.annotations, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.'
paulfantom's avatar
paulfantom committed
                                properties:
                                  apiVersion:
Jesse Bye's avatar
Jesse Bye committed
                                    description: Version of the schema the FieldPath is written in terms of, defaults to "v1".
paulfantom's avatar
paulfantom committed
                                    type: string
                                  fieldPath:
Jesse Bye's avatar
Jesse Bye committed
                                    description: Path of the field to select in the specified API version.
paulfantom's avatar
paulfantom committed
                                    type: string
                                required:
                                - fieldPath
                                type: object
                              resourceFieldRef:
Jesse Bye's avatar
Jesse Bye committed
                                description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.'
paulfantom's avatar
paulfantom committed
                                properties:
                                  containerName:
Jesse Bye's avatar
Jesse Bye committed
                                    description: 'Container name: required for volumes, optional for env vars'
paulfantom's avatar
paulfantom committed
                                    type: string
                                  divisor:
Lili Cosic's avatar
Lili Cosic committed
                                    anyOf:
                                    - type: integer
                                    - type: string
Jesse Bye's avatar
Jesse Bye committed
                                    description: Specifies the output format of the exposed resources, defaults to "1"
Lili Cosic's avatar
Lili Cosic committed
                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                    x-kubernetes-int-or-string: true
paulfantom's avatar
paulfantom committed
                                  resource:
                                    description: 'Required: resource to select'
                                    type: string
                                required:
                                - resource
                                type: object
                              secretKeyRef:
Jesse Bye's avatar
Jesse Bye committed
                                description: Selects a key of a secret in the pod's namespace
paulfantom's avatar
paulfantom committed
                                properties:
                                  key:
Jesse Bye's avatar
Jesse Bye committed
                                    description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                                    type: string
                                  name:
Jesse Bye's avatar
Jesse Bye committed
                                    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:
Jesse Bye's avatar
Jesse Bye committed
                                    description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                    type: boolean
                                required:
                                - key
                                type: object
                            type: object
                        required:
                        - name
                        type: object
                      type: array
                    envFrom:
Jesse Bye's avatar
Jesse Bye committed
                      description: List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: EnvFromSource represents the source of a set of ConfigMaps
paulfantom's avatar
paulfantom committed
                        properties:
                          configMapRef:
                            description: The ConfigMap to select from
                            properties:
                              name:
Jesse Bye's avatar
Jesse Bye committed
                                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:
Jesse Bye's avatar
Jesse Bye committed
                                description: Specify whether the ConfigMap must be defined
paulfantom's avatar
paulfantom committed
                                type: boolean
                            type: object
                          prefix:
Jesse Bye's avatar
Jesse Bye committed
                            description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER.
paulfantom's avatar
paulfantom committed
                            type: string
                          secretRef:
                            description: The Secret to select from
                            properties:
                              name:
Jesse Bye's avatar
Jesse Bye committed
                                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: Specify whether the Secret must be defined
                                type: boolean
                            type: object
                        type: object
                      type: array
                    image:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets.'
                      type: string
paulfantom's avatar
paulfantom committed
                    imagePullPolicy:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images'
                      type: string
paulfantom's avatar
paulfantom committed
                    lifecycle:
Jesse Bye's avatar
Jesse Bye committed
                      description: Actions that the management system should take in response to container lifecycle events. Cannot be updated.
                      properties:
paulfantom's avatar
paulfantom committed
                        postStart:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
                          properties:
paulfantom's avatar
paulfantom committed
                            exec:
Jesse Bye's avatar
Jesse Bye committed
                              description: One and only one of the following should be specified. Exec specifies the action to take.
paulfantom's avatar
paulfantom committed
                              properties:
                                command:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Command is the command line to execute inside the container, the working directory for the command  is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
paulfantom's avatar
paulfantom committed
                                  items:
                                    type: string
                                  type: array
                              type: object
                            httpGet:
                              description: HTTPGet specifies the http request to perform.
                              properties:
paulfantom's avatar
paulfantom committed
                                host:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
paulfantom's avatar
paulfantom committed
                                  type: string
                                httpHeaders:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Custom headers to set in the request. HTTP allows repeated headers.
paulfantom's avatar
paulfantom committed
                                  items:
Jesse Bye's avatar
Jesse Bye committed
                                    description: HTTPHeader describes a custom header to be used in HTTP probes
paulfantom's avatar
paulfantom committed
                                    properties:
                                      name:
                                        description: The header field name
                                        type: string
                                      value:
                                        description: The header field value
                                        type: string
                                    required:
                                    - name
                                    - value
                                    type: object
                                  type: array
                                path:
                                  description: Path to access on the HTTP server.
                                  type: string
paulfantom's avatar
paulfantom committed
                                port:
                                  anyOf:
                                  - type: integer
                                  - type: string
Jesse Bye's avatar
Jesse Bye committed
                                  description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                                  x-kubernetes-int-or-string: true
                                scheme:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Scheme to use for connecting to the host. Defaults to HTTP.
                                  type: string
                              required:
paulfantom's avatar
paulfantom committed
                              - port
                              type: object
paulfantom's avatar
paulfantom committed
                            tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
                              properties:
paulfantom's avatar
paulfantom committed
                                host:
Jesse Bye's avatar
Jesse Bye committed
                                  description: 'Optional: Host name to connect to, defaults to the pod IP.'
                                  type: string
paulfantom's avatar
paulfantom committed
                                port:
                                  anyOf:
                                  - type: integer
                                  - type: string
Jesse Bye's avatar
Jesse Bye committed
                                  description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                                  x-kubernetes-int-or-string: true
paulfantom's avatar
paulfantom committed
                              - port
                              type: object
                          type: object
                        preStop:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The reason for termination is passed to the handler. The Pod''s termination grace period countdown begins before the PreStop hooked is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod''s termination grace period. Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
paulfantom's avatar
paulfantom committed
                          properties:
                            exec:
Jesse Bye's avatar
Jesse Bye committed
                              description: One and only one of the following should be specified. Exec specifies the action to take.
paulfantom's avatar
paulfantom committed
                              properties:
                                command:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Command is the command line to execute inside the container, the working directory for the command  is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
paulfantom's avatar
paulfantom committed
                                  items:
                                    type: string
                                  type: array
                              type: object
paulfantom's avatar
paulfantom committed
                            httpGet:
                              description: HTTPGet specifies the http request to perform.
                              properties:
paulfantom's avatar
paulfantom committed
                                host:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
                                  type: string
paulfantom's avatar
paulfantom committed
                                httpHeaders:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Custom headers to set in the request. HTTP allows repeated headers.
paulfantom's avatar
paulfantom committed
                                  items:
Jesse Bye's avatar
Jesse Bye committed
                                    description: HTTPHeader describes a custom header to be used in HTTP probes
paulfantom's avatar
paulfantom committed
                                    properties:
                                      name:
                                        description: The header field name
                                        type: string
                                      value:
                                        description: The header field value
                                        type: string
                                    required:
                                    - name
                                    - value
                                    type: object
                                  type: array
                                path:
                                  description: Path to access on the HTTP server.
                                  type: string
paulfantom's avatar
paulfantom committed
                                port:
                                  anyOf:
                                  - type: integer
                                  - type: string
Jesse Bye's avatar
Jesse Bye committed
                                  description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                                  x-kubernetes-int-or-string: true
                                scheme:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Scheme to use for connecting to the host. Defaults to HTTP.
                                  type: string
                              required:
paulfantom's avatar
paulfantom committed
                              - port
                              type: object
paulfantom's avatar
paulfantom committed
                            tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
                              properties:
paulfantom's avatar
paulfantom committed
                                host:
Jesse Bye's avatar
Jesse Bye committed
                                  description: 'Optional: Host name to connect to, defaults to the pod IP.'
                                  type: string
paulfantom's avatar
paulfantom committed
                                port:
                                  anyOf:
                                  - type: integer
                                  - type: string
Jesse Bye's avatar
Jesse Bye committed
                                  description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                                  x-kubernetes-int-or-string: true
paulfantom's avatar
paulfantom committed
                              - port
                              type: object
                          type: object
                      type: object
paulfantom's avatar
paulfantom committed
                    livenessProbe:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
                      properties:
paulfantom's avatar
paulfantom committed
                        exec:
Jesse Bye's avatar
Jesse Bye committed
                          description: One and only one of the following should be specified. Exec specifies the action to take.
                          properties:
paulfantom's avatar
paulfantom committed
                            command:
Jesse Bye's avatar
Jesse Bye committed
                              description: Command is the command line to execute inside the container, the working directory for the command  is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
paulfantom's avatar
paulfantom committed
                              items:
                                type: string
                              type: array
                          type: object
paulfantom's avatar
paulfantom committed
                        failureThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        httpGet:
                          description: HTTPGet specifies the http request to perform.
                          properties:
paulfantom's avatar
paulfantom committed
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
paulfantom's avatar
paulfantom committed
                              type: string
                            httpHeaders:
Jesse Bye's avatar
Jesse Bye committed
                              description: Custom headers to set in the request. HTTP allows repeated headers.
paulfantom's avatar
paulfantom committed
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: HTTPHeader describes a custom header to be used in HTTP probes
paulfantom's avatar
paulfantom committed
                                properties:
                                  name:
                                    description: The header field name
                                    type: string
                                  value:
                                    description: The header field value
                                    type: string
                                required:
                                - name
                                - value
                                type: object
                              type: array
                            path:
                              description: Path to access on the HTTP server.
                              type: string
paulfantom's avatar
paulfantom committed
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                            scheme:
Jesse Bye's avatar
Jesse Bye committed
                              description: Scheme to use for connecting to the host. Defaults to HTTP.
paulfantom's avatar
paulfantom committed
                              type: string
                          required:
                          - port
                          type: object
paulfantom's avatar
paulfantom committed
                        initialDelaySeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        periodSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        successThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
paulfantom's avatar
paulfantom committed
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'Optional: Host name to connect to, defaults to the pod IP.'
                              type: string
paulfantom's avatar
paulfantom committed
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                          required:
                          - port
                          type: object
                        timeoutSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                      type: object
                    name:
Jesse Bye's avatar
Jesse Bye committed
                      description: Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                    ports:
Jesse Bye's avatar
Jesse Bye committed
                      description: List of ports to expose from the container. Exposing a port here gives the system additional information about the network connections a container uses, but is primarily informational. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: ContainerPort represents a network port in a single container.
                        properties:
paulfantom's avatar
paulfantom committed
                          containerPort:
Jesse Bye's avatar
Jesse Bye committed
                            description: Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536.
paulfantom's avatar
paulfantom committed
                            format: int32
                            type: integer
                          hostIP:
                            description: What host IP to bind the external port to.
                            type: string
paulfantom's avatar
paulfantom committed
                          hostPort:
Jesse Bye's avatar
Jesse Bye committed
                            description: Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this.
paulfantom's avatar
paulfantom committed
                            format: int32
                            type: integer
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            description: If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services.
                            type: string
paulfantom's avatar
paulfantom committed
                          protocol:
Lili Cosic's avatar
Lili Cosic committed
                            default: TCP
Jesse Bye's avatar
Jesse Bye committed
                            description: Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP".
                            type: string
                        required:
paulfantom's avatar
paulfantom committed
                        - containerPort
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
Lili Cosic's avatar
Lili Cosic committed
                      x-kubernetes-list-map-keys:
                      - containerPort
                      - protocol
                      x-kubernetes-list-type: map
paulfantom's avatar
paulfantom committed
                    readinessProbe:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
                      properties:
paulfantom's avatar
paulfantom committed
                        exec:
Jesse Bye's avatar
Jesse Bye committed
                          description: One and only one of the following should be specified. Exec specifies the action to take.
paulfantom's avatar
paulfantom committed
                          properties:
                            command:
Jesse Bye's avatar
Jesse Bye committed
                              description: Command is the command line to execute inside the container, the working directory for the command  is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
paulfantom's avatar
paulfantom committed
                              items:
                                type: string
                              type: array
                          type: object
                        failureThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
                          format: int32
                          type: integer
paulfantom's avatar
paulfantom committed
                        httpGet:
                          description: HTTPGet specifies the http request to perform.
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
paulfantom's avatar
paulfantom committed
                              type: string
                            httpHeaders:
Jesse Bye's avatar
Jesse Bye committed
                              description: Custom headers to set in the request. HTTP allows repeated headers.
paulfantom's avatar
paulfantom committed
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: HTTPHeader describes a custom header to be used in HTTP probes
paulfantom's avatar
paulfantom committed
                                properties:
                                  name:
                                    description: The header field name
                                    type: string
                                  value:
                                    description: The header field value
                                    type: string
                                required:
                                - name
                                - value
                                type: object
                              type: array
                            path:
                              description: Path to access on the HTTP server.
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                            scheme:
Jesse Bye's avatar
Jesse Bye committed
                              description: Scheme to use for connecting to the host. Defaults to HTTP.
paulfantom's avatar
paulfantom committed
                              type: string
                          required:
                          - port
                          type: object
                        initialDelaySeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
                          format: int32
                          type: integer
paulfantom's avatar
paulfantom committed
                        periodSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        successThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
paulfantom's avatar
paulfantom committed
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'Optional: Host name to connect to, defaults to the pod IP.'
                              type: string
paulfantom's avatar
paulfantom committed
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                          required:
                          - port
                          type: object
                        timeoutSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                      type: object
                    resources:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
paulfantom's avatar
paulfantom committed
                      properties:
                        limits:
                          additionalProperties:
Lili Cosic's avatar
Lili Cosic committed
                            anyOf:
                            - type: integer
                            - type: string
                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                            x-kubernetes-int-or-string: true
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
paulfantom's avatar
paulfantom committed
                          type: object
                        requests:
                          additionalProperties:
Lili Cosic's avatar
Lili Cosic committed
                            anyOf:
                            - type: integer
                            - type: string
                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                            x-kubernetes-int-or-string: true
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
paulfantom's avatar
paulfantom committed
                          type: object
                      type: object
                    securityContext:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/'
paulfantom's avatar
paulfantom committed
                      properties:
                        allowPrivilegeEscalation:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN'
paulfantom's avatar
paulfantom committed
                          type: boolean
                        capabilities:
Jesse Bye's avatar
Jesse Bye committed
                          description: The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime.
paulfantom's avatar
paulfantom committed
                          properties:
                            add:
                              description: Added capabilities
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: Capability represent POSIX capabilities type
paulfantom's avatar
paulfantom committed
                                type: string
                              type: array
                            drop:
                              description: Removed capabilities
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: Capability represent POSIX capabilities type
paulfantom's avatar
paulfantom committed
                                type: string
                              type: array
                          type: object
                        privileged:
Jesse Bye's avatar
Jesse Bye committed
                          description: Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        procMount:
Jesse Bye's avatar
Jesse Bye committed
                          description: procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled.
                          type: string
paulfantom's avatar
paulfantom committed
                        readOnlyRootFilesystem:
Jesse Bye's avatar
Jesse Bye committed
                          description: Whether this container has a read-only root filesystem. Default is false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        runAsGroup:
Jesse Bye's avatar
Jesse Bye committed
                          description: The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          format: int64
                          type: integer
                        runAsNonRoot:
Jesse Bye's avatar
Jesse Bye committed
                          description: Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        runAsUser:
Jesse Bye's avatar
Jesse Bye committed
                          description: The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          format: int64
                          type: integer
                        seLinuxOptions:
Jesse Bye's avatar
Jesse Bye committed
                          description: The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container.  May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          properties:
                            level:
Jesse Bye's avatar
Jesse Bye committed
                              description: Level is SELinux level label that applies to the container.
                              type: string
paulfantom's avatar
paulfantom committed
                            role:
Jesse Bye's avatar
Jesse Bye committed
                              description: Role is a SELinux role label that applies to the container.
                              type: string
paulfantom's avatar
paulfantom committed
                            type:
Jesse Bye's avatar
Jesse Bye committed
                              description: Type is a SELinux type label that applies to the container.
paulfantom's avatar
paulfantom committed
                              type: string
                            user:
Jesse Bye's avatar
Jesse Bye committed
                              description: User is a SELinux user label that applies to the container.
paulfantom's avatar
paulfantom committed
                              type: string
                          type: object
                        windowsOptions:
Jesse Bye's avatar
Jesse Bye committed
                          description: The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          properties:
                            gmsaCredentialSpec:
Jesse Bye's avatar
Jesse Bye committed
                              description: GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field.
paulfantom's avatar
paulfantom committed
                              type: string
                            gmsaCredentialSpecName:
Jesse Bye's avatar
Jesse Bye committed
                              description: GMSACredentialSpecName is the name of the GMSA credential spec to use.
paulfantom's avatar
paulfantom committed
                              type: string
                            runAsUserName:
Jesse Bye's avatar
Jesse Bye committed
                              description: The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                              type: string
                          type: object
                      type: object
                    startupProbe:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod''s lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. This is a beta feature enabled by the StartupProbe feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                      properties:
                        exec:
Jesse Bye's avatar
Jesse Bye committed
                          description: One and only one of the following should be specified. Exec specifies the action to take.
paulfantom's avatar
paulfantom committed
                          properties:
                            command:
Jesse Bye's avatar
Jesse Bye committed
                              description: Command is the command line to execute inside the container, the working directory for the command  is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
paulfantom's avatar
paulfantom committed
                              items:
                                type: string
                              type: array
                          type: object
                        failureThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        httpGet:
                          description: HTTPGet specifies the http request to perform.
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
paulfantom's avatar
paulfantom committed
                              type: string
                            httpHeaders:
Jesse Bye's avatar
Jesse Bye committed
                              description: Custom headers to set in the request. HTTP allows repeated headers.
paulfantom's avatar
paulfantom committed
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: HTTPHeader describes a custom header to be used in HTTP probes
paulfantom's avatar
paulfantom committed
                                properties:
                                  name:
                                    description: The header field name
                                    type: string
                                  value:
                                    description: The header field value
                                    type: string
                                required:
                                - name
                                - value
                                type: object
                              type: array
                            path:
                              description: Path to access on the HTTP server.
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                            scheme:
Jesse Bye's avatar
Jesse Bye committed
                              description: Scheme to use for connecting to the host. Defaults to HTTP.
paulfantom's avatar
paulfantom committed
                              type: string
                          required:
                          - port
                          type: object
                        initialDelaySeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        periodSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        successThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
paulfantom's avatar
paulfantom committed
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'Optional: Host name to connect to, defaults to the pod IP.'
paulfantom's avatar
paulfantom committed
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                          required:
                          - port
                          type: object
                        timeoutSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                      type: object
                    stdin:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    stdinOnce:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false
paulfantom's avatar
paulfantom committed
                      type: boolean
                    terminationMessagePath:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Optional: Path at which the file to which the container''s termination message will be written is mounted into the container''s filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.'
paulfantom's avatar
paulfantom committed
                      type: string
                    terminationMessagePolicy:
Jesse Bye's avatar
Jesse Bye committed
                      description: Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                    tty:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    volumeDevices:
Jesse Bye's avatar
Jesse Bye committed
                      description: volumeDevices is the list of block devices to be used by the container.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: volumeDevice describes a mapping of a raw block device within a container.
                        properties:
paulfantom's avatar
paulfantom committed
                          devicePath:
Jesse Bye's avatar
Jesse Bye committed
                            description: devicePath is the path inside of the container that the device will be mapped to.
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            description: name must match the name of a persistentVolumeClaim in the pod
                            type: string
paulfantom's avatar
paulfantom committed
                        required:
                        - devicePath
                        - name
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
                    volumeMounts:
Jesse Bye's avatar
Jesse Bye committed
                      description: Pod volumes to mount into the container's filesystem. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: VolumeMount describes a mounting of a Volume within a container.
                        properties:
paulfantom's avatar
paulfantom committed
                          mountPath:
Jesse Bye's avatar
Jesse Bye committed
                            description: Path within the container at which the volume should be mounted.  Must not contain ':'.
paulfantom's avatar
paulfantom committed
                            type: string
                          mountPropagation:
Jesse Bye's avatar
Jesse Bye committed
                            description: mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10.
paulfantom's avatar
paulfantom committed
                            type: string
                          name:
                            description: This must match the Name of a Volume.
                            type: string
paulfantom's avatar
paulfantom committed
                          readOnly:
Jesse Bye's avatar
Jesse Bye committed
                            description: Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false.
paulfantom's avatar
paulfantom committed
                            type: boolean
                          subPath:
Jesse Bye's avatar
Jesse Bye committed
                            description: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
                            type: string
paulfantom's avatar
paulfantom committed
                          subPathExpr:
Jesse Bye's avatar
Jesse Bye committed
                            description: Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive.
                            type: string
paulfantom's avatar
paulfantom committed
                        required:
                        - mountPath
                        - name
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
                    workingDir:
Jesse Bye's avatar
Jesse Bye committed
                      description: Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                  required:
                  - name
                  type: object
                type: array
              labels:
                additionalProperties:
                  type: string
Jesse Bye's avatar
Jesse Bye committed
                description: Labels configure the external label pairs to ThanosRuler. If not provided, default replica label `thanos_ruler_replica` will be added as a label and be dropped in alerts.
paulfantom's avatar
paulfantom committed
                type: object
              listenLocal:
Jesse Bye's avatar
Jesse Bye committed
                description: ListenLocal makes the Thanos ruler listen on loopback, so that it does not bind against the Pod IP.
paulfantom's avatar
paulfantom committed
                type: boolean
              logFormat:
                description: Log format for ThanosRuler to be configured with.
                type: string
              logLevel:
                description: Log level for ThanosRuler to be configured with.
                type: string
              nodeSelector:
                additionalProperties:
                  type: string
                description: Define which Nodes the Pods are scheduled on.
                type: object
              objectStorageConfig:
Lili Cosic's avatar
Lili Cosic committed
                description: ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority.
paulfantom's avatar
paulfantom committed
                properties:
                  key:
Jesse Bye's avatar
Jesse Bye committed
                    description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                    type: string
                  name:
Jesse Bye's avatar
Jesse Bye committed
                    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: Specify whether the Secret or its key must be defined
                    type: boolean
paulfantom's avatar
paulfantom committed
                required:
                - key
                type: object
Lili Cosic's avatar
Lili Cosic committed
              objectStorageConfigFile:
                description: ObjectStorageConfigFile specifies the path of the object storage configuration file. When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence.
                type: string
paulfantom's avatar
paulfantom committed
              paused:
Jesse Bye's avatar
Jesse Bye committed
                description: When a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects.
paulfantom's avatar
paulfantom committed
                type: boolean
              podMetadata:
Jesse Bye's avatar
Jesse Bye committed
                description: PodMetadata contains Labels and Annotations gets propagated to the thanos ruler pods.
paulfantom's avatar
paulfantom committed
                properties:
                  annotations:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    description: 'Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'