---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.5
    operatorframework.io/installed-alongside-54b53cff721cb66d: openshift-adp/oadp-operator.v1.5.2
    operatorframework.io/installed-alongside-aee38e6057cbc630: openshift-migration/oadp-operator.v1.5.2
  creationTimestamp: "2025-10-27T12:40:57Z"
  generation: 1
  labels:
    olm.managed: "true"
    operators.coreos.com/redhat-oadp-operator.openshift-adp: ""
    operators.coreos.com/redhat-oadp-operator.openshift-migration: ""
  managedFields:
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        f:acceptedNames:
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:shortNames: {}
          f:singular: {}
        f:conditions:
          k:{"type":"Established"}:
            .: {}
            f:lastTransitionTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
          k:{"type":"NamesAccepted"}:
            .: {}
            f:lastTransitionTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
    manager: kube-apiserver
    operation: Update
    subresource: status
    time: "2025-10-27T12:40:57Z"
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:controller-gen.kubebuilder.io/version: {}
          f:operatorframework.io/installed-alongside-54b53cff721cb66d: {}
          f:operatorframework.io/installed-alongside-aee38e6057cbc630: {}
        f:labels:
          .: {}
          f:olm.managed: {}
      f:spec:
        f:conversion:
          .: {}
          f:strategy: {}
        f:group: {}
        f:names:
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:shortNames: {}
          f:singular: {}
        f:scope: {}
        f:versions: {}
    manager: catalog
    operation: Update
    time: "2025-10-27T13:11:32Z"
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          f:operators.coreos.com/redhat-oadp-operator.openshift-adp: {}
          f:operators.coreos.com/redhat-oadp-operator.openshift-migration: {}
    manager: olm
    operation: Update
    time: "2025-10-27T13:11:43Z"
  name: nonadminbackups.oadp.openshift.io
  resourceVersion: "76689"
  uid: c9929320-7b14-4606-9970-5e406d28400a
