{
  "description": "BackupBackingImage is where Longhorn stores backing image backup object.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": [
        "string",
        "null"
      ]
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": [
        "string",
        "null"
      ]
    },
    "metadata": {
      "type": [
        "object",
        "null"
      ]
    },
    "spec": {
      "additionalProperties": false,
      "description": "BackupBackingImageSpec defines the desired state of the Longhorn backing image backup",
      "properties": {
        "backingImage": {
          "description": "The backing image name.",
          "type": "string"
        },
        "backupTargetName": {
          "description": "The backup target name.",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The labels of backing image backup.",
          "type": [
            "object",
            "null"
          ]
        },
        "syncRequestedAt": {
          "description": "The time to request run sync the remote backing image backup.",
          "format": "date-time",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "userCreated": {
          "description": "Is this CR created by user through API or UI.",
          "type": "boolean"
        }
      },
      "required": [
        "backingImage",
        "userCreated"
      ],
      "type": [
        "object",
        "null"
      ]
    },
    "status": {
      "additionalProperties": false,
      "description": "BackupBackingImageStatus defines the observed state of the Longhorn backing image backup",
      "properties": {
        "backingImage": {
          "description": "The backing image name.",
          "type": [
            "string",
            "null"
          ]
        },
        "backupCreatedAt": {
          "description": "The backing image backup upload finished time.",
          "type": [
            "string",
            "null"
          ]
        },
        "checksum": {
          "description": "The checksum of the backing image.",
          "type": [
            "string",
            "null"
          ]
        },
        "compressionMethod": {
          "description": "Compression method",
          "type": [
            "string",
            "null"
          ]
        },
        "error": {
          "description": "The error message when taking the backing image backup.",
          "type": [
            "string",
            "null"
          ]
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The labels of backing image backup.",
          "nullable": true,
          "type": [
            "object",
            "null"
          ]
        },
        "lastSyncedAt": {
          "description": "The last time that the backing image backup was synced with the remote backup target.",
          "format": "date-time",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "managerAddress": {
          "description": "The address of the backing image manager that runs backing image backup.",
          "type": [
            "string",
            "null"
          ]
        },
        "messages": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The error messages when listing or inspecting backing image backup.",
          "nullable": true,
          "type": [
            "object",
            "null"
          ]
        },
        "ownerID": {
          "description": "The node ID on which the controller is responsible to reconcile this CR.",
          "type": [
            "string",
            "null"
          ]
        },
        "progress": {
          "description": "The backing image backup progress.",
          "type": [
            "integer",
            "null"
          ]
        },
        "secret": {
          "description": "Record the secret if this backup backing image is encrypted",
          "type": [
            "string",
            "null"
          ]
        },
        "secretNamespace": {
          "description": "Record the secret namespace if this backup backing image is encrypted",
          "type": [
            "string",
            "null"
          ]
        },
        "size": {
          "description": "The backing image size.",
          "format": "int64",
          "type": [
            "integer",
            "null"
          ]
        },
        "state": {
          "description": "The backing image backup creation state.\nCan be \"\", \"InProgress\", \"Completed\", \"Error\", \"Unknown\".",
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "description": "The backing image backup URL.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ]
    }
  },
  "type": "object"
}