242 lines
9.8 KiB
YAML
242 lines
9.8 KiB
YAML
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.16.5
|
|
name: podvolumebackups.velero.io
|
|
spec:
|
|
group: velero.io
|
|
names:
|
|
kind: PodVolumeBackup
|
|
listKind: PodVolumeBackupList
|
|
plural: podvolumebackups
|
|
singular: podvolumebackup
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- description: PodVolumeBackup status such as New/InProgress
|
|
jsonPath: .status.phase
|
|
name: Status
|
|
type: string
|
|
- description: Time duration since this PodVolumeBackup was started
|
|
jsonPath: .status.startTimestamp
|
|
name: Started
|
|
type: date
|
|
- description: Completed bytes
|
|
format: int64
|
|
jsonPath: .status.progress.bytesDone
|
|
name: Bytes Done
|
|
type: integer
|
|
- description: Total bytes
|
|
format: int64
|
|
jsonPath: .status.progress.totalBytes
|
|
name: Total Bytes
|
|
type: integer
|
|
- description: Name of the Backup Storage Location where this backup should be
|
|
stored
|
|
jsonPath: .spec.backupStorageLocation
|
|
name: Storage Location
|
|
type: string
|
|
- description: Time duration since this PodVolumeBackup was created
|
|
jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- description: Name of the node where the PodVolumeBackup is processed
|
|
jsonPath: .status.node
|
|
name: Node
|
|
type: string
|
|
- description: The type of the uploader to handle data transfer
|
|
jsonPath: .spec.uploaderType
|
|
name: Uploader
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
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: PodVolumeBackupSpec is the specification for a PodVolumeBackup.
|
|
properties:
|
|
backupStorageLocation:
|
|
description: |-
|
|
BackupStorageLocation is the name of the backup storage location
|
|
where the backup repository is stored.
|
|
type: string
|
|
cancel:
|
|
description: |-
|
|
Cancel indicates request to cancel the ongoing PodVolumeBackup. It can be set
|
|
when the PodVolumeBackup is in InProgress phase
|
|
type: boolean
|
|
node:
|
|
description: Node is the name of the node that the Pod is running
|
|
on.
|
|
type: string
|
|
pod:
|
|
description: Pod is a reference to the pod containing the volume to
|
|
be backed up.
|
|
properties:
|
|
apiVersion:
|
|
description: API version of the referent.
|
|
type: string
|
|
fieldPath:
|
|
description: |-
|
|
If referring to a piece of an object instead of an entire object, this string
|
|
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
|
|
For example, if the object reference is to a container within a pod, this would take on a value like:
|
|
"spec.containers{name}" (where "name" refers to the name of the container that triggered
|
|
the event) or if no container name is specified "spec.containers[2]" (container with
|
|
index 2 in this pod). This syntax is chosen only to have some well-defined way of
|
|
referencing a part of an object.
|
|
type: string
|
|
kind:
|
|
description: |-
|
|
Kind of the referent.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
type: string
|
|
name:
|
|
description: |-
|
|
Name of the referent.
|
|
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
Namespace of the referent.
|
|
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
|
|
type: string
|
|
resourceVersion:
|
|
description: |-
|
|
Specific resourceVersion to which this reference is made, if any.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
|
|
type: string
|
|
uid:
|
|
description: |-
|
|
UID of the referent.
|
|
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|
|
type: string
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
repoIdentifier:
|
|
description: RepoIdentifier is the backup repository identifier.
|
|
type: string
|
|
tags:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
Tags are a map of key-value pairs that should be applied to the
|
|
volume backup as tags.
|
|
type: object
|
|
uploaderSettings:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
UploaderSettings are a map of key-value pairs that should be applied to the
|
|
uploader configuration.
|
|
nullable: true
|
|
type: object
|
|
uploaderType:
|
|
description: UploaderType is the type of the uploader to handle the
|
|
data transfer.
|
|
enum:
|
|
- kopia
|
|
- restic
|
|
- ""
|
|
type: string
|
|
volume:
|
|
description: |-
|
|
Volume is the name of the volume within the Pod to be backed
|
|
up.
|
|
type: string
|
|
required:
|
|
- backupStorageLocation
|
|
- node
|
|
- pod
|
|
- repoIdentifier
|
|
- volume
|
|
type: object
|
|
status:
|
|
description: PodVolumeBackupStatus is the current status of a PodVolumeBackup.
|
|
properties:
|
|
acceptedTimestamp:
|
|
description: |-
|
|
AcceptedTimestamp records the time the pod volume backup is to be prepared.
|
|
The server's time is used for AcceptedTimestamp
|
|
format: date-time
|
|
nullable: true
|
|
type: string
|
|
completionTimestamp:
|
|
description: |-
|
|
CompletionTimestamp records the time a backup was completed.
|
|
Completion time is recorded even on failed backups.
|
|
Completion time is recorded before uploading the backup object.
|
|
The server's time is used for CompletionTimestamps
|
|
format: date-time
|
|
nullable: true
|
|
type: string
|
|
message:
|
|
description: Message is a message about the pod volume backup's status.
|
|
type: string
|
|
path:
|
|
description: Path is the full path within the controller pod being
|
|
backed up.
|
|
type: string
|
|
phase:
|
|
description: Phase is the current state of the PodVolumeBackup.
|
|
enum:
|
|
- New
|
|
- Accepted
|
|
- Prepared
|
|
- InProgress
|
|
- Canceling
|
|
- Canceled
|
|
- Completed
|
|
- Failed
|
|
type: string
|
|
progress:
|
|
description: |-
|
|
Progress holds the total number of bytes of the volume and the current
|
|
number of backed up bytes. This can be used to display progress information
|
|
about the backup operation.
|
|
properties:
|
|
bytesDone:
|
|
format: int64
|
|
type: integer
|
|
totalBytes:
|
|
format: int64
|
|
type: integer
|
|
type: object
|
|
snapshotID:
|
|
description: SnapshotID is the identifier for the snapshot of the
|
|
pod volume.
|
|
type: string
|
|
startTimestamp:
|
|
description: |-
|
|
StartTimestamp records the time a backup was started.
|
|
Separate from CreationTimestamp, since that value changes
|
|
on restores.
|
|
The server's time is used for StartTimestamps
|
|
format: date-time
|
|
nullable: true
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources: {}
|