Core backup driver interface.
All backup drivers should support this interface as a bare minimum.
Bases: cinder.interface.base.CinderInterface
Backup driver required interface.
Start a backup of a specified volume.
If backup[‘parent_id’] is given, then an incremental backup should be performed is supported.
If the parent backup is a different size, a full backup should be performed to ensure all data is included.
TODO(smcginnis) Document backup variable structure.
Parameters: |
|
---|
Delete a backup from the backup store.
Parameters: | backup – The backup to be deleted. |
---|
Export driver specific backup record information.
If backup backend needs additional driver specific information to import backup record back into the system it must overwrite this method and return it here as a dictionary so it can be serialized into a string.
Default backup driver implementation has no extra information.
Parameters: | backup – backup object to export |
---|---|
Returns: | driver_info - dictionary with extra information |
Get volume metadata.
Returns a json-encoded dict containing all metadata and the restore version i.e. the version used to decide what actually gets restored from this container when doing a backup restore.
Typically best to use py:class:BackupMetadataAPI for this.
Parameters: | volume_id – The ID of the volume. |
---|---|
Returns: | json-encoded dict of metadata. |
Import driver specific backup record information.
If backup backend needs additional driver specific information to import backup record back into the system it must overwrite this method since it will be called with the extra information that was provided by export_record when exporting the backup.
Default backup driver implementation does nothing since it didn’t export any specific data in export_record.
Parameters: |
|
---|---|
Returns: | nothing |
Set volume metadata.
Typically best to use py:class:BackupMetadataAPI for this.
Parameters: |
|
---|
Restore data from a backup.
Parameters: |
|
---|