Sha256: 7f4f7c0e7402322e9864dcd10abe244226097097bef334206e97afe073a2b637

Contents?: true

Size: 1.19 KB

Versions: 4

Compression:

Stored size: 1.19 KB

Contents

require 'optparse'
require 'vagrant'

module VagrantSnap

    module Command

        class List < Vagrant.plugin("2", :command)

            def execute

                options = {}

                opts = OptionParser.new do |o|
                    o.banner    = "Usage: vagrant snap list [vm-name]"
                    o.separator ""
                end

                argv = parse_options(opts)
                return if !argv

                results = []

                with_target_vms(argv) do |machine|

                    results << "#{machine.name.to_s}"

                    snaps = machine.provider.driver.snapshot_list

                    if snaps.length == 0
                        results << "  (none)"
                    else
                        snaps.each do |snap|
                            results << "  + #{snap}"
                        end
                    end

                    results << "\n"

                end

                @env.ui.info(I18n.t("vagrant_snap.commands.list.output",
                                    :snapshots => results.join("\n")),
                             :prefix => false)

                0

            end

        end

    end

end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
vagrant-multiprovider-snap-0.0.4 lib/vagrant-multiprovider-snap/command/list.rb
vagrant-zz-multiprovider-snap-0.0.3 lib/vagrant-multiprovider-snap/command/list.rb
vagrant-zz-multiprovider-snap-0.0.2 lib/vagrant-multiprovider-snap/command/list.rb
vagrant-zz-multiprovider-snap-0.0.1 lib/vagrant-multiprovider-snap/command/list.rb