{ "description": "Backup is the Schema for the backups 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": "Specification of the desired behavior of the backup. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status", "properties": { "cluster": { "description": "The cluster to backup", "properties": { "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "name" ], "type": "object", "additionalProperties": false }, "target": { "description": "The policy to decide which instance should perform this backup. If empty, it defaults to `cluster.spec.backup.target`. Available options are empty string, `primary` and `prefer-standby`. `primary` to have backups run always on primary instances, `prefer-standby` to have backups run preferably on the most updated standby, if available.", "enum": [ "primary", "prefer-standby" ], "type": "string" } }, "required": [ "cluster" ], "type": "object", "additionalProperties": false }, "status": { "description": "Most recently observed status of the backup. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status", "properties": { "azureCredentials": { "description": "The credentials to use to upload data to Azure Blob Storage", "properties": { "connectionString": { "description": "The connection string to be used", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "inheritFromAzureAD": { "description": "Use the Azure AD based authentication without providing explicitly the keys.", "type": "boolean" }, "storageAccount": { "description": "The storage account where to upload data", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "storageKey": { "description": "The storage account key to be used in conjunction with the storage account name", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "storageSasToken": { "description": "A shared-access-signature to be used in conjunction with the storage account name", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false } }, "type": "object", "additionalProperties": false }, "backupId": { "description": "The ID of the Barman backup", "type": "string" }, "backupName": { "description": "The Name of the Barman backup", "type": "string" }, "beginLSN": { "description": "The starting xlog", "type": "string" }, "beginWal": { "description": "The starting WAL", "type": "string" }, "commandError": { "description": "The backup command output in case of error", "type": "string" }, "commandOutput": { "description": "Unused. Retained for compatibility with old versions.", "type": "string" }, "destinationPath": { "description": "The path where to store the backup (i.e. s3://bucket/path/to/folder) this path, with different destination folders, will be used for WALs and for data. This may not be populated in case of errors.", "type": "string" }, "encryption": { "description": "Encryption method required to S3 API", "type": "string" }, "endLSN": { "description": "The ending xlog", "type": "string" }, "endWal": { "description": "The ending WAL", "type": "string" }, "endpointCA": { "description": "EndpointCA store the CA bundle of the barman endpoint. Useful when using self-signed certificates to avoid errors with certificate issuer and barman-cloud-wal-archive.", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "endpointURL": { "description": "Endpoint to be used to upload data to the cloud, overriding the automatic endpoint discovery", "type": "string" }, "error": { "description": "The detected error", "type": "string" }, "googleCredentials": { "description": "The credentials to use to upload data to Google Cloud Storage", "properties": { "applicationCredentials": { "description": "The secret containing the Google Cloud Storage JSON file with the credentials", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "gkeEnvironment": { "description": "If set to true, will presume that it's running inside a GKE environment, default to false.", "type": "boolean" } }, "type": "object", "additionalProperties": false }, "instanceID": { "description": "Information to identify the instance where the backup has been taken from", "properties": { "ContainerID": { "description": "The container ID", "type": "string" }, "podName": { "description": "The pod name", "type": "string" } }, "type": "object", "additionalProperties": false }, "phase": { "description": "The last backup status", "type": "string" }, "s3Credentials": { "description": "The credentials to use to upload data to S3", "properties": { "accessKeyId": { "description": "The reference to the access key id", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "inheritFromIAMRole": { "description": "Use the role based authentication without providing explicitly the keys.", "type": "boolean" }, "region": { "description": "The reference to the secret containing the region name", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "secretAccessKey": { "description": "The reference to the secret access key", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false }, "sessionToken": { "description": "The references to the session key", "properties": { "key": { "description": "The key to select", "type": "string" }, "name": { "description": "Name of the referent.", "type": "string" } }, "required": [ "key", "name" ], "type": "object", "additionalProperties": false } }, "type": "object", "additionalProperties": false }, "serverName": { "description": "The server name on S3, the cluster name is used if this parameter is omitted", "type": "string" }, "startedAt": { "description": "When the backup was started", "format": "date-time", "type": "string" }, "stoppedAt": { "description": "When the backup was terminated", "format": "date-time", "type": "string" } }, "type": "object", "additionalProperties": false } }, "required": [ "metadata", "spec" ], "type": "object" }