diff --git a/lib/beaker/hypervisor/vagrant.rb b/lib/beaker/hypervisor/vagrant.rb index f89e0b2e37..6c973aa452 100644 --- a/lib/beaker/hypervisor/vagrant.rb +++ b/lib/beaker/hypervisor/vagrant.rb @@ -160,6 +160,17 @@ def cleanup FileUtils.rm_rf(@vagrant_path) end + #snapshotting depends on https://github.com/scalefactory/vagrant-multiprovider-snap + def take_snapshot(host,snapshot_name) + @logger.debug "Creating snapshot of #{host}" + vagrant_cmd("snap take #{host} --name=#{snapshot_name}") + end + + def restore_snapshot(host,snapshot_name) + @logger.debug "Restoring snapshot of #{host}" + vagrant_cmd("snap rollback #{host} --name=#{snapshot_name}") + end + def vagrant_cmd(args) Dir.chdir(@vagrant_path) do exit_status = 1