---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: backups.velero.io
  labels:
    {{- include "velero.labels" . | nindent 4 }}
spec:
  group: velero.io
  names:
    kind: Backup
    listKind: BackupList
    plural: backups
    singular: backup
  scope: Namespaced
  versions:
    - name: v1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          properties:
            spec:
              type: object
              properties:
                includedNamespaces:
                  type: array
                  items:
                    type: string
                excludedNamespaces:
                  type: array
                  items:
                    type: string
                includedResources:
                  type: array
                  items:
                    type: string
                excludedResources:
                  type: array
                  items:
                    type: string
                ttl:
                  type: string
            status:
              type: object
              properties:
                phase:
                  type: string
                errors:
                  type: array
                  items:
                    type: string
                warnings:
                  type: array
                  items:
                    type: string
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: restores.velero.io
  labels:
    {{- include "velero.labels" . | nindent 4 }}
spec:
  group: velero.io
  names:
    kind: Restore
    listKind: RestoreList
    plural: restores
    singular: restore
  scope: Namespaced
  versions:
    - name: v1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          properties:
            spec:
              type: object
              properties:
                backupName:
                  type: string
                includedNamespaces:
                  type: array
                  items:
                    type: string
                excludedNamespaces:
                  type: array
                  items:
                    type: string
                includedResources:
                  type: array
                  items:
                    type: string
                excludedResources:
                  type: array
                  items:
                    type: string
            status:
              type: object
              properties:
                phase:
                  type: string
                errors:
                  type: array
                  items:
                    type: string
                warnings:
                  type: array
                  items:
                    type: string
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: schedules.velero.io
  labels:
    {{- include "velero.labels" . | nindent 4 }}
spec:
  group: velero.io
  names:
    kind: Schedule
    listKind: ScheduleList
    plural: schedules
    singular: schedule
  scope: Namespaced
  versions:
    - name: v1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          properties:
            spec:
              type: object
              properties:
                schedule:
                  type: string
                template:
                  type: object
                  properties:
                    includedNamespaces:
                      type: array
                      items:
                        type: string
                    excludedNamespaces:
                      type: array
                      items:
                        type: string
                    includedResources:
                      type: array
                      items:
                        type: string
                    excludedResources:
                      type: array
                      items:
                        type: string
                    ttl:
                      type: string
            status:
              type: object
              properties:
                phase:
                  type: string
                lastBackup:
                  type: string