spec:
  conversion:
    strategy: None
  group: oadp.openshift.io
  names:
    kind: NonAdminBackup
    listKind: NonAdminBackupList
    plural: nonadminbackups
    shortNames:
    - nab
    singular: nonadminbackup
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.phase
      name: Request-Phase
      type: string
    - jsonPath: .status.veleroBackup.status.phase
      name: Velero-Phase
      type: string
    - jsonPath: .metadata.creationTimestamp
      name: Age
      type: date
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: NonAdminBackup is the Schema for the nonadminbackups API
        properties:
          apiVersion:
            description: |-
              APIVersion defines the versioned schema of this representation of an object.
              Servers should convert recognized schemas to the latest internal value, and
              may reject unrecognized values.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
            type: string
          kind:
            description: |-
              Kind is a string value representing the REST resource this object represents.
              Servers may infer this from the endpoint the client submits requests to.
              Cannot be updated.
              In CamelCase.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
            type: string
          metadata:
            type: object
          spec:
            description: NonAdminBackupSpec defines the desired state of NonAdminBackup
            properties:
              backupSpec:
                description: BackupSpec defines the specification for a Velero backup.
                properties:
                  csiSnapshotTimeout:
                    description: |-
                      CSISnapshotTimeout specifies the time used to wait for CSI VolumeSnapshot status turns to
                      ReadyToUse during creation, before returning error as timeout.
                      The default value is 10 minute.
                    type: string
                  datamover:
                    description: |-
                      DataMover specifies the data mover to be used by the backup.
                      If DataMover is "" or "velero", the built-in data mover will be used.
                    type: string
                  defaultVolumesToFsBackup:
                    description: |-
                      DefaultVolumesToFsBackup specifies whether pod volume file system backup should be used
                      for all volumes by default.
                    nullable: true
                    type: boolean
                  defaultVolumesToRestic:
                    description: |-
                      DefaultVolumesToRestic specifies whether restic should be used to take a
                      backup of all pod volumes by default.

                      Deprecated: this field is no longer used and will be removed entirely in future. Use DefaultVolumesToFsBackup instead.
                    nullable: true
                    type: boolean
                  excludedClusterScopedResources:
                    description: |-
                      ExcludedClusterScopedResources is a slice of cluster-scoped
                      resource type names to exclude from the backup.
                      If set to "*", all cluster-scoped resource types are excluded.
                      The default value is empty.
                    items:
                      type: string
                    nullable: true
                    type: array
                  excludedNamespaceScopedResources:
                    description: |-
                      ExcludedNamespaceScopedResources is a slice of namespace-scoped
                      resource type names to exclude from the backup.
                      If set to "*", all namespace-scoped resource types are excluded.
                      The default value is empty.
                    items:
                      type: string
                    nullable: true
                    type: array
                  excludedNamespaces:
                    description: |-
                      ExcludedNamespaces contains a list of namespaces that are not
                      included in the backup.
                    items:
                      type: string
                    nullable: true
                    type: array
                  excludedResources:
                    description: |-
                      ExcludedResources is a slice of resource names that are not
                      included in the backup.
                    items:
                      type: string
                    nullable: true
                    type: array
                  hooks:
                    description: Hooks represent custom behaviors that should be executed
                      at different phases of the backup.
                    properties:
                      resources:
                        description: Resources are hooks that should be executed when
                          backing up individual instances of a resource.
                        items:
                          description: |-
                            BackupResourceHookSpec defines one or more BackupResourceHooks that should be executed based on
                            the rules defined for namespaces, resources, and label selector.
                          properties:
                            excludedNamespaces:
                              description: ExcludedNamespaces specifies the namespaces
                                to which this hook spec does not apply.
                              items:
                                type: string
                              nullable: true
                              type: array
                            excludedResources:
                              description: ExcludedResources specifies the resources
                                to which this hook spec does not apply.
                              items:
                                type: string
                              nullable: true
                              type: array
                            includedNamespaces:
                              description: |-
                                IncludedNamespaces specifies the namespaces to which this hook spec applies. If empty, it applies
                                to all namespaces.
                              items:
                                type: string
                              nullable: true
                              type: array
                            includedResources:
                              description: |-
                                IncludedResources specifies the resources to which this hook spec applies. If empty, it applies
                                to all resources.
                              items:
                                type: string
                              nullable: true
                              type: array
                            labelSelector:
                              description: LabelSelector, if specified, filters the
                                resources to which this hook spec applies.
                              nullable: true
                              properties:
                                matchExpressions:
                                  description: matchExpressions is a list of label
                                    selector requirements. The requirements are ANDed.
                                  items:
                                    description: |-
                                      A label selector requirement is a selector that contains values, a key, and an operator that
                                      relates the key and values.
                                    properties:
                                      key:
                                        description: key is the label key that the
                                          selector applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          operator represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists and DoesNotExist.
                                        type: string
                                      values:
                                        description: |-
                                          values is an array of string values. If the operator is In or NotIn,
                                          the values array must be non-empty. If the operator is Exists or DoesNotExist,
                                          the values array must be empty. This array is replaced during a strategic
                                          merge patch.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchLabels:
                                  additionalProperties:
                                    type: string
                                  description: |-
                                    matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
                                    map is equivalent to an element of matchExpressions, whose key field is "key", the
                                    operator is "In", and the values array contains only "value". The requirements are ANDed.
                                  type: object
                              type: object
                              x-kubernetes-map-type: atomic
                            name:
                              description: Name is the name of this hook.
                              type: string
                            post:
                              description: |-
                                PostHooks is a list of BackupResourceHooks to execute after storing the item in the backup.
                                These are executed after all "additional items" from item actions are processed.
                              items:
                                description: BackupResourceHook defines a hook for
                                  a resource.
                                properties:
                                  exec:
                                    description: Exec defines an exec hook.
                                    properties:
                                      command:
                                        description: Command is the command and arguments
                                          to execute.
                                        items:
                                          type: string
                                        minItems: 1
                                        type: array
                                      container:
                                        description: |-
                                          Container is the container in the pod where the command should be executed. If not specified,
                                          the pod's first container is used.
                                        type: string
                                      onError:
                                        description: OnError specifies how Velero
                                          should behave if it encounters an error
                                          executing this hook.
                                        enum:
                                        - Continue
                                        - Fail
                                        type: string
                                      timeout:
                                        description: |-
                                          Timeout defines the maximum amount of time Velero should wait for the hook to complete before
                                          considering the execution a failure.
                                        type: string
                                    required:
                                    - command
                                    type: object
                                required:
                                - exec
                                type: object
                              type: array
                            pre:
                              description: |-
                                PreHooks is a list of BackupResourceHooks to execute prior to storing the item in the backup.
                                These are executed before any "additional items" from item actions are processed.
                              items:
                                description: BackupResourceHook defines a hook for
                                  a resource.
                                properties:
                                  exec:
                                    description: Exec defines an exec hook.
                                    properties:
                                      command:
                                        description: Command is the command and arguments
                                          to execute.
                                        items:
                                          type: string
                                        minItems: 1
                                        type: array
                                      container:
                                        description: |-
                                          Container is the container in the pod where the command should be executed. If not specified,
                                          the pod's first container is used.
                                        type: string
                                      onError:
                                        description: OnError specifies how Velero
                                          should behave if it encounters an error
                                          executing this hook.
                                        enum:
                                        - Continue
                                        - Fail
                                        type: string
                                      timeout:
                                        description: |-
                                          Timeout defines the maximum amount of time Velero should wait for the hook to complete before
                                          considering the execution a failure.
                                        type: string
                                    required:
                                    - command
                                    type: object
                                required:
                                - exec
                                type: object
                              type: array
                          required:
                          - name
                          type: object
                        nullable: true
                        type: array
                    type: object
                  includeClusterResources:
                    description: |-
                      IncludeClusterResources specifies whether cluster-scoped resources
                      should be included for consideration in the backup.
                    nullable: true
                    type: boolean
                  includedClusterScopedResources:
                    description: |-
                      IncludedClusterScopedResources is a slice of cluster-scoped
                      resource type names to include in the backup.
                      If set to "*", all cluster-scoped resource types are included.
                      The default value is empty, which means only related
                      cluster-scoped resources are included.
                    items:
                      type: string
                    nullable: true
                    type: array
                  includedNamespaceScopedResources:
                    description: |-
                      IncludedNamespaceScopedResources is a slice of namespace-scoped
                      resource type names to include in the backup.
                      The default value is "*".
                    items:
                      type: string
                    nullable: true
                    type: array
                  includedNamespaces:
                    description: |-
                      IncludedNamespaces is a slice of namespace names to include objects
                      from. If empty, all namespaces are included.
                    items:
                      type: string
                    nullable: true
                    type: array
                  includedResources:
                    description: |-
                      IncludedResources is a slice of resource names to include
                      in the backup. If empty, all resources are included.
                    items:
                      type: string
                    nullable: true
                    type: array
                  itemOperationTimeout:
                    description: |-
                      ItemOperationTimeout specifies the time used to wait for asynchronous BackupItemAction operations
                      The default value is 4 hour.
                    type: string
                  labelSelector:
                    description: |-
                      LabelSelector is a metav1.LabelSelector to filter with
                      when adding individual objects to the backup. If empty
                      or nil, all objects are included. Optional.
                    nullable: true
                    properties:
                      matchExpressions:
                        description: matchExpressions is a list of label selector
                          requirements. The requirements are ANDed.
                        items:
                          description: |-
                            A label selector requirement is a selector that contains values, a key, and an operator that
                            relates the key and values.
                          properties:
                            key:
                              description: key is the label key that the selector
                                applies to.
                              type: string
                            operator:
                              description: |-
                                operator represents a key's relationship to a set of values.
                                Valid operators are In, NotIn, Exists and DoesNotExist.
                              type: string
                            values:
                              description: |-
                                values is an array of string values. If the operator is In or NotIn,
                                the values array must be non-empty. If the operator is Exists or DoesNotExist,
                                the values array must be empty. This array is replaced during a strategic
                                merge patch.
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                          required:
                          - key
                          - operator
                          type: object
                        type: array
                        x-kubernetes-list-type: atomic
                      matchLabels:
                        additionalProperties:
                          type: string
                        description: |-
                          matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
                          map is equivalent to an element of matchExpressions, whose key field is "key", the
                          operator is "In", and the values array contains only "value". The requirements are ANDed.
                        type: object
                    type: object
                    x-kubernetes-map-type: atomic
                  metadata:
                    properties:
                      labels:
                        additionalProperties:
                          type: string
                        type: object
                    type: object
                  orLabelSelectors:
                    description: |-
                      OrLabelSelectors is list of metav1.LabelSelector to filter with
                      when adding individual objects to the backup. If multiple provided
                      they will be joined by the OR operator. LabelSelector as well as
                      OrLabelSelectors cannot co-exist in backup request, only one of them
                      can be used.
                    items:
                      description: |-
                        A label selector is a label query over a set of resources. The result of matchLabels and
                        matchExpressions are ANDed. An empty label selector matches all objects. A null
                        label selector matches no objects.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector
                            requirements. The requirements are ANDed.
                          items:
                            description: |-
                              A label selector requirement is a selector that contains values, a key, and an operator that
                              relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector
                                  applies to.
                                type: string
                              operator:
                                description: |-
                                  operator represents a key's relationship to a set of values.
                                  Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: |-
                                  values is an array of string values. If the operator is In or NotIn,
                                  the values array must be non-empty. If the operator is Exists or DoesNotExist,
                                  the values array must be empty. This array is replaced during a strategic
                                  merge patch.
                                items:
                                  type: string
                                type: array
                                x-kubernetes-list-type: atomic
                            required:
                            - key
                            - operator
                            type: object
                          type: array
                          x-kubernetes-list-type: atomic
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: |-
                            matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
                            map is equivalent to an element of matchExpressions, whose key field is "key", the
                            operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                      x-kubernetes-map-type: atomic
                    nullable: true
                    type: array
                  orderedResources:
                    additionalProperties:
                      type: string
                    description: |-
                      OrderedResources specifies the backup order of resources of specific Kind.
                      The map key is the resource name and value is a list of object names separated by commas.
                      Each resource name has format "namespace/objectname".  For cluster resources, simply use "objectname".
                    nullable: true
                    type: object
                  resourcePolicy:
                    description: ResourcePolicy specifies the referenced resource
                      policies that backup should follow
                    properties:
                      apiGroup:
                        description: |-
                          APIGroup is the group for the resource being referenced.
                          If APIGroup is not specified, the specified Kind must be in the core API group.
                          For any other third-party types, APIGroup is required.
                        type: string
                      kind:
                        description: Kind is the type of resource being referenced
                        type: string
                      name:
                        description: Name is the name of resource being referenced
                        type: string
                    required:
                    - kind
                    - name
                    type: object
                    x-kubernetes-map-type: atomic
                  snapshotMoveData:
                    description: SnapshotMoveData specifies whether snapshot data
                      should be moved
                    nullable: true
                    type: boolean
                  snapshotVolumes:
                    description: |-
                      SnapshotVolumes specifies whether to take snapshots
                      of any PV's referenced in the set of objects included
                      in the Backup.
                    nullable: true
                    type: boolean
                  storageLocation:
                    description: StorageLocation is a string containing the name of
                      a BackupStorageLocation where the backup should be stored.
                    type: string
                  ttl:
                    description: |-
                      TTL is a time.Duration-parseable string describing how long
                      the Backup should be retained for.
                    type: string
                  uploaderConfig:
                    description: UploaderConfig specifies the configuration for the
                      uploader.
                    nullable: true
                    properties:
                      parallelFilesUpload:
                        description: ParallelFilesUpload is the number of files parallel
                          uploads to perform when using the uploader.
                        type: integer
                    type: object
                  volumeSnapshotLocations:
                    description: VolumeSnapshotLocations is a list containing names
                      of VolumeSnapshotLocations associated with this backup.
                    items:
                      type: string
                    type: array
                type: object
              deleteBackup:
                description: |-
                  DeleteBackup removes the NonAdminBackup and its associated NonAdminRestores and VeleroBackup from the cluster,
                  as well as the corresponding data in object storage
                type: boolean
            required:
            - backupSpec
            type: object
          status:
            description: NonAdminBackupStatus defines the observed state of NonAdminBackup
            properties:
              conditions:
                items:
                  description: Condition contains details for one aspect of the current
                    state of this API Resource.
                  properties:
                    lastTransitionTime:
                      description: |-
                        lastTransitionTime is the last time the condition transitioned from one status to another.
                        This should be when the underlying condition changed.  If that is not known, then using the time when the API field changed is acceptable.
                      format: date-time
                      type: string
                    message:
                      description: |-
                        message is a human readable message indicating details about the transition.
                        This may be an empty string.
                      maxLength: 32768
                      type: string
                    observedGeneration:
                      description: |-
                        observedGeneration represents the .metadata.generation that the condition was set based upon.
                        For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
                        with respect to the current state of the instance.
                      format: int64
                      minimum: 0
                      type: integer
                    reason:
                      description: |-
                        reason contains a programmatic identifier indicating the reason for the condition's last transition.
                        Producers of specific condition types may define expected values and meanings for this field,
                        and whether the values are considered a guaranteed API.
                        The value should be a CamelCase string.
                        This field may not be empty.
                      maxLength: 1024
                      minLength: 1
                      pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
                      type: string
                    status:
                      description: status of the condition, one of True, False, Unknown.
                      enum:
                      - "True"
                      - "False"
                      - Unknown
                      type: string
                    type:
                      description: type of condition in CamelCase or in foo.example.com/CamelCase.
                      maxLength: 316
                      pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
                      type: string
                  required:
                  - lastTransitionTime
                  - message
                  - reason
                  - status
                  - type
                  type: object
                type: array
              dataMoverDataUploads:
                description: DataMoverDataUploads contains information of the related
                  Velero DataUpload objects.
                properties:
                  accepted:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase Accepted
                    type: integer
                  canceled:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase Canceled
                    type: integer
                  canceling:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase Canceling
                    type: integer
                  completed:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase Completed
                    type: integer
                  failed:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase Failed
                    type: integer
                  inProgress:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase InProgress
                    type: integer
                  new:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase New
                    type: integer
                  prepared:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup in phase Prepared
                    type: integer
                  total:
                    description: number of DataUploads related to this NonAdminBackup's
                      Backup
                    type: integer
                type: object
              fileSystemPodVolumeBackups:
                description: FileSystemPodVolumeBackups contains information of the
                  related Velero PodVolumeBackup objects.
                properties:
                  completed:
                    description: number of PodVolumeBackups related to this NonAdminBackup's
                      Backup in phase Completed
                    type: integer
                  failed:
                    description: number of PodVolumeBackups related to this NonAdminBackup's
                      Backup in phase Failed
                    type: integer
                  inProgress:
                    description: number of PodVolumeBackups related to this NonAdminBackup's
                      Backup in phase InProgress
                    type: integer
                  new:
                    description: number of PodVolumeBackups related to this NonAdminBackup's
                      Backup in phase New
                    type: integer
                  total:
                    description: number of PodVolumeBackups related to this NonAdminBackup's
                      Backup
                    type: integer
                type: object
              phase:
                description: phase is a simple one high-level summary of the lifecycle
                  of an NonAdminBackup.
                enum:
                - New
                - BackingOff
                - Created
                - Deleting
                type: string
              queueInfo:
                description: |-
                  queueInfo is used to estimate how many backups are scheduled before the given VeleroBackup in the OADP namespace.
                  This number is not guaranteed to be accurate, but it should be close. It's inaccurate for cases when
                  Velero pod is not running or being restarted after Backup object were created.
                  It counts only VeleroBackups that are still subject to be handled by OADP/Velero.
                properties:
                  estimatedQueuePosition:
                    description: estimatedQueuePosition is the number of operations
                      ahead in the queue (0 if not queued)
                    type: integer
                required:
                - estimatedQueuePosition
                type: object
              veleroBackup:
                description: VeleroBackup contains information of the related Velero
                  backup object.
                properties:
                  nacuuid:
                    description: nacuuid references the Velero Backup object by it's
                      label containing same NACUUID.
                    type: string
                  name:
                    description: references the Velero Backup object by it's name.
                    type: string
                  namespace:
                    description: namespace references the Namespace in which Velero
                      backup exists.
                    type: string
                  spec:
                    description: spec captures the current spec of the Velero backup.
                    properties:
                      csiSnapshotTimeout:
                        description: |-
                          CSISnapshotTimeout specifies the time used to wait for CSI VolumeSnapshot status turns to
                          ReadyToUse during creation, before returning error as timeout.
                          The default value is 10 minute.
                        type: string
                      datamover:
                        description: |-
                          DataMover specifies the data mover to be used by the backup.
                          If DataMover is "" or "velero", the built-in data mover will be used.
                        type: string
                      defaultVolumesToFsBackup:
                        description: |-
                          DefaultVolumesToFsBackup specifies whether pod volume file system backup should be used
                          for all volumes by default.
                        nullable: true
                        type: boolean
                      defaultVolumesToRestic:
                        description: |-
                          DefaultVolumesToRestic specifies whether restic should be used to take a
                          backup of all pod volumes by default.

                          Deprecated: this field is no longer used and will be removed entirely in future. Use DefaultVolumesToFsBackup instead.
                        nullable: true
                        type: boolean
                      excludedClusterScopedResources:
                        description: |-
                          ExcludedClusterScopedResources is a slice of cluster-scoped
                          resource type names to exclude from the backup.
                          If set to "*", all cluster-scoped resource types are excluded.
                          The default value is empty.
                        items:
                          type: string
                        nullable: true
                        type: array
                      excludedNamespaceScopedResources:
                        description: |-
                          ExcludedNamespaceScopedResources is a slice of namespace-scoped
                          resource type names to exclude from the backup.
                          If set to "*", all namespace-scoped resource types are excluded.
                          The default value is empty.
                        items:
                          type: string
                        nullable: true
                        type: array
                      excludedNamespaces:
                        description: |-
                          ExcludedNamespaces contains a list of namespaces that are not
                          included in the backup.
                        items:
                          type: string
                        nullable: true
                        type: array
                      excludedResources:
                        description: |-
                          ExcludedResources is a slice of resource names that are not
                          included in the backup.
                        items:
                          type: string
                        nullable: true
                        type: array
                      hooks:
                        description: Hooks represent custom behaviors that should
                          be executed at different phases of the backup.
                        properties:
                          resources:
                            description: Resources are hooks that should be executed
                              when backing up individual instances of a resource.
                            items:
                              description: |-
                                BackupResourceHookSpec defines one or more BackupResourceHooks that should be executed based on
                                the rules defined for namespaces, resources, and label selector.
                              properties:
                                excludedNamespaces:
                                  description: ExcludedNamespaces specifies the namespaces
                                    to which this hook spec does not apply.
                                  items:
                                    type: string
                                  nullable: true
                                  type: array
                                excludedResources:
                                  description: ExcludedResources specifies the resources
                                    to which this hook spec does not apply.
                                  items:
                                    type: string
                                  nullable: true
                                  type: array
                                includedNamespaces:
                                  description: |-
                                    IncludedNamespaces specifies the namespaces to which this hook spec applies. If empty, it applies
                                    to all namespaces.
                                  items:
                                    type: string
                                  nullable: true
                                  type: array
                                includedResources:
                                  description: |-
                                    IncludedResources specifies the resources to which this hook spec applies. If empty, it applies
                                    to all resources.
                                  items:
                                    type: string
                                  nullable: true
                                  type: array
                                labelSelector:
                                  description: LabelSelector, if specified, filters
                                    the resources to which this hook spec applies.
                                  nullable: true
                                  properties:
                                    matchExpressions:
                                      description: matchExpressions is a list of label
                                        selector requirements. The requirements are
                                        ANDed.
                                      items:
                                        description: |-
                                          A label selector requirement is a selector that contains values, a key, and an operator that
                                          relates the key and values.
                                        properties:
                                          key:
                                            description: key is the label key that
                                              the selector applies to.
                                            type: string
                                          operator:
                                            description: |-
                                              operator represents a key's relationship to a set of values.
                                              Valid operators are In, NotIn, Exists and DoesNotExist.
                                            type: string
                                          values:
                                            description: |-
                                              values is an array of string values. If the operator is In or NotIn,
                                              the values array must be non-empty. If the operator is Exists or DoesNotExist,
                                              the values array must be empty. This array is replaced during a strategic
                                              merge patch.
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      description: |-
                                        matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
                                        map is equivalent to an element of matchExpressions, whose key field is "key", the
                                        operator is "In", and the values array contains only "value". The requirements are ANDed.
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                name:
                                  description: Name is the name of this hook.
                                  type: string
                                post:
                                  description: |-
                                    PostHooks is a list of BackupResourceHooks to execute after storing the item in the backup.
                                    These are executed after all "additional items" from item actions are processed.
                                  items:
                                    description: BackupResourceHook defines a hook
                                      for a resource.
                                    properties:
                                      exec:
                                        description: Exec defines an exec hook.
                                        properties:
                                          command:
                                            description: Command is the command and
                                              arguments to execute.
                                            items:
                                              type: string
                                            minItems: 1
                                            type: array
                                          container:
                                            description: |-
                                              Container is the container in the pod where the command should be executed. If not specified,
                                              the pod's first container is used.
                                            type: string
                                          onError:
                                            description: OnError specifies how Velero
                                              should behave if it encounters an error
                                              executing this hook.
                                            enum:
                                            - Continue
                                            - Fail
                                            type: string
                                          timeout:
                                            description: |-
                                              Timeout defines the maximum amount of time Velero should wait for the hook to complete before
                                              considering the execution a failure.
                                            type: string
                                        required:
                                        - command
                                        type: object
                                    required:
                                    - exec
                                    type: object
                                  type: array
                                pre:
                                  description: |-
                                    PreHooks is a list of BackupResourceHooks to execute prior to storing the item in the backup.
                                    These are executed before any "additional items" from item actions are processed.
                                  items:
                                    description: BackupResourceHook defines a hook
                                      for a resource.
                                    properties:
                                      exec:
                                        description: Exec defines an exec hook.
                                        properties:
                                          command:
                                            description: Command is the command and
                                              arguments to execute.
                                            items:
                                              type: string
                                            minItems: 1
                                            type: array
                                          container:
                                            description: |-
                                              Container is the container in the pod where the command should be executed. If not specified,
                                              the pod's first container is used.
                                            type: string
                                          onError:
                                            description: OnError specifies how Velero
                                              should behave if it encounters an error
                                              executing this hook.
                                            enum:
                                            - Continue
                                            - Fail
                                            type: string
                                          timeout:
                                            description: |-
                                              Timeout defines the maximum amount of time Velero should wait for the hook to complete before
                                              considering the execution a failure.
                                            type: string
                                        required:
                                        - command
                                        type: object
                                    required:
                                    - exec
                                    type: object
                                  type: array
                              required:
                              - name
                              type: object
                            nullable: true
                            type: array
                        type: object
                      includeClusterResources:
                        description: |-
                          IncludeClusterResources specifies whether cluster-scoped resources
                          should be included for consideration in the backup.
                        nullable: true
                        type: boolean
                      includedClusterScopedResources:
                        description: |-
                          IncludedClusterScopedResources is a slice of cluster-scoped
                          resource type names to include in the backup.
                          If set to "*", all cluster-scoped resource types are included.
                          The default value is empty, which means only related
                          cluster-scoped resources are included.
                        items:
                          type: string
                        nullable: true
                        type: array
                      includedNamespaceScopedResources:
                        description: |-
                          IncludedNamespaceScopedResources is a slice of namespace-scoped
                          resource type names to include in the backup.
                          The default value is "*".
                        items:
                          type: string
                        nullable: true
                        type: array
                      includedNamespaces:
                        description: |-
                          IncludedNamespaces is a slice of namespace names to include objects
                          from. If empty, all namespaces are included.
                        items:
                          type: string
                        nullable: true
                        type: array
                      includedResources:
                        description: |-
                          IncludedResources is a slice of resource names to include
                          in the backup. If empty, all resources are included.
                        items:
                          type: string
                        nullable: true
                        type: array
                      itemOperationTimeout:
                        description: |-
                          ItemOperationTimeout specifies the time used to wait for asynchronous BackupItemAction operations
                          The default value is 4 hour.
                        type: string
                      labelSelector:
                        description: |-
                          LabelSelector is a metav1.LabelSelector to filter with
                          when adding individual objects to the backup. If empty
                          or nil, all objects are included. Optional.
                        nullable: true
                        properties:
                          matchExpressions:
                            description: matchExpressions is a list of label selector
                              requirements. The requirements are ANDed.
                            items:
                              description: |-
                                A label selector requirement is a selector that contains values, a key, and an operator that
                                relates the key and values.
                              properties:
                                key:
                                  description: key is the label key that the selector
                                    applies to.
                                  type: string
                                operator:
                                  description: |-
                                    operator represents a key's relationship to a set of values.
                                    Valid operators are In, NotIn, Exists and DoesNotExist.
                                  type: string
                                values:
                                  description: |-
                                    values is an array of string values. If the operator is In or NotIn,
                                    the values array must be non-empty. If the operator is Exists or DoesNotExist,
                                    the values array must be empty. This array is replaced during a strategic
                                    merge patch.
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                              required:
                              - key
                              - operator
                              type: object
                            type: array
                            x-kubernetes-list-type: atomic
                          matchLabels:
                            additionalProperties:
                              type: string
                            description: |-
                              matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
                              map is equivalent to an element of matchExpressions, whose key field is "key", the
                              operator is "In", and the values array contains only "value". The requirements are ANDed.
                            type: object
                        type: object
                        x-kubernetes-map-type: atomic
                      metadata:
                        properties:
                          labels:
                            additionalProperties:
                              type: string
                            type: object
                        type: object
                      orLabelSelectors:
                        description: |-
                          OrLabelSelectors is list of metav1.LabelSelector to filter with
                          when adding individual objects to the backup. If multiple provided
                          they will be joined by the OR operator. LabelSelector as well as
                          OrLabelSelectors cannot co-exist in backup request, only one of them
                          can be used.
                        items:
                          description: |-
                            A label selector is a label query over a set of resources. The result of matchLabels and
                            matchExpressions are ANDed. An empty label selector matches all objects. A null
                            label selector matches no objects.
                          properties:
                            matchExpressions:
                              description: matchExpressions is a list of label selector
                                requirements. The requirements are ANDed.
                              items:
                                description: |-
                                  A label selector requirement is a selector that contains values, a key, and an operator that
                                  relates the key and values.
                                properties:
                                  key:
                                    description: key is the label key that the selector
                                      applies to.
                                    type: string
                                  operator:
                                    description: |-
                                      operator represents a key's relationship to a set of values.
                                      Valid operators are In, NotIn, Exists and DoesNotExist.
                                    type: string
                                  values:
                                    description: |-
                                      values is an array of string values. If the operator is In or NotIn,
                                      the values array must be non-empty. If the operator is Exists or DoesNotExist,
                                      the values array must be empty. This array is replaced during a strategic
                                      merge patch.
                                    items:
                                      type: string
                                    type: array
                                    x-kubernetes-list-type: atomic
                                required:
                                - key
                                - operator
                                type: object
                              type: array
                              x-kubernetes-list-type: atomic
                            matchLabels:
                              additionalProperties:
                                type: string
                              description: |-
                                matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
                                map is equivalent to an element of matchExpressions, whose key field is "key", the
                                operator is "In", and the values array contains only "value". The requirements are ANDed.
                              type: object
                          type: object
                          x-kubernetes-map-type: atomic
                        nullable: true
                        type: array
                      orderedResources:
                        additionalProperties:
                          type: string
                        description: |-
                          OrderedResources specifies the backup order of resources of specific Kind.
                          The map key is the resource name and value is a list of object names separated by commas.
                          Each resource name has format "namespace/objectname".  For cluster resources, simply use "objectname".
                        nullable: true
                        type: object
                      resourcePolicy:
                        description: ResourcePolicy specifies the referenced resource
                          policies that backup should follow
                        properties:
                          apiGroup:
                            description: |-
                              APIGroup is the group for the resource being referenced.
                              If APIGroup is not specified, the specified Kind must be in the core API group.
                              For any other third-party types, APIGroup is required.
                            type: string
                          kind:
                            description: Kind is the type of resource being referenced
                            type: string
                          name:
                            description: Name is the name of resource being referenced
                            type: string
                        required:
                        - kind
                        - name
                        type: object
                        x-kubernetes-map-type: atomic
                      snapshotMoveData:
                        description: SnapshotMoveData specifies whether snapshot data
                          should be moved
                        nullable: true
                        type: boolean
                      snapshotVolumes:
                        description: |-
                          SnapshotVolumes specifies whether to take snapshots
                          of any PV's referenced in the set of objects included
                          in the Backup.
                        nullable: true
                        type: boolean
                      storageLocation:
                        description: StorageLocation is a string containing the name
                          of a BackupStorageLocation where the backup should be stored.
                        type: string
                      ttl:
                        description: |-
                          TTL is a time.Duration-parseable string describing how long
                          the Backup should be retained for.
                        type: string
                      uploaderConfig:
                        description: UploaderConfig specifies the configuration for
                          the uploader.
                        nullable: true
                        properties:
                          parallelFilesUpload:
                            description: ParallelFilesUpload is the number of files
                              parallel uploads to perform when using the uploader.
                            type: integer
                        type: object
                      volumeSnapshotLocations:
                        description: VolumeSnapshotLocations is a list containing
                          names of VolumeSnapshotLocations associated with this backup.
                        items:
                          type: string
                        type: array
                    type: object
                  status:
                    description: status captures the current status of the Velero
                      backup.
                    properties:
                      backupItemOperationsAttempted:
                        description: |-
                          BackupItemOperationsAttempted is the total number of attempted
                          async BackupItemAction operations for this backup.
                        type: integer
                      backupItemOperationsCompleted:
                        description: |-
                          BackupItemOperationsCompleted is the total number of successfully completed
                          async BackupItemAction operations for this backup.
                        type: integer
                      backupItemOperationsFailed:
                        description: |-
                          BackupItemOperationsFailed is the total number of async
                          BackupItemAction operations for this backup which ended with an error.
                        type: integer
                      completionTimestamp:
                        description: |-
                          CompletionTimestamp records the time a backup was completed.
                          Completion time is recorded even on failed backups.
                          Completion time is recorded before uploading the backup object.
                          The server's time is used for CompletionTimestamps
                        format: date-time
                        nullable: true
                        type: string
                      csiVolumeSnapshotsAttempted:
                        description: |-
                          CSIVolumeSnapshotsAttempted is the total number of attempted
                          CSI VolumeSnapshots for this backup.
                        type: integer
                      csiVolumeSnapshotsCompleted:
                        description: |-
                          CSIVolumeSnapshotsCompleted is the total number of successfully
                          completed CSI VolumeSnapshots for this backup.
                        type: integer
                      errors:
                        description: |-
                          Errors is a count of all error messages that were generated during
                          execution of the backup.  The actual errors are in the backup's log
                          file in object storage.
                        type: integer
                      expiration:
                        description: Expiration is when this Backup is eligible for
                          garbage-collection.
                        format: date-time
                        nullable: true
                        type: string
                      failureReason:
                        description: FailureReason is an error that caused the entire
                          backup to fail.
                        type: string
                      formatVersion:
                        description: FormatVersion is the backup format version, including
                          major, minor, and patch version.
                        type: string
                      hookStatus:
                        description: HookStatus contains information about the status
                          of the hooks.
                        nullable: true
                        properties:
                          hooksAttempted:
                            description: |-
                              HooksAttempted is the total number of attempted hooks
                              Specifically, HooksAttempted represents the number of hooks that failed to execute
                              and the number of hooks that executed successfully.
                            type: integer
                          hooksFailed:
                            description: HooksFailed is the total number of hooks
                              which ended with an error
                            type: integer
                        type: object
                      phase:
                        description: Phase is the current state of the Backup.
                        enum:
                        - New
                        - FailedValidation
                        - InProgress
                        - WaitingForPluginOperations
                        - WaitingForPluginOperationsPartiallyFailed
                        - Finalizing
                        - FinalizingPartiallyFailed
                        - Completed
                        - PartiallyFailed
                        - Failed
                        - Deleting
                        type: string
                      progress:
                        description: |-
                          Progress contains information about the backup's execution progress. Note
                          that this information is best-effort only -- if Velero fails to update it
                          during a backup for any reason, it may be inaccurate/stale.
                        nullable: true
                        properties:
                          itemsBackedUp:
                            description: |-
                              ItemsBackedUp is the number of items that have actually been written to the
                              backup tarball so far.
                            type: integer
                          totalItems:
                            description: |-
                              TotalItems is the total number of items to be backed up. This number may change
                              throughout the execution of the backup due to plugins that return additional related
                              items to back up, the velero.io/exclude-from-backup label, and various other
                              filters that happen as items are processed.
                            type: integer
                        type: object
                      startTimestamp:
                        description: |-
                          StartTimestamp records the time a backup was started.
                          Separate from CreationTimestamp, since that value changes
                          on restores.
                          The server's time is used for StartTimestamps
                        format: date-time
                        nullable: true
                        type: string
                      validationErrors:
                        description: |-
                          ValidationErrors is a slice of all validation errors (if
                          applicable).
                        items:
                          type: string
                        nullable: true
                        type: array
                      version:
                        description: |-
                          Version is the backup format major version.
                          Deprecated: Please see FormatVersion
                        type: integer
                      volumeSnapshotsAttempted:
                        description: |-
                          VolumeSnapshotsAttempted is the total number of attempted
                          volume snapshots for this backup.
                        type: integer
                      volumeSnapshotsCompleted:
                        description: |-
                          VolumeSnapshotsCompleted is the total number of successfully
                          completed volume snapshots for this backup.
                        type: integer
                      warnings:
                        description: |-
                          Warnings is a count of all warning messages that were generated during
                          execution of the backup. The actual warnings are in the backup's log
                          file in object storage.
                        type: integer
                    type: object
                type: object
              veleroDeleteBackupRequest:
                description: VeleroDeleteBackupRequest contains information of the
                  related Velero delete backup request object.
                properties:
                  nacuuid:
                    description: nacuuid references the Velero delete backup request
                      object by it's label containing same NACUUID.
                    type: string
                  name:
                    description: name references the Velero delete backup request
                      object by it's name.
                    type: string
                  namespace:
                    description: namespace references the Namespace in which Velero
                      delete backup request exists.
                    type: string
                  status:
                    description: status captures the current status of the Velero
                      delete backup request.
                    properties:
                      errors:
                        description: Errors contains any errors that were encountered
                          during the deletion process.
                        items:
                          type: string
                        nullable: true
                        type: array
                      phase:
                        description: Phase is the current state of the DeleteBackupRequest.
                        enum:
                        - New
                        - InProgress
                        - Processed
                        type: string
                    type: object
                type: object
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: NonAdminBackup
    listKind: NonAdminBackupList
    plural: nonadminbackups
    shortNames:
    - nab
    singular: nonadminbackup
  conditions:
  - lastTransitionTime: "2025-10-27T12:40:57Z"
    message: no conflicts found
    reason: NoConflicts
    status: "True"
    type: NamesAccepted
  - lastTransitionTime: "2025-10-27T12:40:57Z"
    message: the initial names have been accepted
    reason: InitialNamesAccepted
    status: "True"
    type: Established
  storedVersions:
  - v1alpha1
