Box command to show example of a GroupBase command
This commit is contained in:
parent
5af0537e56
commit
cc2dcf4d8f
|
@ -2,10 +2,12 @@
|
||||||
require 'vagrant'
|
require 'vagrant'
|
||||||
require 'vagrant/cli'
|
require 'vagrant/cli'
|
||||||
|
|
||||||
|
env = Vagrant::Environment.load!
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Vagrant::CLI.start(ARGV, :env => Vagrant::Environment.load!)
|
Vagrant::CLI.start(ARGV, :env => env)
|
||||||
rescue Vagrant::VagrantError => e
|
rescue Vagrant::VagrantError => e
|
||||||
Vagrant.ui.error e.message
|
env.ui.error e.message
|
||||||
Vagrant.ui.error e.backtrace.join("\n")
|
env.ui.error e.backtrace.join("\n")
|
||||||
exit e.status_code
|
exit e.status_code
|
||||||
end
|
end
|
||||||
|
|
|
@ -28,6 +28,7 @@ module Vagrant
|
||||||
end
|
end
|
||||||
|
|
||||||
class CLIMissingEnvironment < VagrantError; status_code(1); end
|
class CLIMissingEnvironment < VagrantError; status_code(1); end
|
||||||
|
class BoxNotFound < VagrantError; status_code(2); end
|
||||||
end
|
end
|
||||||
|
|
||||||
# Load them up. One day we'll convert this to autoloads. Today
|
# Load them up. One day we'll convert this to autoloads. Today
|
||||||
|
|
|
@ -7,6 +7,25 @@ module Vagrant
|
||||||
def add(name, uri)
|
def add(name, uri)
|
||||||
Box.add(env, name, uri)
|
Box.add(env, name, uri)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
desc "remove NAME", "Remove a box from the system"
|
||||||
|
def remove(name)
|
||||||
|
b = Box.find(env, name)
|
||||||
|
raise BoxNotFound.new("Box '#{name}' could not be found.") if !b
|
||||||
|
b.destroy
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "repackage NAME", "Repackage an installed box into a `.box` file."
|
||||||
|
def repackage(name)
|
||||||
|
b = Box.find(env, name)
|
||||||
|
raise BoxNotFound.new("Box '#{name}' could not be found.") if !b
|
||||||
|
b.repackage
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "list", "Lists all installed boxes"
|
||||||
|
def list
|
||||||
|
# TODO
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue