apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: pulpbackups.pulp.pulpproject.org
spec:
  group: pulp.pulpproject.org
  names:
    kind: PulpBackup
    listKind: PulpBackupList
    plural: pulpbackups
    singular: pulpbackup
  scope: Namespaced
  versions:
    - name: v1beta1
      served: true
      storage: true
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true
          description: Schema validation for the PulpBackup CRD
          properties:
            spec:
              type: object
              properties:
                deployment_name:
                  description: Name of the deployment to be backed up
                  type: string
                custom_resource_key:
                  description: custom_resource_key
                  type: string
                backup_pvc:
                  description: Name of the PVC to be used for storing the backup
                  type: string
                backup_pvc_namespace:
                  description: Namespace PVC is in
                  type: string
                backup_storage_requirements:
                  description: Storage requirements for the backup
                  type: string
                backup_storage_class:
                  description: Storage class to use when creating PVC for backup
                  type: string
                postgres_label_selector:
                  description: Label selector used to identify postgres pod for executing migration
                  type: string
              required:
                - deployment_name
            status:
              properties:
                deploymentName:
                  description: Name of the deployment backed up
                  type: string
                backupClaim:
                  description: The PVC name used for the backup
                  type: string
                backupNamespace:
                  description: The namespace used for the backup claim
                  type: string
                backupDirectory:
                  description: The directory data is backed up to on the PVC
                  type: string
                deploymentStorageType:
                  description: The deployment storage type
                  type: string
                adminPasswordSecret:
                  description: Administrator password secret used by the deployed instance
                  type: string
                databaseConfigurationSecret:
                  description: Database configuration secret used by the deployed instance
                  type: string
                objectStorageConfigurationSecret:
                  description: Objectstorage configuration secret used by the deployed instance
                  type: string
                containerTokenSecret:
                  description: Container token configuration secret used by the deployed instance
                  type: string
                conditions:
                  description: The resulting conditions when a Service Telemetry is instantiated
                  items:
                    properties:
                      status:
                        type: string
                      type:
                        type: string
                      reason:
                        type: string
                      lastTransitionTime:
                        type: string
                    type: object
                  type: array
              type: object
