diff options
| author | MORITA Kazutaka <morita.kazutaka@gmail.com> | 2011-04-19 20:50:10 +0900 |
|---|---|---|
| committer | Isaku Yamahata <yamahata@valinux.co.jp> | 2011-04-19 20:50:10 +0900 |
| commit | f76f2ee50f2407155a0aaefac3224e6af14e7d26 (patch) | |
| tree | ea0fb2a1ad9295c67a38642a9ad41e88c9c2e9d5 /nova/volume | |
| parent | 0ba085928c75f2fc27fb03eaa3aaeff6618e8875 (diff) | |
Add support for creating a Sheepdog snapshot.
Diffstat (limited to 'nova/volume')
| -rw-r--r-- | nova/volume/driver.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/nova/volume/driver.py b/nova/volume/driver.py index 31998e307..ba0a7efef 100644 --- a/nova/volume/driver.py +++ b/nova/volume/driver.py @@ -620,6 +620,16 @@ class SheepdogDriver(VolumeDriver): """Deletes a logical volume""" self._try_execute('collie', 'vdi', 'delete', volume['name']) + def create_snapshot(self, snapshot): + """Creates a sheepdog snapshot""" + self._try_execute('qemu-img', 'snapshot', '-c', snapshot['name'], + "sheepdog:%s" % snapshot['volume_name']) + + def delete_snapshot(self, snapshot): + """Deletes a sheepdog snapshot""" + self._try_execute('collie', 'vdi', 'delete', snapshot['volume_name'], + '-s', snapshot['name']) + def local_path(self, volume): return "sheepdog:%s" % volume['name'] |
