apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: restores.resources.cattle.io
spec:
  group: resources.cattle.io
  names:
    kind: Restore
    plural: restores
    singular: restore
  scope: Cluster
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.backupSource
      name: Backup-Source
      type: string
    - jsonPath: .spec.backupFilename
      name: Backup-File
      type: string
    - jsonPath: .metadata.creationTimestamp
      name: Age
      type: date
    - jsonPath: .status.conditions[?(@.type=="Ready")].message
      name: Status
      type: string
    name: v1
    schema:
      openAPIV3Schema:
        properties:
          spec:
            properties:
              backupFilename:
                nullable: true
                type: string
              deleteTimeoutSeconds:
                maximum: 10
                type: integer
              encryptionConfigSecretName:
                nullable: true
                type: string
              ignoreErrors:
                type: boolean
              prune:
                nullable: true
                type: boolean
              storageLocation:
                nullable: true
                properties:
                  s3:
                    nullable: true
                    properties:
                      bucketName:
                        nullable: true
                        type: string
                      credentialSecretName:
                        nullable: true
                        type: string
                      credentialSecretNamespace:
                        nullable: true
                        type: string
                      endpoint:
                        nullable: true
                        type: string
                      endpointCA:
                        nullable: true
                        type: string
                      folder:
                        nullable: true
                        type: string
                      insecureTLSSkipVerify:
                        type: boolean
                      region:
                        nullable: true
                        type: string
                    type: object
                type: object
            required:
            - backupFilename
            type: object
          status:
            properties:
              backupSource:
                nullable: true
                type: string
              conditions:
                items:
                  properties:
                    lastTransitionTime:
                      nullable: true
                      type: string
                    lastUpdateTime:
                      nullable: true
                      type: string
                    message:
                      nullable: true
                      type: string
                    reason:
                      nullable: true
                      type: string
                    status:
                      nullable: true
                      type: string
                    type:
                      nullable: true
                      type: string
                  type: object
                nullable: true
                type: array
              observedGeneration:
                type: integer
              restoreCompletionTs:
                nullable: true
                type: string
              summary:
                nullable: true
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
