Sha256: 727fc113915d84b0137088b82583fede2abb185ebe2dae0c217f735faf02a85c

Contents?: true

Size: 1.3 KB

Versions: 59

Compression:

Stored size: 1.3 KB

Contents

require File.expand_path("../base", __FILE__)
require "acceptance/support/shared/command_examples"

describe "vagrant package" do
  include_context "acceptance"

  # This creates an initial environment that is ready for a "vagrant up"
  def initialize_valid_environment
    require_box("default")

    assert_execute("vagrant", "box", "add", "base", box_path("default"))
    assert_execute("vagrant", "init")
  end

  it "can package a running virtual machine" do
    initialize_valid_environment

    assert_execute("vagrant", "up")
    assert_execute("vagrant", "package")
    environment.workdir.join("package.box").should be_file
  end

  it "can package a `base` VM directly from VirtualBox" do
    initialize_valid_environment

    # Use a custom Vagrantfile that sets the VM name to `foo`
    environment.workdir.join("Vagrantfile").open("w+") do |f|
      f.write(<<-vf)
Vagrant::Config.run do |config|
  config.vm.box = "base"
  config.vm.customize ["modifyvm", :id, "--name", "foo"]
end
vf
    end

    # Bring up the VM
    assert_execute("vagrant", "up")

    # Remove the Vagrantfile so it doesn't use that
    environment.workdir.join("Vagrantfile").unlink

    # Now package the base VM
    assert_execute("vagrant", "package", "--base", "foo")
    environment.workdir.join("package.box").should be_file
  end
end

Version data entries

59 entries across 59 versions & 11 rubygems

Version Path
tamtam-vagrant-reload-1.1.3 vendor/cache/vagrant-0ac2a8738841/test/acceptance/package_test.rb
tamtam-vagrant-reload-1.1.2 vendor/cache/vagrant-0ac2a8738841/test/acceptance/package_test.rb
tamtam-vagrant-reload-1.1.1 vendor/cache/vagrant-0ac2a8738841/test/acceptance/package_test.rb
tamtam-vagrant-reload-1.1 vendor/cache/vagrant-0ac2a8738841/test/acceptance/package_test.rb
bmhatfield-vagrant-1.0.10 test/acceptance/package_test.rb
bmhatfield-vagrant-1.0.9 test/acceptance/package_test.rb
tnargav-1.3.6 test/acceptance/package_test.rb
tnargav-1.3.3 test/acceptance/package_test.rb
bmhatfield-vagrant-1.0.8 test/acceptance/package_test.rb
vagrant-shell-0.2.9 demo/templates/vendor/bundle/ruby/1.9.1/gems/tnargav-1.2.2/test/acceptance/package_test.rb
tnargav-1.2.3 test/acceptance/package_test.rb
vagrant-shell-0.2.8 demo/templates/vendor/bundle/ruby/1.9.1/gems/tnargav-1.2.2/test/acceptance/package_test.rb
bmhatfield-vagrant-1.0.7 test/acceptance/package_test.rb
vagrant-shell-0.2.6 vendor/bundle/gems/tnargav-1.2.2/test/acceptance/package_test.rb
vagrant-shell-0.2.5 vendor/bundle/gems/tnargav-1.2.2/test/acceptance/package_test.rb
tnargav-1.2.2 test/acceptance/package_test.rb
vagrantup-1.1.3 test/acceptance/package_test.rb
vagrantup-1.1.2 test/acceptance/package_test.rb
vagrantup-1.1.1 test/acceptance/package_test.rb
vagrantup-1.1.0 test/acceptance/package_test.rb