github.com/verrazzano/verrazzano@v1.7.0/platform-operator/thirdparty/charts/velero/crds/restores.yaml (about)

     1  apiVersion: apiextensions.k8s.io/v1
     2  kind: CustomResourceDefinition
     3  metadata:
     4    labels:
     5      component: velero
     6    annotations:
     7      controller-gen.kubebuilder.io/version: v0.7.0
     8    creationTimestamp: null
     9    name: restores.velero.io
    10  spec:
    11    group: velero.io
    12    names:
    13      kind: Restore
    14      listKind: RestoreList
    15      plural: restores
    16      singular: restore
    17    scope: Namespaced
    18    versions:
    19    - name: v1
    20      schema:
    21        openAPIV3Schema:
    22          description: Restore is a Velero resource that represents the application
    23            of resources from a Velero backup to a target Kubernetes cluster.
    24          properties:
    25            apiVersion:
    26              description: 'APIVersion defines the versioned schema of this representation
    27                of an object. Servers should convert recognized schemas to the latest
    28                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    29              type: string
    30            kind:
    31              description: 'Kind is a string value representing the REST resource this
    32                object represents. Servers may infer this from the endpoint the client
    33                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    34              type: string
    35            metadata:
    36              type: object
    37            spec:
    38              description: RestoreSpec defines the specification for a Velero restore.
    39              properties:
    40                backupName:
    41                  description: BackupName is the unique name of the Velero backup to
    42                    restore from.
    43                  type: string
    44                excludedNamespaces:
    45                  description: ExcludedNamespaces contains a list of namespaces that
    46                    are not included in the restore.
    47                  items:
    48                    type: string
    49                  nullable: true
    50                  type: array
    51                excludedResources:
    52                  description: ExcludedResources is a slice of resource names that are
    53                    not included in the restore.
    54                  items:
    55                    type: string
    56                  nullable: true
    57                  type: array
    58                existingResourcePolicy:
    59                  description: ExistingResourcePolicy specifies the restore behaviour
    60                    for the kubernetes resource to be restored
    61                  nullable: true
    62                  type: string
    63                hooks:
    64                  description: Hooks represent custom behaviors that should be executed
    65                    during or post restore.
    66                  properties:
    67                    resources:
    68                      items:
    69                        description: RestoreResourceHookSpec defines one or more RestoreResrouceHooks
    70                          that should be executed based on the rules defined for namespaces,
    71                          resources, and label selector.
    72                        properties:
    73                          excludedNamespaces:
    74                            description: ExcludedNamespaces specifies the namespaces
    75                              to which this hook spec does not apply.
    76                            items:
    77                              type: string
    78                            nullable: true
    79                            type: array
    80                          excludedResources:
    81                            description: ExcludedResources specifies the resources to
    82                              which this hook spec does not apply.
    83                            items:
    84                              type: string
    85                            nullable: true
    86                            type: array
    87                          includedNamespaces:
    88                            description: IncludedNamespaces specifies the namespaces
    89                              to which this hook spec applies. If empty, it applies
    90                              to all namespaces.
    91                            items:
    92                              type: string
    93                            nullable: true
    94                            type: array
    95                          includedResources:
    96                            description: IncludedResources specifies the resources to
    97                              which this hook spec applies. If empty, it applies to
    98                              all resources.
    99                            items:
   100                              type: string
   101                            nullable: true
   102                            type: array
   103                          labelSelector:
   104                            description: LabelSelector, if specified, filters the resources
   105                              to which this hook spec applies.
   106                            nullable: true
   107                            properties:
   108                              matchExpressions:
   109                                description: matchExpressions is a list of label selector
   110                                  requirements. The requirements are ANDed.
   111                                items:
   112                                  description: A label selector requirement is a selector
   113                                    that contains values, a key, and an operator that
   114                                    relates the key and values.
   115                                  properties:
   116                                    key:
   117                                      description: key is the label key that the selector
   118                                        applies to.
   119                                      type: string
   120                                    operator:
   121                                      description: operator represents a key's relationship
   122                                        to a set of values. Valid operators are In,
   123                                        NotIn, Exists and DoesNotExist.
   124                                      type: string
   125                                    values:
   126                                      description: values is an array of string values.
   127                                        If the operator is In or NotIn, the values array
   128                                        must be non-empty. If the operator is Exists
   129                                        or DoesNotExist, the values array must be empty.
   130                                        This array is replaced during a strategic merge
   131                                        patch.
   132                                      items:
   133                                        type: string
   134                                      type: array
   135                                  required:
   136                                  - key
   137                                  - operator
   138                                  type: object
   139                                type: array
   140                              matchLabels:
   141                                additionalProperties:
   142                                  type: string
   143                                description: matchLabels is a map of {key,value} pairs.
   144                                  A single {key,value} in the matchLabels map is equivalent
   145                                  to an element of matchExpressions, whose key field
   146                                  is "key", the operator is "In", and the values array
   147                                  contains only "value". The requirements are ANDed.
   148                                type: object
   149                            type: object
   150                          name:
   151                            description: Name is the name of this hook.
   152                            type: string
   153                          postHooks:
   154                            description: PostHooks is a list of RestoreResourceHooks
   155                              to execute during and after restoring a resource.
   156                            items:
   157                              description: RestoreResourceHook defines a restore hook
   158                                for a resource.
   159                              properties:
   160                                exec:
   161                                  description: Exec defines an exec restore hook.
   162                                  properties:
   163                                    command:
   164                                      description: Command is the command and arguments
   165                                        to execute from within a container after a pod
   166                                        has been restored.
   167                                      items:
   168                                        type: string
   169                                      minItems: 1
   170                                      type: array
   171                                    container:
   172                                      description: Container is the container in the
   173                                        pod where the command should be executed. If
   174                                        not specified, the pod's first container is
   175                                        used.
   176                                      type: string
   177                                    execTimeout:
   178                                      description: ExecTimeout defines the maximum amount
   179                                        of time Velero should wait for the hook to complete
   180                                        before considering the execution a failure.
   181                                      type: string
   182                                    onError:
   183                                      description: OnError specifies how Velero should
   184                                        behave if it encounters an error executing this
   185                                        hook.
   186                                      enum:
   187                                      - Continue
   188                                      - Fail
   189                                      type: string
   190                                    waitTimeout:
   191                                      description: WaitTimeout defines the maximum amount
   192                                        of time Velero should wait for the container
   193                                        to be Ready before attempting to run the command.
   194                                      type: string
   195                                  required:
   196                                  - command
   197                                  type: object
   198                                init:
   199                                  description: Init defines an init restore hook.
   200                                  properties:
   201                                    initContainers:
   202                                      description: InitContainers is list of init containers
   203                                        to be added to a pod during its restore.
   204                                      items:
   205                                        description: A single application container
   206                                          that you want to run within a pod.
   207                                        properties:
   208                                          args:
   209                                            description: 'Arguments to the entrypoint.
   210                                              The docker image''s CMD is used if this
   211                                              is not provided. Variable references $(VAR_NAME)
   212                                              are expanded using the container''s environment.
   213                                              If a variable cannot be resolved, the
   214                                              reference in the input string will be
   215                                              unchanged. Double $$ are reduced to a
   216                                              single $, which allows for escaping the
   217                                              $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
   218                                              will produce the string literal "$(VAR_NAME)".
   219                                              Escaped references will never be expanded,
   220                                              regardless of whether the variable exists
   221                                              or not. Cannot be updated. More info:
   222                                              https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
   223                                            items:
   224                                              type: string
   225                                            type: array
   226                                          command:
   227                                            description: 'Entrypoint array. Not executed
   228                                              within a shell. The docker image''s ENTRYPOINT
   229                                              is used if this is not provided. Variable
   230                                              references $(VAR_NAME) are expanded using
   231                                              the container''s environment. If a variable
   232                                              cannot be resolved, the reference in the
   233                                              input string will be unchanged. Double
   234                                              $$ are reduced to a single $, which allows
   235                                              for escaping the $(VAR_NAME) syntax: i.e.
   236                                              "$$(VAR_NAME)" will produce the string
   237                                              literal "$(VAR_NAME)". Escaped references
   238                                              will never be expanded, regardless of
   239                                              whether the variable exists or not. Cannot
   240                                              be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
   241                                            items:
   242                                              type: string
   243                                            type: array
   244                                          env:
   245                                            description: List of environment variables
   246                                              to set in the container. Cannot be updated.
   247                                            items:
   248                                              description: EnvVar represents an environment
   249                                                variable present in a Container.
   250                                              properties:
   251                                                name:
   252                                                  description: Name of the environment
   253                                                    variable. Must be a C_IDENTIFIER.
   254                                                  type: string
   255                                                value:
   256                                                  description: 'Variable references
   257                                                    $(VAR_NAME) are expanded using the
   258                                                    previously defined environment variables
   259                                                    in the container and any service
   260                                                    environment variables. If a variable
   261                                                    cannot be resolved, the reference
   262                                                    in the input string will be unchanged.
   263                                                    Double $$ are reduced to a single
   264                                                    $, which allows for escaping the
   265                                                    $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
   266                                                    will produce the string literal
   267                                                    "$(VAR_NAME)". Escaped references
   268                                                    will never be expanded, regardless
   269                                                    of whether the variable exists or
   270                                                    not. Defaults to "".'
   271                                                  type: string
   272                                                valueFrom:
   273                                                  description: Source for the environment
   274                                                    variable's value. Cannot be used
   275                                                    if value is not empty.
   276                                                  properties:
   277                                                    configMapKeyRef:
   278                                                      description: Selects a key of
   279                                                        a ConfigMap.
   280                                                      properties:
   281                                                        key:
   282                                                          description: The key to select.
   283                                                          type: string
   284                                                        name:
   285                                                          description: 'Name of the
   286                                                            referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   287                                                            TODO: Add other useful fields.
   288                                                            apiVersion, kind, uid?'
   289                                                          type: string
   290                                                        optional:
   291                                                          description: Specify whether
   292                                                            the ConfigMap or its key
   293                                                            must be defined
   294                                                          type: boolean
   295                                                      required:
   296                                                      - key
   297                                                      type: object
   298                                                    fieldRef:
   299                                                      description: 'Selects a field
   300                                                        of the pod: supports metadata.name,
   301                                                        metadata.namespace, `metadata.labels[''<KEY>'']`,
   302                                                        `metadata.annotations[''<KEY>'']`,
   303                                                        spec.nodeName, spec.serviceAccountName,
   304                                                        status.hostIP, status.podIP,
   305                                                        status.podIPs.'
   306                                                      properties:
   307                                                        apiVersion:
   308                                                          description: Version of the
   309                                                            schema the FieldPath is
   310                                                            written in terms of, defaults
   311                                                            to "v1".
   312                                                          type: string
   313                                                        fieldPath:
   314                                                          description: Path of the field
   315                                                            to select in the specified
   316                                                            API version.
   317                                                          type: string
   318                                                      required:
   319                                                      - fieldPath
   320                                                      type: object
   321                                                    resourceFieldRef:
   322                                                      description: 'Selects a resource
   323                                                        of the container: only resources
   324                                                        limits and requests (limits.cpu,
   325                                                        limits.memory, limits.ephemeral-storage,
   326                                                        requests.cpu, requests.memory
   327                                                        and requests.ephemeral-storage)
   328                                                        are currently supported.'
   329                                                      properties:
   330                                                        containerName:
   331                                                          description: 'Container name:
   332                                                            required for volumes, optional
   333                                                            for env vars'
   334                                                          type: string
   335                                                        divisor:
   336                                                          anyOf:
   337                                                          - type: integer
   338                                                          - type: string
   339                                                          description: Specifies the
   340                                                            output format of the exposed
   341                                                            resources, defaults to "1"
   342                                                          pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   343                                                          x-kubernetes-int-or-string: true
   344                                                        resource:
   345                                                          description: 'Required: resource
   346                                                            to select'
   347                                                          type: string
   348                                                      required:
   349                                                      - resource
   350                                                      type: object
   351                                                    secretKeyRef:
   352                                                      description: Selects a key of
   353                                                        a secret in the pod's namespace
   354                                                      properties:
   355                                                        key:
   356                                                          description: The key of the
   357                                                            secret to select from.  Must
   358                                                            be a valid secret key.
   359                                                          type: string
   360                                                        name:
   361                                                          description: 'Name of the
   362                                                            referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   363                                                            TODO: Add other useful fields.
   364                                                            apiVersion, kind, uid?'
   365                                                          type: string
   366                                                        optional:
   367                                                          description: Specify whether
   368                                                            the Secret or its key must
   369                                                            be defined
   370                                                          type: boolean
   371                                                      required:
   372                                                      - key
   373                                                      type: object
   374                                                  type: object
   375                                              required:
   376                                              - name
   377                                              type: object
   378                                            type: array
   379                                          envFrom:
   380                                            description: List of sources to populate
   381                                              environment variables in the container.
   382                                              The keys defined within a source must
   383                                              be a C_IDENTIFIER. All invalid keys will
   384                                              be reported as an event when the container
   385                                              is starting. When a key exists in multiple
   386                                              sources, the value associated with the
   387                                              last source will take precedence. Values
   388                                              defined by an Env with a duplicate key
   389                                              will take precedence. Cannot be updated.
   390                                            items:
   391                                              description: EnvFromSource represents
   392                                                the source of a set of ConfigMaps
   393                                              properties:
   394                                                configMapRef:
   395                                                  description: The ConfigMap to select
   396                                                    from
   397                                                  properties:
   398                                                    name:
   399                                                      description: 'Name of the referent.
   400                                                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   401                                                        TODO: Add other useful fields.
   402                                                        apiVersion, kind, uid?'
   403                                                      type: string
   404                                                    optional:
   405                                                      description: Specify whether the
   406                                                        ConfigMap must be defined
   407                                                      type: boolean
   408                                                  type: object
   409                                                prefix:
   410                                                  description: An optional identifier
   411                                                    to prepend to each key in the ConfigMap.
   412                                                    Must be a C_IDENTIFIER.
   413                                                  type: string
   414                                                secretRef:
   415                                                  description: The Secret to select
   416                                                    from
   417                                                  properties:
   418                                                    name:
   419                                                      description: 'Name of the referent.
   420                                                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   421                                                        TODO: Add other useful fields.
   422                                                        apiVersion, kind, uid?'
   423                                                      type: string
   424                                                    optional:
   425                                                      description: Specify whether the
   426                                                        Secret must be defined
   427                                                      type: boolean
   428                                                  type: object
   429                                              type: object
   430                                            type: array
   431                                          image:
   432                                            description: 'Docker image name. More info:
   433                                              https://kubernetes.io/docs/concepts/containers/images
   434                                              This field is optional to allow higher
   435                                              level config management to default or
   436                                              override container images in workload
   437                                              controllers like Deployments and StatefulSets.'
   438                                            type: string
   439                                          imagePullPolicy:
   440                                            description: 'Image pull policy. One of
   441                                              Always, Never, IfNotPresent. Defaults
   442                                              to Always if :latest tag is specified,
   443                                              or IfNotPresent otherwise. Cannot be updated.
   444                                              More info: https://kubernetes.io/docs/concepts/containers/images#updating-images'
   445                                            type: string
   446                                          lifecycle:
   447                                            description: Actions that the management
   448                                              system should take in response to container
   449                                              lifecycle events. Cannot be updated.
   450                                            properties:
   451                                              postStart:
   452                                                description: 'PostStart is called immediately
   453                                                  after a container is created. If the
   454                                                  handler fails, the container is terminated
   455                                                  and restarted according to its restart
   456                                                  policy. Other management of the container
   457                                                  blocks until the hook completes. More
   458                                                  info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
   459                                                properties:
   460                                                  exec:
   461                                                    description: One and only one of
   462                                                      the following should be specified.
   463                                                      Exec specifies the action to take.
   464                                                    properties:
   465                                                      command:
   466                                                        description: Command is the
   467                                                          command line to execute inside
   468                                                          the container, the working
   469                                                          directory for the command  is
   470                                                          root ('/') in the container's
   471                                                          filesystem. The command is
   472                                                          simply exec'd, it is not run
   473                                                          inside a shell, so traditional
   474                                                          shell instructions ('|', etc)
   475                                                          won't work. To use a shell,
   476                                                          you need to explicitly call
   477                                                          out to that shell. Exit status
   478                                                          of 0 is treated as live/healthy
   479                                                          and non-zero is unhealthy.
   480                                                        items:
   481                                                          type: string
   482                                                        type: array
   483                                                    type: object
   484                                                  httpGet:
   485                                                    description: HTTPGet specifies the
   486                                                      http request to perform.
   487                                                    properties:
   488                                                      host:
   489                                                        description: Host name to connect
   490                                                          to, defaults to the pod IP.
   491                                                          You probably want to set "Host"
   492                                                          in httpHeaders instead.
   493                                                        type: string
   494                                                      httpHeaders:
   495                                                        description: Custom headers
   496                                                          to set in the request. HTTP
   497                                                          allows repeated headers.
   498                                                        items:
   499                                                          description: HTTPHeader describes
   500                                                            a custom header to be used
   501                                                            in HTTP probes
   502                                                          properties:
   503                                                            name:
   504                                                              description: The header
   505                                                                field name
   506                                                              type: string
   507                                                            value:
   508                                                              description: The header
   509                                                                field value
   510                                                              type: string
   511                                                          required:
   512                                                          - name
   513                                                          - value
   514                                                          type: object
   515                                                        type: array
   516                                                      path:
   517                                                        description: Path to access
   518                                                          on the HTTP server.
   519                                                        type: string
   520                                                      port:
   521                                                        anyOf:
   522                                                        - type: integer
   523                                                        - type: string
   524                                                        description: Name or number
   525                                                          of the port to access on the
   526                                                          container. Number must be
   527                                                          in the range 1 to 65535. Name
   528                                                          must be an IANA_SVC_NAME.
   529                                                        x-kubernetes-int-or-string: true
   530                                                      scheme:
   531                                                        description: Scheme to use for
   532                                                          connecting to the host. Defaults
   533                                                          to HTTP.
   534                                                        type: string
   535                                                    required:
   536                                                    - port
   537                                                    type: object
   538                                                  tcpSocket:
   539                                                    description: 'TCPSocket specifies
   540                                                      an action involving a TCP port.
   541                                                      TCP hooks not yet supported TODO:
   542                                                      implement a realistic TCP lifecycle
   543                                                      hook'
   544                                                    properties:
   545                                                      host:
   546                                                        description: 'Optional: Host
   547                                                          name to connect to, defaults
   548                                                          to the pod IP.'
   549                                                        type: string
   550                                                      port:
   551                                                        anyOf:
   552                                                        - type: integer
   553                                                        - type: string
   554                                                        description: Number or name
   555                                                          of the port to access on the
   556                                                          container. Number must be
   557                                                          in the range 1 to 65535. Name
   558                                                          must be an IANA_SVC_NAME.
   559                                                        x-kubernetes-int-or-string: true
   560                                                    required:
   561                                                    - port
   562                                                    type: object
   563                                                type: object
   564                                              preStop:
   565                                                description: 'PreStop is called immediately
   566                                                  before a container is terminated due
   567                                                  to an API request or management event
   568                                                  such as liveness/startup probe failure,
   569                                                  preemption, resource contention, etc.
   570                                                  The handler is not called if the container
   571                                                  crashes or exits. The reason for termination
   572                                                  is passed to the handler. The Pod''s
   573                                                  termination grace period countdown
   574                                                  begins before the PreStop hooked is
   575                                                  executed. Regardless of the outcome
   576                                                  of the handler, the container will
   577                                                  eventually terminate within the Pod''s
   578                                                  termination grace period. Other management
   579                                                  of the container blocks until the
   580                                                  hook completes or until the termination
   581                                                  grace period is reached. More info:
   582                                                  https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
   583                                                properties:
   584                                                  exec:
   585                                                    description: One and only one of
   586                                                      the following should be specified.
   587                                                      Exec specifies the action to take.
   588                                                    properties:
   589                                                      command:
   590                                                        description: Command is the
   591                                                          command line to execute inside
   592                                                          the container, the working
   593                                                          directory for the command  is
   594                                                          root ('/') in the container's
   595                                                          filesystem. The command is
   596                                                          simply exec'd, it is not run
   597                                                          inside a shell, so traditional
   598                                                          shell instructions ('|', etc)
   599                                                          won't work. To use a shell,
   600                                                          you need to explicitly call
   601                                                          out to that shell. Exit status
   602                                                          of 0 is treated as live/healthy
   603                                                          and non-zero is unhealthy.
   604                                                        items:
   605                                                          type: string
   606                                                        type: array
   607                                                    type: object
   608                                                  httpGet:
   609                                                    description: HTTPGet specifies the
   610                                                      http request to perform.
   611                                                    properties:
   612                                                      host:
   613                                                        description: Host name to connect
   614                                                          to, defaults to the pod IP.
   615                                                          You probably want to set "Host"
   616                                                          in httpHeaders instead.
   617                                                        type: string
   618                                                      httpHeaders:
   619                                                        description: Custom headers
   620                                                          to set in the request. HTTP
   621                                                          allows repeated headers.
   622                                                        items:
   623                                                          description: HTTPHeader describes
   624                                                            a custom header to be used
   625                                                            in HTTP probes
   626                                                          properties:
   627                                                            name:
   628                                                              description: The header
   629                                                                field name
   630                                                              type: string
   631                                                            value:
   632                                                              description: The header
   633                                                                field value
   634                                                              type: string
   635                                                          required:
   636                                                          - name
   637                                                          - value
   638                                                          type: object
   639                                                        type: array
   640                                                      path:
   641                                                        description: Path to access
   642                                                          on the HTTP server.
   643                                                        type: string
   644                                                      port:
   645                                                        anyOf:
   646                                                        - type: integer
   647                                                        - type: string
   648                                                        description: Name or number
   649                                                          of the port to access on the
   650                                                          container. Number must be
   651                                                          in the range 1 to 65535. Name
   652                                                          must be an IANA_SVC_NAME.
   653                                                        x-kubernetes-int-or-string: true
   654                                                      scheme:
   655                                                        description: Scheme to use for
   656                                                          connecting to the host. Defaults
   657                                                          to HTTP.
   658                                                        type: string
   659                                                    required:
   660                                                    - port
   661                                                    type: object
   662                                                  tcpSocket:
   663                                                    description: 'TCPSocket specifies
   664                                                      an action involving a TCP port.
   665                                                      TCP hooks not yet supported TODO:
   666                                                      implement a realistic TCP lifecycle
   667                                                      hook'
   668                                                    properties:
   669                                                      host:
   670                                                        description: 'Optional: Host
   671                                                          name to connect to, defaults
   672                                                          to the pod IP.'
   673                                                        type: string
   674                                                      port:
   675                                                        anyOf:
   676                                                        - type: integer
   677                                                        - type: string
   678                                                        description: Number or name
   679                                                          of the port to access on the
   680                                                          container. Number must be
   681                                                          in the range 1 to 65535. Name
   682                                                          must be an IANA_SVC_NAME.
   683                                                        x-kubernetes-int-or-string: true
   684                                                    required:
   685                                                    - port
   686                                                    type: object
   687                                                type: object
   688                                            type: object
   689                                          livenessProbe:
   690                                            description: 'Periodic probe of container
   691                                              liveness. Container will be restarted
   692                                              if the probe fails. Cannot be updated.
   693                                              More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
   694                                            properties:
   695                                              exec:
   696                                                description: One and only one of the
   697                                                  following should be specified. Exec
   698                                                  specifies the action to take.
   699                                                properties:
   700                                                  command:
   701                                                    description: Command is the command
   702                                                      line to execute inside the container,
   703                                                      the working directory for the
   704                                                      command  is root ('/') in the
   705                                                      container's filesystem. The command
   706                                                      is simply exec'd, it is not run
   707                                                      inside a shell, so traditional
   708                                                      shell instructions ('|', etc)
   709                                                      won't work. To use a shell, you
   710                                                      need to explicitly call out to
   711                                                      that shell. Exit status of 0 is
   712                                                      treated as live/healthy and non-zero
   713                                                      is unhealthy.
   714                                                    items:
   715                                                      type: string
   716                                                    type: array
   717                                                type: object
   718                                              failureThreshold:
   719                                                description: Minimum consecutive failures
   720                                                  for the probe to be considered failed
   721                                                  after having succeeded. Defaults to
   722                                                  3. Minimum value is 1.
   723                                                format: int32
   724                                                type: integer
   725                                              httpGet:
   726                                                description: HTTPGet specifies the http
   727                                                  request to perform.
   728                                                properties:
   729                                                  host:
   730                                                    description: Host name to connect
   731                                                      to, defaults to the pod IP. You
   732                                                      probably want to set "Host" in
   733                                                      httpHeaders instead.
   734                                                    type: string
   735                                                  httpHeaders:
   736                                                    description: Custom headers to set
   737                                                      in the request. HTTP allows repeated
   738                                                      headers.
   739                                                    items:
   740                                                      description: HTTPHeader describes
   741                                                        a custom header to be used in
   742                                                        HTTP probes
   743                                                      properties:
   744                                                        name:
   745                                                          description: The header field
   746                                                            name
   747                                                          type: string
   748                                                        value:
   749                                                          description: The header field
   750                                                            value
   751                                                          type: string
   752                                                      required:
   753                                                      - name
   754                                                      - value
   755                                                      type: object
   756                                                    type: array
   757                                                  path:
   758                                                    description: Path to access on the
   759                                                      HTTP server.
   760                                                    type: string
   761                                                  port:
   762                                                    anyOf:
   763                                                    - type: integer
   764                                                    - type: string
   765                                                    description: Name or number of the
   766                                                      port to access on the container.
   767                                                      Number must be in the range 1
   768                                                      to 65535. Name must be an IANA_SVC_NAME.
   769                                                    x-kubernetes-int-or-string: true
   770                                                  scheme:
   771                                                    description: Scheme to use for connecting
   772                                                      to the host. Defaults to HTTP.
   773                                                    type: string
   774                                                required:
   775                                                - port
   776                                                type: object
   777                                              initialDelaySeconds:
   778                                                description: 'Number of seconds after
   779                                                  the container has started before liveness
   780                                                  probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
   781                                                format: int32
   782                                                type: integer
   783                                              periodSeconds:
   784                                                description: How often (in seconds)
   785                                                  to perform the probe. Default to 10
   786                                                  seconds. Minimum value is 1.
   787                                                format: int32
   788                                                type: integer
   789                                              successThreshold:
   790                                                description: Minimum consecutive successes
   791                                                  for the probe to be considered successful
   792                                                  after having failed. Defaults to 1.
   793                                                  Must be 1 for liveness and startup.
   794                                                  Minimum value is 1.
   795                                                format: int32
   796                                                type: integer
   797                                              tcpSocket:
   798                                                description: 'TCPSocket specifies an
   799                                                  action involving a TCP port. TCP hooks
   800                                                  not yet supported TODO: implement
   801                                                  a realistic TCP lifecycle hook'
   802                                                properties:
   803                                                  host:
   804                                                    description: 'Optional: Host name
   805                                                      to connect to, defaults to the
   806                                                      pod IP.'
   807                                                    type: string
   808                                                  port:
   809                                                    anyOf:
   810                                                    - type: integer
   811                                                    - type: string
   812                                                    description: Number or name of the
   813                                                      port to access on the container.
   814                                                      Number must be in the range 1
   815                                                      to 65535. Name must be an IANA_SVC_NAME.
   816                                                    x-kubernetes-int-or-string: true
   817                                                required:
   818                                                - port
   819                                                type: object
   820                                              terminationGracePeriodSeconds:
   821                                                description: Optional duration in seconds
   822                                                  the pod needs to terminate gracefully
   823                                                  upon probe failure. The grace period
   824                                                  is the duration in seconds after the
   825                                                  processes running in the pod are sent
   826                                                  a termination signal and the time
   827                                                  when the processes are forcibly halted
   828                                                  with a kill signal. Set this value
   829                                                  longer than the expected cleanup time
   830                                                  for your process. If this value is
   831                                                  nil, the pod's terminationGracePeriodSeconds
   832                                                  will be used. Otherwise, this value
   833                                                  overrides the value provided by the
   834                                                  pod spec. Value must be non-negative
   835                                                  integer. The value zero indicates
   836                                                  stop immediately via the kill signal
   837                                                  (no opportunity to shut down). This
   838                                                  is a beta field and requires enabling
   839                                                  ProbeTerminationGracePeriod feature
   840                                                  gate. Minimum value is 1. spec.terminationGracePeriodSeconds
   841                                                  is used if unset.
   842                                                format: int64
   843                                                type: integer
   844                                              timeoutSeconds:
   845                                                description: 'Number of seconds after
   846                                                  which the probe times out. Defaults
   847                                                  to 1 second. Minimum value is 1. More
   848                                                  info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
   849                                                format: int32
   850                                                type: integer
   851                                            type: object
   852                                          name:
   853                                            description: Name of the container specified
   854                                              as a DNS_LABEL. Each container in a pod
   855                                              must have a unique name (DNS_LABEL). Cannot
   856                                              be updated.
   857                                            type: string
   858                                          ports:
   859                                            description: List of ports to expose from
   860                                              the container. Exposing a port here gives
   861                                              the system additional information about
   862                                              the network connections a container uses,
   863                                              but is primarily informational. Not specifying
   864                                              a port here DOES NOT prevent that port
   865                                              from being exposed. Any port which is
   866                                              listening on the default "0.0.0.0" address
   867                                              inside a container will be accessible
   868                                              from the network. Cannot be updated.
   869                                            items:
   870                                              description: ContainerPort represents
   871                                                a network port in a single container.
   872                                              properties:
   873                                                containerPort:
   874                                                  description: Number of port to expose
   875                                                    on the pod's IP address. This must
   876                                                    be a valid port number, 0 < x <
   877                                                    65536.
   878                                                  format: int32
   879                                                  type: integer
   880                                                hostIP:
   881                                                  description: What host IP to bind
   882                                                    the external port to.
   883                                                  type: string
   884                                                hostPort:
   885                                                  description: Number of port to expose
   886                                                    on the host. If specified, this
   887                                                    must be a valid port number, 0 <
   888                                                    x < 65536. If HostNetwork is specified,
   889                                                    this must match ContainerPort. Most
   890                                                    containers do not need this.
   891                                                  format: int32
   892                                                  type: integer
   893                                                name:
   894                                                  description: If specified, this must
   895                                                    be an IANA_SVC_NAME and unique within
   896                                                    the pod. Each named port in a pod
   897                                                    must have a unique name. Name for
   898                                                    the port that can be referred to
   899                                                    by services.
   900                                                  type: string
   901                                                protocol:
   902                                                  default: TCP
   903                                                  description: Protocol for port. Must
   904                                                    be UDP, TCP, or SCTP. Defaults to
   905                                                    "TCP".
   906                                                  type: string
   907                                              required:
   908                                              - containerPort
   909                                              - protocol
   910                                              type: object
   911                                            type: array
   912                                            x-kubernetes-list-map-keys:
   913                                            - containerPort
   914                                            - protocol
   915                                            x-kubernetes-list-type: map
   916                                          readinessProbe:
   917                                            description: 'Periodic probe of container
   918                                              service readiness. Container will be removed
   919                                              from service endpoints if the probe fails.
   920                                              Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
   921                                            properties:
   922                                              exec:
   923                                                description: One and only one of the
   924                                                  following should be specified. Exec
   925                                                  specifies the action to take.
   926                                                properties:
   927                                                  command:
   928                                                    description: Command is the command
   929                                                      line to execute inside the container,
   930                                                      the working directory for the
   931                                                      command  is root ('/') in the
   932                                                      container's filesystem. The command
   933                                                      is simply exec'd, it is not run
   934                                                      inside a shell, so traditional
   935                                                      shell instructions ('|', etc)
   936                                                      won't work. To use a shell, you
   937                                                      need to explicitly call out to
   938                                                      that shell. Exit status of 0 is
   939                                                      treated as live/healthy and non-zero
   940                                                      is unhealthy.
   941                                                    items:
   942                                                      type: string
   943                                                    type: array
   944                                                type: object
   945                                              failureThreshold:
   946                                                description: Minimum consecutive failures
   947                                                  for the probe to be considered failed
   948                                                  after having succeeded. Defaults to
   949                                                  3. Minimum value is 1.
   950                                                format: int32
   951                                                type: integer
   952                                              httpGet:
   953                                                description: HTTPGet specifies the http
   954                                                  request to perform.
   955                                                properties:
   956                                                  host:
   957                                                    description: Host name to connect
   958                                                      to, defaults to the pod IP. You
   959                                                      probably want to set "Host" in
   960                                                      httpHeaders instead.
   961                                                    type: string
   962                                                  httpHeaders:
   963                                                    description: Custom headers to set
   964                                                      in the request. HTTP allows repeated
   965                                                      headers.
   966                                                    items:
   967                                                      description: HTTPHeader describes
   968                                                        a custom header to be used in
   969                                                        HTTP probes
   970                                                      properties:
   971                                                        name:
   972                                                          description: The header field
   973                                                            name
   974                                                          type: string
   975                                                        value:
   976                                                          description: The header field
   977                                                            value
   978                                                          type: string
   979                                                      required:
   980                                                      - name
   981                                                      - value
   982                                                      type: object
   983                                                    type: array
   984                                                  path:
   985                                                    description: Path to access on the
   986                                                      HTTP server.
   987                                                    type: string
   988                                                  port:
   989                                                    anyOf:
   990                                                    - type: integer
   991                                                    - type: string
   992                                                    description: Name or number of the
   993                                                      port to access on the container.
   994                                                      Number must be in the range 1
   995                                                      to 65535. Name must be an IANA_SVC_NAME.
   996                                                    x-kubernetes-int-or-string: true
   997                                                  scheme:
   998                                                    description: Scheme to use for connecting
   999                                                      to the host. Defaults to HTTP.
  1000                                                    type: string
  1001                                                required:
  1002                                                - port
  1003                                                type: object
  1004                                              initialDelaySeconds:
  1005                                                description: 'Number of seconds after
  1006                                                  the container has started before liveness
  1007                                                  probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
  1008                                                format: int32
  1009                                                type: integer
  1010                                              periodSeconds:
  1011                                                description: How often (in seconds)
  1012                                                  to perform the probe. Default to 10
  1013                                                  seconds. Minimum value is 1.
  1014                                                format: int32
  1015                                                type: integer
  1016                                              successThreshold:
  1017                                                description: Minimum consecutive successes
  1018                                                  for the probe to be considered successful
  1019                                                  after having failed. Defaults to 1.
  1020                                                  Must be 1 for liveness and startup.
  1021                                                  Minimum value is 1.
  1022                                                format: int32
  1023                                                type: integer
  1024                                              tcpSocket:
  1025                                                description: 'TCPSocket specifies an
  1026                                                  action involving a TCP port. TCP hooks
  1027                                                  not yet supported TODO: implement
  1028                                                  a realistic TCP lifecycle hook'
  1029                                                properties:
  1030                                                  host:
  1031                                                    description: 'Optional: Host name
  1032                                                      to connect to, defaults to the
  1033                                                      pod IP.'
  1034                                                    type: string
  1035                                                  port:
  1036                                                    anyOf:
  1037                                                    - type: integer
  1038                                                    - type: string
  1039                                                    description: Number or name of the
  1040                                                      port to access on the container.
  1041                                                      Number must be in the range 1
  1042                                                      to 65535. Name must be an IANA_SVC_NAME.
  1043                                                    x-kubernetes-int-or-string: true
  1044                                                required:
  1045                                                - port
  1046                                                type: object
  1047                                              terminationGracePeriodSeconds:
  1048                                                description: Optional duration in seconds
  1049                                                  the pod needs to terminate gracefully
  1050                                                  upon probe failure. The grace period
  1051                                                  is the duration in seconds after the
  1052                                                  processes running in the pod are sent
  1053                                                  a termination signal and the time
  1054                                                  when the processes are forcibly halted
  1055                                                  with a kill signal. Set this value
  1056                                                  longer than the expected cleanup time
  1057                                                  for your process. If this value is
  1058                                                  nil, the pod's terminationGracePeriodSeconds
  1059                                                  will be used. Otherwise, this value
  1060                                                  overrides the value provided by the
  1061                                                  pod spec. Value must be non-negative
  1062                                                  integer. The value zero indicates
  1063                                                  stop immediately via the kill signal
  1064                                                  (no opportunity to shut down). This
  1065                                                  is a beta field and requires enabling
  1066                                                  ProbeTerminationGracePeriod feature
  1067                                                  gate. Minimum value is 1. spec.terminationGracePeriodSeconds
  1068                                                  is used if unset.
  1069                                                format: int64
  1070                                                type: integer
  1071                                              timeoutSeconds:
  1072                                                description: 'Number of seconds after
  1073                                                  which the probe times out. Defaults
  1074                                                  to 1 second. Minimum value is 1. More
  1075                                                  info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
  1076                                                format: int32
  1077                                                type: integer
  1078                                            type: object
  1079                                          resources:
  1080                                            description: 'Compute Resources required
  1081                                              by this container. Cannot be updated.
  1082                                              More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1083                                            properties:
  1084                                              limits:
  1085                                                additionalProperties:
  1086                                                  anyOf:
  1087                                                  - type: integer
  1088                                                  - type: string
  1089                                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1090                                                  x-kubernetes-int-or-string: true
  1091                                                description: 'Limits describes the maximum
  1092                                                  amount of compute resources allowed.
  1093                                                  More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1094                                                type: object
  1095                                              requests:
  1096                                                additionalProperties:
  1097                                                  anyOf:
  1098                                                  - type: integer
  1099                                                  - type: string
  1100                                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1101                                                  x-kubernetes-int-or-string: true
  1102                                                description: 'Requests describes the
  1103                                                  minimum amount of compute resources
  1104                                                  required. If Requests is omitted for
  1105                                                  a container, it defaults to Limits
  1106                                                  if that is explicitly specified, otherwise
  1107                                                  to an implementation-defined value.
  1108                                                  More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1109                                                type: object
  1110                                            type: object
  1111                                          securityContext:
  1112                                            description: 'SecurityContext defines the
  1113                                              security options the container should
  1114                                              be run with. If set, the fields of SecurityContext
  1115                                              override the equivalent fields of PodSecurityContext.
  1116                                              More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/'
  1117                                            properties:
  1118                                              allowPrivilegeEscalation:
  1119                                                description: 'AllowPrivilegeEscalation
  1120                                                  controls whether a process can gain
  1121                                                  more privileges than its parent process.
  1122                                                  This bool directly controls if the
  1123                                                  no_new_privs flag will be set on the
  1124                                                  container process. AllowPrivilegeEscalation
  1125                                                  is true always when the container
  1126                                                  is: 1) run as Privileged 2) has CAP_SYS_ADMIN'
  1127                                                type: boolean
  1128                                              capabilities:
  1129                                                description: The capabilities to add/drop
  1130                                                  when running containers. Defaults
  1131                                                  to the default set of capabilities
  1132                                                  granted by the container runtime.
  1133                                                properties:
  1134                                                  add:
  1135                                                    description: Added capabilities
  1136                                                    items:
  1137                                                      description: Capability represent
  1138                                                        POSIX capabilities type
  1139                                                      type: string
  1140                                                    type: array
  1141                                                  drop:
  1142                                                    description: Removed capabilities
  1143                                                    items:
  1144                                                      description: Capability represent
  1145                                                        POSIX capabilities type
  1146                                                      type: string
  1147                                                    type: array
  1148                                                type: object
  1149                                              privileged:
  1150                                                description: Run container in privileged
  1151                                                  mode. Processes in privileged containers
  1152                                                  are essentially equivalent to root
  1153                                                  on the host. Defaults to false.
  1154                                                type: boolean
  1155                                              procMount:
  1156                                                description: procMount denotes the type
  1157                                                  of proc mount to use for the containers.
  1158                                                  The default is DefaultProcMount which
  1159                                                  uses the container runtime defaults
  1160                                                  for readonly paths and masked paths.
  1161                                                  This requires the ProcMountType feature
  1162                                                  flag to be enabled.
  1163                                                type: string
  1164                                              readOnlyRootFilesystem:
  1165                                                description: Whether this container
  1166                                                  has a read-only root filesystem. Default
  1167                                                  is false.
  1168                                                type: boolean
  1169                                              runAsGroup:
  1170                                                description: The GID to run the entrypoint
  1171                                                  of the container process. Uses runtime
  1172                                                  default if unset. May also be set
  1173                                                  in PodSecurityContext.  If set in
  1174                                                  both SecurityContext and PodSecurityContext,
  1175                                                  the value specified in SecurityContext
  1176                                                  takes precedence.
  1177                                                format: int64
  1178                                                type: integer
  1179                                              runAsNonRoot:
  1180                                                description: Indicates that the container
  1181                                                  must run as a non-root user. If true,
  1182                                                  the Kubelet will validate the image
  1183                                                  at runtime to ensure that it does
  1184                                                  not run as UID 0 (root) and fail to
  1185                                                  start the container if it does. If
  1186                                                  unset or false, no such validation
  1187                                                  will be performed. May also be set
  1188                                                  in PodSecurityContext.  If set in
  1189                                                  both SecurityContext and PodSecurityContext,
  1190                                                  the value specified in SecurityContext
  1191                                                  takes precedence.
  1192                                                type: boolean
  1193                                              runAsUser:
  1194                                                description: The UID to run the entrypoint
  1195                                                  of the container process. Defaults
  1196                                                  to user specified in image metadata
  1197                                                  if unspecified. May also be set in
  1198                                                  PodSecurityContext.  If set in both
  1199                                                  SecurityContext and PodSecurityContext,
  1200                                                  the value specified in SecurityContext
  1201                                                  takes precedence.
  1202                                                format: int64
  1203                                                type: integer
  1204                                              seLinuxOptions:
  1205                                                description: The SELinux context to
  1206                                                  be applied to the container. If unspecified,
  1207                                                  the container runtime will allocate
  1208                                                  a random SELinux context for each
  1209                                                  container.  May also be set in PodSecurityContext.  If
  1210                                                  set in both SecurityContext and PodSecurityContext,
  1211                                                  the value specified in SecurityContext
  1212                                                  takes precedence.
  1213                                                properties:
  1214                                                  level:
  1215                                                    description: Level is SELinux level
  1216                                                      label that applies to the container.
  1217                                                    type: string
  1218                                                  role:
  1219                                                    description: Role is a SELinux role
  1220                                                      label that applies to the container.
  1221                                                    type: string
  1222                                                  type:
  1223                                                    description: Type is a SELinux type
  1224                                                      label that applies to the container.
  1225                                                    type: string
  1226                                                  user:
  1227                                                    description: User is a SELinux user
  1228                                                      label that applies to the container.
  1229                                                    type: string
  1230                                                type: object
  1231                                              seccompProfile:
  1232                                                description: The seccomp options to
  1233                                                  use by this container. If seccomp
  1234                                                  options are provided at both the pod
  1235                                                  & container level, the container options
  1236                                                  override the pod options.
  1237                                                properties:
  1238                                                  localhostProfile:
  1239                                                    description: localhostProfile indicates
  1240                                                      a profile defined in a file on
  1241                                                      the node should be used. The profile
  1242                                                      must be preconfigured on the node
  1243                                                      to work. Must be a descending
  1244                                                      path, relative to the kubelet's
  1245                                                      configured seccomp profile location.
  1246                                                      Must only be set if type is "Localhost".
  1247                                                    type: string
  1248                                                  type:
  1249                                                    description: "type indicates which
  1250                                                      kind of seccomp profile will be
  1251                                                      applied. Valid options are: \n
  1252                                                      Localhost - a profile defined
  1253                                                      in a file on the node should be
  1254                                                      used. RuntimeDefault - the container
  1255                                                      runtime default profile should
  1256                                                      be used. Unconfined - no profile
  1257                                                      should be applied."
  1258                                                    type: string
  1259                                                required:
  1260                                                - type
  1261                                                type: object
  1262                                              windowsOptions:
  1263                                                description: The Windows specific settings
  1264                                                  applied to all containers. If unspecified,
  1265                                                  the options from the PodSecurityContext
  1266                                                  will be used. If set in both SecurityContext
  1267                                                  and PodSecurityContext, the value
  1268                                                  specified in SecurityContext takes
  1269                                                  precedence.
  1270                                                properties:
  1271                                                  gmsaCredentialSpec:
  1272                                                    description: GMSACredentialSpec
  1273                                                      is where the GMSA admission webhook
  1274                                                      (https://github.com/kubernetes-sigs/windows-gmsa)
  1275                                                      inlines the contents of the GMSA
  1276                                                      credential spec named by the GMSACredentialSpecName
  1277                                                      field.
  1278                                                    type: string
  1279                                                  gmsaCredentialSpecName:
  1280                                                    description: GMSACredentialSpecName
  1281                                                      is the name of the GMSA credential
  1282                                                      spec to use.
  1283                                                    type: string
  1284                                                  hostProcess:
  1285                                                    description: HostProcess determines
  1286                                                      if a container should be run as
  1287                                                      a 'Host Process' container. This
  1288                                                      field is alpha-level and will
  1289                                                      only be honored by components
  1290                                                      that enable the WindowsHostProcessContainers
  1291                                                      feature flag. Setting this field
  1292                                                      without the feature flag will
  1293                                                      result in errors when validating
  1294                                                      the Pod. All of a Pod's containers
  1295                                                      must have the same effective HostProcess
  1296                                                      value (it is not allowed to have
  1297                                                      a mix of HostProcess containers
  1298                                                      and non-HostProcess containers).  In
  1299                                                      addition, if HostProcess is true
  1300                                                      then HostNetwork must also be
  1301                                                      set to true.
  1302                                                    type: boolean
  1303                                                  runAsUserName:
  1304                                                    description: The UserName in Windows
  1305                                                      to run the entrypoint of the container
  1306                                                      process. Defaults to the user
  1307                                                      specified in image metadata if
  1308                                                      unspecified. May also be set in
  1309                                                      PodSecurityContext. If set in
  1310                                                      both SecurityContext and PodSecurityContext,
  1311                                                      the value specified in SecurityContext
  1312                                                      takes precedence.
  1313                                                    type: string
  1314                                                type: object
  1315                                            type: object
  1316                                          startupProbe:
  1317                                            description: 'StartupProbe indicates that
  1318                                              the Pod has successfully initialized.
  1319                                              If specified, no other probes are executed
  1320                                              until this completes successfully. If
  1321                                              this probe fails, the Pod will be restarted,
  1322                                              just as if the livenessProbe failed. This
  1323                                              can be used to provide different probe
  1324                                              parameters at the beginning of a Pod''s
  1325                                              lifecycle, when it might take a long time
  1326                                              to load data or warm a cache, than during
  1327                                              steady-state operation. This cannot be
  1328                                              updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
  1329                                            properties:
  1330                                              exec:
  1331                                                description: One and only one of the
  1332                                                  following should be specified. Exec
  1333                                                  specifies the action to take.
  1334                                                properties:
  1335                                                  command:
  1336                                                    description: Command is the command
  1337                                                      line to execute inside the container,
  1338                                                      the working directory for the
  1339                                                      command  is root ('/') in the
  1340                                                      container's filesystem. The command
  1341                                                      is simply exec'd, it is not run
  1342                                                      inside a shell, so traditional
  1343                                                      shell instructions ('|', etc)
  1344                                                      won't work. To use a shell, you
  1345                                                      need to explicitly call out to
  1346                                                      that shell. Exit status of 0 is
  1347                                                      treated as live/healthy and non-zero
  1348                                                      is unhealthy.
  1349                                                    items:
  1350                                                      type: string
  1351                                                    type: array
  1352                                                type: object
  1353                                              failureThreshold:
  1354                                                description: Minimum consecutive failures
  1355                                                  for the probe to be considered failed
  1356                                                  after having succeeded. Defaults to
  1357                                                  3. Minimum value is 1.
  1358                                                format: int32
  1359                                                type: integer
  1360                                              httpGet:
  1361                                                description: HTTPGet specifies the http
  1362                                                  request to perform.
  1363                                                properties:
  1364                                                  host:
  1365                                                    description: Host name to connect
  1366                                                      to, defaults to the pod IP. You
  1367                                                      probably want to set "Host" in
  1368                                                      httpHeaders instead.
  1369                                                    type: string
  1370                                                  httpHeaders:
  1371                                                    description: Custom headers to set
  1372                                                      in the request. HTTP allows repeated
  1373                                                      headers.
  1374                                                    items:
  1375                                                      description: HTTPHeader describes
  1376                                                        a custom header to be used in
  1377                                                        HTTP probes
  1378                                                      properties:
  1379                                                        name:
  1380                                                          description: The header field
  1381                                                            name
  1382                                                          type: string
  1383                                                        value:
  1384                                                          description: The header field
  1385                                                            value
  1386                                                          type: string
  1387                                                      required:
  1388                                                      - name
  1389                                                      - value
  1390                                                      type: object
  1391                                                    type: array
  1392                                                  path:
  1393                                                    description: Path to access on the
  1394                                                      HTTP server.
  1395                                                    type: string
  1396                                                  port:
  1397                                                    anyOf:
  1398                                                    - type: integer
  1399                                                    - type: string
  1400                                                    description: Name or number of the
  1401                                                      port to access on the container.
  1402                                                      Number must be in the range 1
  1403                                                      to 65535. Name must be an IANA_SVC_NAME.
  1404                                                    x-kubernetes-int-or-string: true
  1405                                                  scheme:
  1406                                                    description: Scheme to use for connecting
  1407                                                      to the host. Defaults to HTTP.
  1408                                                    type: string
  1409                                                required:
  1410                                                - port
  1411                                                type: object
  1412                                              initialDelaySeconds:
  1413                                                description: 'Number of seconds after
  1414                                                  the container has started before liveness
  1415                                                  probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
  1416                                                format: int32
  1417                                                type: integer
  1418                                              periodSeconds:
  1419                                                description: How often (in seconds)
  1420                                                  to perform the probe. Default to 10
  1421                                                  seconds. Minimum value is 1.
  1422                                                format: int32
  1423                                                type: integer
  1424                                              successThreshold:
  1425                                                description: Minimum consecutive successes
  1426                                                  for the probe to be considered successful
  1427                                                  after having failed. Defaults to 1.
  1428                                                  Must be 1 for liveness and startup.
  1429                                                  Minimum value is 1.
  1430                                                format: int32
  1431                                                type: integer
  1432                                              tcpSocket:
  1433                                                description: 'TCPSocket specifies an
  1434                                                  action involving a TCP port. TCP hooks
  1435                                                  not yet supported TODO: implement
  1436                                                  a realistic TCP lifecycle hook'
  1437                                                properties:
  1438                                                  host:
  1439                                                    description: 'Optional: Host name
  1440                                                      to connect to, defaults to the
  1441                                                      pod IP.'
  1442                                                    type: string
  1443                                                  port:
  1444                                                    anyOf:
  1445                                                    - type: integer
  1446                                                    - type: string
  1447                                                    description: Number or name of the
  1448                                                      port to access on the container.
  1449                                                      Number must be in the range 1
  1450                                                      to 65535. Name must be an IANA_SVC_NAME.
  1451                                                    x-kubernetes-int-or-string: true
  1452                                                required:
  1453                                                - port
  1454                                                type: object
  1455                                              terminationGracePeriodSeconds:
  1456                                                description: Optional duration in seconds
  1457                                                  the pod needs to terminate gracefully
  1458                                                  upon probe failure. The grace period
  1459                                                  is the duration in seconds after the
  1460                                                  processes running in the pod are sent
  1461                                                  a termination signal and the time
  1462                                                  when the processes are forcibly halted
  1463                                                  with a kill signal. Set this value
  1464                                                  longer than the expected cleanup time
  1465                                                  for your process. If this value is
  1466                                                  nil, the pod's terminationGracePeriodSeconds
  1467                                                  will be used. Otherwise, this value
  1468                                                  overrides the value provided by the
  1469                                                  pod spec. Value must be non-negative
  1470                                                  integer. The value zero indicates
  1471                                                  stop immediately via the kill signal
  1472                                                  (no opportunity to shut down). This
  1473                                                  is a beta field and requires enabling
  1474                                                  ProbeTerminationGracePeriod feature
  1475                                                  gate. Minimum value is 1. spec.terminationGracePeriodSeconds
  1476                                                  is used if unset.
  1477                                                format: int64
  1478                                                type: integer
  1479                                              timeoutSeconds:
  1480                                                description: 'Number of seconds after
  1481                                                  which the probe times out. Defaults
  1482                                                  to 1 second. Minimum value is 1. More
  1483                                                  info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
  1484                                                format: int32
  1485                                                type: integer
  1486                                            type: object
  1487                                          stdin:
  1488                                            description: Whether this container should
  1489                                              allocate a buffer for stdin in the container
  1490                                              runtime. If this is not set, reads from
  1491                                              stdin in the container will always result
  1492                                              in EOF. Default is false.
  1493                                            type: boolean
  1494                                          stdinOnce:
  1495                                            description: Whether the container runtime
  1496                                              should close the stdin channel after it
  1497                                              has been opened by a single attach. When
  1498                                              stdin is true the stdin stream will remain
  1499                                              open across multiple attach sessions.
  1500                                              If stdinOnce is set to true, stdin is
  1501                                              opened on container start, is empty until
  1502                                              the first client attaches to stdin, and
  1503                                              then remains open and accepts data until
  1504                                              the client disconnects, at which time
  1505                                              stdin is closed and remains closed until
  1506                                              the container is restarted. If this flag
  1507                                              is false, a container processes that reads
  1508                                              from stdin will never receive an EOF.
  1509                                              Default is false
  1510                                            type: boolean
  1511                                          terminationMessagePath:
  1512                                            description: 'Optional: Path at which the
  1513                                              file to which the container''s termination
  1514                                              message will be written is mounted into
  1515                                              the container''s filesystem. Message written
  1516                                              is intended to be brief final status,
  1517                                              such as an assertion failure message.
  1518                                              Will be truncated by the node if greater
  1519                                              than 4096 bytes. The total message length
  1520                                              across all containers will be limited
  1521                                              to 12kb. Defaults to /dev/termination-log.
  1522                                              Cannot be updated.'
  1523                                            type: string
  1524                                          terminationMessagePolicy:
  1525                                            description: Indicate how the termination
  1526                                              message should be populated. File will
  1527                                              use the contents of terminationMessagePath
  1528                                              to populate the container status message
  1529                                              on both success and failure. FallbackToLogsOnError
  1530                                              will use the last chunk of container log
  1531                                              output if the termination message file
  1532                                              is empty and the container exited with
  1533                                              an error. The log output is limited to
  1534                                              2048 bytes or 80 lines, whichever is smaller.
  1535                                              Defaults to File. Cannot be updated.
  1536                                            type: string
  1537                                          tty:
  1538                                            description: Whether this container should
  1539                                              allocate a TTY for itself, also requires
  1540                                              'stdin' to be true. Default is false.
  1541                                            type: boolean
  1542                                          volumeDevices:
  1543                                            description: volumeDevices is the list of
  1544                                              block devices to be used by the container.
  1545                                            items:
  1546                                              description: volumeDevice describes a
  1547                                                mapping of a raw block device within
  1548                                                a container.
  1549                                              properties:
  1550                                                devicePath:
  1551                                                  description: devicePath is the path
  1552                                                    inside of the container that the
  1553                                                    device will be mapped to.
  1554                                                  type: string
  1555                                                name:
  1556                                                  description: name must match the name
  1557                                                    of a persistentVolumeClaim in the
  1558                                                    pod
  1559                                                  type: string
  1560                                              required:
  1561                                              - devicePath
  1562                                              - name
  1563                                              type: object
  1564                                            type: array
  1565                                          volumeMounts:
  1566                                            description: Pod volumes to mount into the
  1567                                              container's filesystem. Cannot be updated.
  1568                                            items:
  1569                                              description: VolumeMount describes a mounting
  1570                                                of a Volume within a container.
  1571                                              properties:
  1572                                                mountPath:
  1573                                                  description: Path within the container
  1574                                                    at which the volume should be mounted.  Must
  1575                                                    not contain ':'.
  1576                                                  type: string
  1577                                                mountPropagation:
  1578                                                  description: mountPropagation determines
  1579                                                    how mounts are propagated from the
  1580                                                    host to container and the other
  1581                                                    way around. When not set, MountPropagationNone
  1582                                                    is used. This field is beta in 1.10.
  1583                                                  type: string
  1584                                                name:
  1585                                                  description: This must match the Name
  1586                                                    of a Volume.
  1587                                                  type: string
  1588                                                readOnly:
  1589                                                  description: Mounted read-only if
  1590                                                    true, read-write otherwise (false
  1591                                                    or unspecified). Defaults to false.
  1592                                                  type: boolean
  1593                                                subPath:
  1594                                                  description: Path within the volume
  1595                                                    from which the container's volume
  1596                                                    should be mounted. Defaults to ""
  1597                                                    (volume's root).
  1598                                                  type: string
  1599                                                subPathExpr:
  1600                                                  description: Expanded path within
  1601                                                    the volume from which the container's
  1602                                                    volume should be mounted. Behaves
  1603                                                    similarly to SubPath but environment
  1604                                                    variable references $(VAR_NAME)
  1605                                                    are expanded using the container's
  1606                                                    environment. Defaults to "" (volume's
  1607                                                    root). SubPathExpr and SubPath are
  1608                                                    mutually exclusive.
  1609                                                  type: string
  1610                                              required:
  1611                                              - mountPath
  1612                                              - name
  1613                                              type: object
  1614                                            type: array
  1615                                          workingDir:
  1616                                            description: Container's working directory.
  1617                                              If not specified, the container runtime's
  1618                                              default will be used, which might be configured
  1619                                              in the container image. Cannot be updated.
  1620                                            type: string
  1621                                        required:
  1622                                        - name
  1623                                        type: object
  1624                                      type: array
  1625                                    timeout:
  1626                                      description: Timeout defines the maximum amount
  1627                                        of time Velero should wait for the initContainers
  1628                                        to complete.
  1629                                      type: string
  1630                                  type: object
  1631                              type: object
  1632                            type: array
  1633                        required:
  1634                        - name
  1635                        type: object
  1636                      type: array
  1637                  type: object
  1638                includeClusterResources:
  1639                  description: IncludeClusterResources specifies whether cluster-scoped
  1640                    resources should be included for consideration in the restore. If
  1641                    null, defaults to true.
  1642                  nullable: true
  1643                  type: boolean
  1644                includedNamespaces:
  1645                  description: IncludedNamespaces is a slice of namespace names to include
  1646                    objects from. If empty, all namespaces are included.
  1647                  items:
  1648                    type: string
  1649                  nullable: true
  1650                  type: array
  1651                includedResources:
  1652                  description: IncludedResources is a slice of resource names to include
  1653                    in the restore. If empty, all resources in the backup are included.
  1654                  items:
  1655                    type: string
  1656                  nullable: true
  1657                  type: array
  1658                labelSelector:
  1659                  description: LabelSelector is a metav1.LabelSelector to filter with
  1660                    when restoring individual objects from the backup. If empty or nil,
  1661                    all objects are included. Optional.
  1662                  nullable: true
  1663                  properties:
  1664                    matchExpressions:
  1665                      description: matchExpressions is a list of label selector requirements.
  1666                        The requirements are ANDed.
  1667                      items:
  1668                        description: A label selector requirement is a selector that
  1669                          contains values, a key, and an operator that relates the key
  1670                          and values.
  1671                        properties:
  1672                          key:
  1673                            description: key is the label key that the selector applies
  1674                              to.
  1675                            type: string
  1676                          operator:
  1677                            description: operator represents a key's relationship to
  1678                              a set of values. Valid operators are In, NotIn, Exists
  1679                              and DoesNotExist.
  1680                            type: string
  1681                          values:
  1682                            description: values is an array of string values. If the
  1683                              operator is In or NotIn, the values array must be non-empty.
  1684                              If the operator is Exists or DoesNotExist, the values
  1685                              array must be empty. This array is replaced during a strategic
  1686                              merge patch.
  1687                            items:
  1688                              type: string
  1689                            type: array
  1690                        required:
  1691                        - key
  1692                        - operator
  1693                        type: object
  1694                      type: array
  1695                    matchLabels:
  1696                      additionalProperties:
  1697                        type: string
  1698                      description: matchLabels is a map of {key,value} pairs. A single
  1699                        {key,value} in the matchLabels map is equivalent to an element
  1700                        of matchExpressions, whose key field is "key", the operator
  1701                        is "In", and the values array contains only "value". The requirements
  1702                        are ANDed.
  1703                      type: object
  1704                  type: object
  1705                namespaceMapping:
  1706                  additionalProperties:
  1707                    type: string
  1708                  description: NamespaceMapping is a map of source namespace names to
  1709                    target namespace names to restore into. Any source namespaces not
  1710                    included in the map will be restored into namespaces of the same
  1711                    name.
  1712                  type: object
  1713                orLabelSelectors:
  1714                  description: OrLabelSelectors is list of metav1.LabelSelector to filter
  1715                    with when restoring individual objects from the backup. If multiple
  1716                    provided they will be joined by the OR operator. LabelSelector as
  1717                    well as OrLabelSelectors cannot co-exist in restore request, only
  1718                    one of them can be used
  1719                  items:
  1720                    description: A label selector is a label query over a set of resources.
  1721                      The result of matchLabels and matchExpressions are ANDed. An empty
  1722                      label selector matches all objects. A null label selector matches
  1723                      no objects.
  1724                    properties:
  1725                      matchExpressions:
  1726                        description: matchExpressions is a list of label selector requirements.
  1727                          The requirements are ANDed.
  1728                        items:
  1729                          description: A label selector requirement is a selector that
  1730                            contains values, a key, and an operator that relates the
  1731                            key and values.
  1732                          properties:
  1733                            key:
  1734                              description: key is the label key that the selector applies
  1735                                to.
  1736                              type: string
  1737                            operator:
  1738                              description: operator represents a key's relationship
  1739                                to a set of values. Valid operators are In, NotIn, Exists
  1740                                and DoesNotExist.
  1741                              type: string
  1742                            values:
  1743                              description: values is an array of string values. If the
  1744                                operator is In or NotIn, the values array must be non-empty.
  1745                                If the operator is Exists or DoesNotExist, the values
  1746                                array must be empty. This array is replaced during a
  1747                                strategic merge patch.
  1748                              items:
  1749                                type: string
  1750                              type: array
  1751                          required:
  1752                          - key
  1753                          - operator
  1754                          type: object
  1755                        type: array
  1756                      matchLabels:
  1757                        additionalProperties:
  1758                          type: string
  1759                        description: matchLabels is a map of {key,value} pairs. A single
  1760                          {key,value} in the matchLabels map is equivalent to an element
  1761                          of matchExpressions, whose key field is "key", the operator
  1762                          is "In", and the values array contains only "value". The requirements
  1763                          are ANDed.
  1764                        type: object
  1765                    type: object
  1766                  nullable: true
  1767                  type: array
  1768                preserveNodePorts:
  1769                  description: PreserveNodePorts specifies whether to restore old nodePorts
  1770                    from backup.
  1771                  nullable: true
  1772                  type: boolean
  1773                restorePVs:
  1774                  description: RestorePVs specifies whether to restore all included
  1775                    PVs from snapshot (via the cloudprovider).
  1776                  nullable: true
  1777                  type: boolean
  1778                restoreStatus:
  1779                  description: RestoreStatus specifies which resources we should restore
  1780                    the status field. If nil, no objects are included. Optional.
  1781                  nullable: true
  1782                  properties:
  1783                    excludedResources:
  1784                      description: ExcludedResources specifies the resources to which
  1785                        will not restore the status.
  1786                      items:
  1787                        type: string
  1788                      nullable: true
  1789                      type: array
  1790                    includedResources:
  1791                      description: IncludedResources specifies the resources to which
  1792                        will restore the status. If empty, it applies to all resources.
  1793                      items:
  1794                        type: string
  1795                      nullable: true
  1796                      type: array
  1797                  type: object
  1798                scheduleName:
  1799                  description: ScheduleName is the unique name of the Velero schedule
  1800                    to restore from. If specified, and BackupName is empty, Velero will
  1801                    restore from the most recent successful backup created from this
  1802                    schedule.
  1803                  type: string
  1804              required:
  1805              - backupName
  1806              type: object
  1807            status:
  1808              description: RestoreStatus captures the current status of a Velero restore
  1809              properties:
  1810                completionTimestamp:
  1811                  description: CompletionTimestamp records the time the restore operation
  1812                    was completed. Completion time is recorded even on failed restore.
  1813                    The server's time is used for StartTimestamps
  1814                  format: date-time
  1815                  nullable: true
  1816                  type: string
  1817                errors:
  1818                  description: Errors is a count of all error messages that were generated
  1819                    during execution of the restore. The actual errors are stored in
  1820                    object storage.
  1821                  type: integer
  1822                failureReason:
  1823                  description: FailureReason is an error that caused the entire restore
  1824                    to fail.
  1825                  type: string
  1826                phase:
  1827                  description: Phase is the current state of the Restore
  1828                  enum:
  1829                  - New
  1830                  - FailedValidation
  1831                  - InProgress
  1832                  - Completed
  1833                  - PartiallyFailed
  1834                  - Failed
  1835                  type: string
  1836                progress:
  1837                  description: Progress contains information about the restore's execution
  1838                    progress. Note that this information is best-effort only -- if Velero
  1839                    fails to update it during a restore for any reason, it may be inaccurate/stale.
  1840                  nullable: true
  1841                  properties:
  1842                    itemsRestored:
  1843                      description: ItemsRestored is the number of items that have actually
  1844                        been restored so far
  1845                      type: integer
  1846                    totalItems:
  1847                      description: TotalItems is the total number of items to be restored.
  1848                        This number may change throughout the execution of the restore
  1849                        due to plugins that return additional related items to restore
  1850                      type: integer
  1851                  type: object
  1852                startTimestamp:
  1853                  description: StartTimestamp records the time the restore operation
  1854                    was started. The server's time is used for StartTimestamps
  1855                  format: date-time
  1856                  nullable: true
  1857                  type: string
  1858                validationErrors:
  1859                  description: ValidationErrors is a slice of all validation errors
  1860                    (if applicable)
  1861                  items:
  1862                    type: string
  1863                  nullable: true
  1864                  type: array
  1865                warnings:
  1866                  description: Warnings is a count of all warning messages that were
  1867                    generated during execution of the restore. The actual warnings are
  1868                    stored in object storage.
  1869                  type: integer
  1870              type: object
  1871          type: object
  1872      served: true
  1873      storage: true
  1874  status:
  1875    acceptedNames:
  1876      kind: ""
  1877      plural: ""
  1878    conditions: []
  1879    storedVersions: []