vagrant-softlayer 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -24
  3. data/QUICKSTART.md +377 -0
  4. data/README.md +25 -20
  5. data/contrib/README.md +8 -1
  6. data/contrib/vagrant-softlayer-boxes +416 -408
  7. data/contrib/vagrant-softlayer-vlans +329 -0
  8. data/contrib/vagrantcloud/CENTOS_5_32.box +0 -0
  9. data/contrib/vagrantcloud/CENTOS_5_64.box +0 -0
  10. data/contrib/vagrantcloud/CENTOS_6_32.box +0 -0
  11. data/contrib/vagrantcloud/CENTOS_6_64.box +0 -0
  12. data/contrib/vagrantcloud/CENTOS_LATEST.box +0 -0
  13. data/contrib/vagrantcloud/CENTOS_LATEST_32.box +0 -0
  14. data/contrib/vagrantcloud/CENTOS_LATEST_64.box +0 -0
  15. data/contrib/vagrantcloud/CLOUDLINUX_5_32.box +0 -0
  16. data/contrib/vagrantcloud/CLOUDLINUX_5_64.box +0 -0
  17. data/contrib/vagrantcloud/CLOUDLINUX_6_32.box +0 -0
  18. data/contrib/vagrantcloud/CLOUDLINUX_6_64.box +0 -0
  19. data/contrib/vagrantcloud/CLOUDLINUX_LATEST.box +0 -0
  20. data/contrib/vagrantcloud/CLOUDLINUX_LATEST_32.box +0 -0
  21. data/contrib/vagrantcloud/CLOUDLINUX_LATEST_64.box +0 -0
  22. data/contrib/vagrantcloud/DEBIAN_5_32.box +0 -0
  23. data/contrib/vagrantcloud/DEBIAN_5_64.box +0 -0
  24. data/contrib/vagrantcloud/DEBIAN_6_32.box +0 -0
  25. data/contrib/vagrantcloud/DEBIAN_6_64.box +0 -0
  26. data/contrib/vagrantcloud/DEBIAN_7_32.box +0 -0
  27. data/contrib/vagrantcloud/DEBIAN_7_64.box +0 -0
  28. data/contrib/vagrantcloud/DEBIAN_LATEST.box +0 -0
  29. data/contrib/vagrantcloud/DEBIAN_LATEST_32.box +0 -0
  30. data/contrib/vagrantcloud/DEBIAN_LATEST_64.box +0 -0
  31. data/contrib/vagrantcloud/REDHAT_5_32.box +0 -0
  32. data/contrib/vagrantcloud/REDHAT_5_64.box +0 -0
  33. data/contrib/vagrantcloud/REDHAT_6_32.box +0 -0
  34. data/contrib/vagrantcloud/REDHAT_6_64.box +0 -0
  35. data/contrib/vagrantcloud/REDHAT_LATEST.box +0 -0
  36. data/contrib/vagrantcloud/REDHAT_LATEST_32.box +0 -0
  37. data/contrib/vagrantcloud/REDHAT_LATEST_64.box +0 -0
  38. data/contrib/vagrantcloud/SL_GENERIC.box +0 -0
  39. data/contrib/vagrantcloud/UBUNTU_10_32.box +0 -0
  40. data/contrib/vagrantcloud/UBUNTU_10_64.box +0 -0
  41. data/contrib/vagrantcloud/UBUNTU_12_32.box +0 -0
  42. data/contrib/vagrantcloud/UBUNTU_12_64.box +0 -0
  43. data/contrib/vagrantcloud/UBUNTU_14_32.box +0 -0
  44. data/contrib/vagrantcloud/UBUNTU_14_64.box +0 -0
  45. data/contrib/vagrantcloud/UBUNTU_8_32.box +0 -0
  46. data/contrib/vagrantcloud/UBUNTU_8_64.box +0 -0
  47. data/contrib/vagrantcloud/UBUNTU_LATEST.box +0 -0
  48. data/contrib/vagrantcloud/UBUNTU_LATEST_32.box +0 -0
  49. data/contrib/vagrantcloud/UBUNTU_LATEST_64.box +0 -0
  50. data/contrib/vagrantcloud/VYATTACE_6.5_64.box +0 -0
  51. data/contrib/vagrantcloud/VYATTACE_6.6_64.box +0 -0
  52. data/contrib/vagrantcloud/VYATTACE_LATEST.box +0 -0
  53. data/contrib/vagrantcloud/VYATTACE_LATEST_64.box +0 -0
  54. data/contrib/vagrantcloud/WIN_2003-DC-SP2-1_32.box +0 -0
  55. data/contrib/vagrantcloud/WIN_2003-DC-SP2-1_64.box +0 -0
  56. data/contrib/vagrantcloud/WIN_2003-ENT-SP2-5_32.box +0 -0
  57. data/contrib/vagrantcloud/WIN_2003-ENT-SP2-5_64.box +0 -0
  58. data/contrib/vagrantcloud/WIN_2003-STD-SP2-5_32.box +0 -0
  59. data/contrib/vagrantcloud/WIN_2003-STD-SP2-5_64.box +0 -0
  60. data/contrib/vagrantcloud/WIN_2008-DC-R2_64.box +0 -0
  61. data/contrib/vagrantcloud/WIN_2008-DC-SP2_32.box +0 -0
  62. data/contrib/vagrantcloud/WIN_2008-DC-SP2_64.box +0 -0
  63. data/contrib/vagrantcloud/WIN_2008-ENT-R2_64.box +0 -0
  64. data/contrib/vagrantcloud/WIN_2008-ENT-SP2_32.box +0 -0
  65. data/contrib/vagrantcloud/WIN_2008-ENT-SP2_64.box +0 -0
  66. data/contrib/vagrantcloud/WIN_2008-STD-R2-SP1_64.box +0 -0
  67. data/contrib/vagrantcloud/WIN_2008-STD-R2_64.box +0 -0
  68. data/contrib/vagrantcloud/WIN_2008-STD-SP2_32.box +0 -0
  69. data/contrib/vagrantcloud/WIN_2008-STD-SP2_64.box +0 -0
  70. data/contrib/vagrantcloud/WIN_2012-DC_64.box +0 -0
  71. data/contrib/vagrantcloud/WIN_2012-STD_64.box +0 -0
  72. data/contrib/vagrantcloud/WIN_LATEST.box +0 -0
  73. data/contrib/vagrantcloud/WIN_LATEST_32.box +0 -0
  74. data/contrib/vagrantcloud/WIN_LATEST_64.box +0 -0
  75. data/lib/vagrant-softlayer/action.rb +20 -16
  76. data/lib/vagrant-softlayer/action/create_instance.rb +24 -8
  77. data/lib/vagrant-softlayer/action/setup_softlayer.rb +2 -1
  78. data/lib/vagrant-softlayer/action/sync_folders.rb +99 -99
  79. data/lib/vagrant-softlayer/action/wait_for_rebuild.rb +36 -36
  80. data/lib/vagrant-softlayer/config.rb +10 -2
  81. data/lib/vagrant-softlayer/errors.rb +33 -29
  82. data/lib/vagrant-softlayer/plugin.rb +77 -77
  83. data/lib/vagrant-softlayer/util/load_balancer.rb +103 -103
  84. data/lib/vagrant-softlayer/util/network.rb +75 -73
  85. data/lib/vagrant-softlayer/util/warden.rb +38 -38
  86. data/lib/vagrant-softlayer/version.rb +5 -5
  87. data/locales/en.yml +6 -0
  88. data/spec/vagrant-softlayer/config_spec.rb +4 -2
  89. data/vagrant-softlayer.gemspec +55 -55
  90. metadata +71 -2
@@ -1,38 +1,38 @@
1
- module VagrantPlugins
2
- module SoftLayer
3
- module Util
4
- module Warden
5
- # Handles gracefully SoftLayer API calls.
6
- #
7
- # The block code is executed, catching both common
8
- # connection errors and API exceptions.
9
- #
10
- # Optionally, in the not-so-uncommon case when
11
- # the object (e.g. the SoftLayer instance) is not
12
- # found, executes a proc and/or retry the API call
13
- # after some seconds.
14
- #
15
- # A future version of the method will add a retry timeout.
16
- def sl_warden(rescue_proc = nil, retry_interval = 0, &block)
17
- begin
18
- yield
19
- rescue ::OpenSSL::SSL::SSLError
20
- raise Errors::SLCertificateError
21
- rescue SocketError, ::SoftLayer::SoftLayerAPIException => e
22
- if e.class == ::SoftLayer::SoftLayerAPIException && (e.message.start_with?("Unable to find object") || e.message.start_with?("Object does not exist"))
23
- out = rescue_proc.call if rescue_proc
24
- if retry_interval > 0
25
- sleep retry_interval
26
- retry
27
- else
28
- return out
29
- end
30
- else
31
- raise Errors::SLApiError, :class => e.class, :message => e.message
32
- end
33
- end
34
- end
35
- end
36
- end
37
- end
38
- end
1
+ module VagrantPlugins
2
+ module SoftLayer
3
+ module Util
4
+ module Warden
5
+ # Handles gracefully SoftLayer API calls.
6
+ #
7
+ # The block code is executed, catching both common
8
+ # connection errors and API exceptions.
9
+ #
10
+ # Optionally, in the not-so-uncommon case when
11
+ # the object (e.g. the SoftLayer instance) is not
12
+ # found, executes a proc and/or retry the API call
13
+ # after some seconds.
14
+ #
15
+ # A future version of the method will add a retry timeout.
16
+ def sl_warden(rescue_proc = nil, retry_interval = 0, &block)
17
+ begin
18
+ yield
19
+ rescue ::OpenSSL::SSL::SSLError
20
+ raise Errors::SLCertificateError
21
+ rescue SocketError, ::SoftLayer::SoftLayerAPIException => e
22
+ if e.class == ::SoftLayer::SoftLayerAPIException && (e.message.start_with?("Unable to find object") || e.message.start_with?("Object does not exist"))
23
+ out = rescue_proc.call if rescue_proc
24
+ if retry_interval > 0
25
+ sleep retry_interval
26
+ retry
27
+ else
28
+ return out
29
+ end
30
+ else
31
+ raise Errors::SLApiError, :class => e.class, :message => e.message
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -1,5 +1,5 @@
1
- module VagrantPlugins
2
- module SoftLayer
3
- VERSION = "0.3.1"
4
- end
5
- end
1
+ module VagrantPlugins
2
+ module SoftLayer
3
+ VERSION = "0.3.2"
4
+ end
5
+ end
data/locales/en.yml CHANGED
@@ -123,6 +123,12 @@ en:
123
123
  ssh_key_not_found: |-
124
124
  The SSH key you're trying to set (%{key}) does not exists in the
125
125
  SoftLayer account's keychain.
126
+ vlan_id_not_found: |-
127
+ The vlan id for the %{vlan_space} vlan name or qualified name
128
+ provided (%{vlan_name}) could not be found.
129
+
130
+ Please check the configuration parameter for vlan name against
131
+ acceptable values shown using the vagrant-softlayer-vlans tool.
126
132
  states:
127
133
  short_not_created: |-
128
134
  not created
@@ -19,6 +19,7 @@ describe VagrantPlugins::SoftLayer::Config do
19
19
  its("dedicated") { should be_false }
20
20
  its("disk_capacity") { should be_nil }
21
21
  its("domain") { should be_nil }
22
+ its("force_private_ip") { should be_false }
22
23
  its("hostname") { should be_nil }
23
24
  its("hourly_billing") { should be_true }
24
25
  its("image_guid") { should be_nil }
@@ -41,7 +42,7 @@ describe VagrantPlugins::SoftLayer::Config do
41
42
  describe "overriding defaults" do
42
43
  context "booleans" do
43
44
  [true, false].each do |bool|
44
- [:dedicated, :hourly_billing, :local_disk, :manage_dns, :private_only].each do |attribute|
45
+ [:dedicated, :force_private_ip, :hourly_billing, :local_disk, :manage_dns, :private_only].each do |attribute|
45
46
  it "should accept both true and false for #{attribute}" do
46
47
  config.send("#{attribute}=".to_sym, bool)
47
48
  config.finalize!
@@ -62,7 +63,7 @@ describe VagrantPlugins::SoftLayer::Config do
62
63
  end
63
64
 
64
65
  context "strings" do
65
- [:api_key, :datacenter, :endpoint_url, :username, :domain, :hostname, :image_guid, :operating_system, :post_install, :ssh_key, :user_data].each do |attribute|
66
+ [:api_key, :datacenter, :endpoint_url, :username, :domain, :hostname, :image_guid, :operating_system, :post_install, :ssh_key, :user_data, :vlan_private, :vlan_public].each do |attribute|
66
67
  it "should not default #{attribute} if overridden" do
67
68
  config.send("#{attribute}=".to_sym, "foo")
68
69
  config.finalize!
@@ -134,6 +135,7 @@ describe VagrantPlugins::SoftLayer::Config do
134
135
  config.dedicated = false
135
136
  config.domain = "example.com"
136
137
  config.disk_capacity = { 0 => 25 }
138
+ config.force_private_ip = false
137
139
  config.hostname = "vagrant"
138
140
  config.hourly_billing = true
139
141
  config.image_guid = nil
@@ -1,55 +1,55 @@
1
- $:.unshift File.expand_path("../lib", __FILE__)
2
- require "vagrant-softlayer/version"
3
-
4
- Gem::Specification.new do |spec|
5
- spec.name = "vagrant-softlayer"
6
- spec.version = VagrantPlugins::SoftLayer::VERSION
7
- spec.authors = "Audiolize GmbH"
8
- spec.email = ""
9
- spec.homepage = "https://github.com/audiolize/vagrant-softlayer"
10
- spec.description = "Enables Vagrant to manages SoftLayer CCI."
11
- spec.summary = "Enables Vagrant to manages SoftLayer CCI."
12
- spec.license = "MIT"
13
-
14
- # The following block of code determines the files that should be included
15
- # in the gem. It does this by reading all the files in the directory where
16
- # this gemspec is, and parsing out the ignored files from the gitignore.
17
- # Note that the entire gitignore(5) syntax is not supported, specifically
18
- # the "!" syntax, but it should mostly work correctly.
19
- root_path = File.dirname(__FILE__)
20
- all_files = Dir.chdir(root_path) { Dir.glob("**/{*,.*}") }
21
- all_files.reject! { |file| [".", ".."].include?(File.basename(file)) }
22
- gitignore_path = File.join(root_path, ".gitignore")
23
- gitignore = File.readlines(gitignore_path)
24
- gitignore.map! { |line| line.chomp.strip }
25
- gitignore.reject! { |line| line.empty? || line =~ /^(#|!)/ }
26
-
27
- unignored_files = all_files.reject do |file|
28
- # Ignore any directories, the gemspec only cares about files
29
- next true if File.directory?(file)
30
-
31
- # Ignore any paths that match anything in the gitignore. We do
32
- # two tests here:
33
- #
34
- # - First, test to see if the entire path matches the gitignore.
35
- # - Second, match if the basename does, this makes it so that things
36
- # like '.DS_Store' will match sub-directories too (same behavior
37
- # as git).
38
- #
39
- gitignore.any? do |ignore|
40
- File.fnmatch(ignore, file, File::FNM_PATHNAME) ||
41
- File.fnmatch(ignore, File.basename(file), File::FNM_PATHNAME)
42
- end
43
- end
44
-
45
- spec.files = unignored_files
46
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
47
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
48
- spec.require_path = "lib"
49
-
50
- spec.add_dependency "softlayer_api", "~> 1.0"
51
-
52
- spec.add_development_dependency "bundler", "~> 1.3"
53
- spec.add_development_dependency "rake"
54
- spec.add_development_dependency "rspec"
55
- end
1
+ $:.unshift File.expand_path("../lib", __FILE__)
2
+ require "vagrant-softlayer/version"
3
+
4
+ Gem::Specification.new do |spec|
5
+ spec.name = "vagrant-softlayer"
6
+ spec.version = VagrantPlugins::SoftLayer::VERSION
7
+ spec.authors = "Audiolize GmbH"
8
+ spec.email = ""
9
+ spec.homepage = "https://github.com/audiolize/vagrant-softlayer"
10
+ spec.description = "Enables Vagrant to manages SoftLayer CCI."
11
+ spec.summary = "Enables Vagrant to manages SoftLayer CCI."
12
+ spec.license = "MIT"
13
+
14
+ # The following block of code determines the files that should be included
15
+ # in the gem. It does this by reading all the files in the directory where
16
+ # this gemspec is, and parsing out the ignored files from the gitignore.
17
+ # Note that the entire gitignore(5) syntax is not supported, specifically
18
+ # the "!" syntax, but it should mostly work correctly.
19
+ root_path = File.dirname(__FILE__)
20
+ all_files = Dir.chdir(root_path) { Dir.glob("**/{*,.*}") }
21
+ all_files.reject! { |file| [".", ".."].include?(File.basename(file)) }
22
+ gitignore_path = File.join(root_path, ".gitignore")
23
+ gitignore = File.readlines(gitignore_path)
24
+ gitignore.map! { |line| line.chomp.strip }
25
+ gitignore.reject! { |line| line.empty? || line =~ /^(#|!)/ }
26
+
27
+ unignored_files = all_files.reject do |file|
28
+ # Ignore any directories, the gemspec only cares about files
29
+ next true if File.directory?(file)
30
+
31
+ # Ignore any paths that match anything in the gitignore. We do
32
+ # two tests here:
33
+ #
34
+ # - First, test to see if the entire path matches the gitignore.
35
+ # - Second, match if the basename does, this makes it so that things
36
+ # like '.DS_Store' will match sub-directories too (same behavior
37
+ # as git).
38
+ #
39
+ gitignore.any? do |ignore|
40
+ File.fnmatch(ignore, file, File::FNM_PATHNAME) ||
41
+ File.fnmatch(ignore, File.basename(file), File::FNM_PATHNAME)
42
+ end
43
+ end
44
+
45
+ spec.files = unignored_files
46
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
47
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
48
+ spec.require_path = "lib"
49
+
50
+ spec.add_dependency "softlayer_api", "~> 1.0"
51
+
52
+ spec.add_development_dependency "bundler", "~> 1.3"
53
+ spec.add_development_dependency "rake"
54
+ spec.add_development_dependency "rspec"
55
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-softlayer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Audiolize GmbH
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-03 00:00:00.000000000 Z
11
+ date: 2014-08-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: softlayer_api
@@ -75,6 +75,74 @@ files:
75
75
  - CHANGELOG.md
76
76
  - contrib/README.md
77
77
  - contrib/vagrant-softlayer-boxes
78
+ - contrib/vagrant-softlayer-vlans
79
+ - contrib/vagrantcloud/CENTOS_5_32.box
80
+ - contrib/vagrantcloud/CENTOS_5_64.box
81
+ - contrib/vagrantcloud/CENTOS_6_32.box
82
+ - contrib/vagrantcloud/CENTOS_6_64.box
83
+ - contrib/vagrantcloud/CENTOS_LATEST.box
84
+ - contrib/vagrantcloud/CENTOS_LATEST_32.box
85
+ - contrib/vagrantcloud/CENTOS_LATEST_64.box
86
+ - contrib/vagrantcloud/CLOUDLINUX_5_32.box
87
+ - contrib/vagrantcloud/CLOUDLINUX_5_64.box
88
+ - contrib/vagrantcloud/CLOUDLINUX_6_32.box
89
+ - contrib/vagrantcloud/CLOUDLINUX_6_64.box
90
+ - contrib/vagrantcloud/CLOUDLINUX_LATEST.box
91
+ - contrib/vagrantcloud/CLOUDLINUX_LATEST_32.box
92
+ - contrib/vagrantcloud/CLOUDLINUX_LATEST_64.box
93
+ - contrib/vagrantcloud/DEBIAN_5_32.box
94
+ - contrib/vagrantcloud/DEBIAN_5_64.box
95
+ - contrib/vagrantcloud/DEBIAN_6_32.box
96
+ - contrib/vagrantcloud/DEBIAN_6_64.box
97
+ - contrib/vagrantcloud/DEBIAN_7_32.box
98
+ - contrib/vagrantcloud/DEBIAN_7_64.box
99
+ - contrib/vagrantcloud/DEBIAN_LATEST.box
100
+ - contrib/vagrantcloud/DEBIAN_LATEST_32.box
101
+ - contrib/vagrantcloud/DEBIAN_LATEST_64.box
102
+ - contrib/vagrantcloud/REDHAT_5_32.box
103
+ - contrib/vagrantcloud/REDHAT_5_64.box
104
+ - contrib/vagrantcloud/REDHAT_6_32.box
105
+ - contrib/vagrantcloud/REDHAT_6_64.box
106
+ - contrib/vagrantcloud/REDHAT_LATEST.box
107
+ - contrib/vagrantcloud/REDHAT_LATEST_32.box
108
+ - contrib/vagrantcloud/REDHAT_LATEST_64.box
109
+ - contrib/vagrantcloud/SL_GENERIC.box
110
+ - contrib/vagrantcloud/UBUNTU_10_32.box
111
+ - contrib/vagrantcloud/UBUNTU_10_64.box
112
+ - contrib/vagrantcloud/UBUNTU_12_32.box
113
+ - contrib/vagrantcloud/UBUNTU_12_64.box
114
+ - contrib/vagrantcloud/UBUNTU_14_32.box
115
+ - contrib/vagrantcloud/UBUNTU_14_64.box
116
+ - contrib/vagrantcloud/UBUNTU_8_32.box
117
+ - contrib/vagrantcloud/UBUNTU_8_64.box
118
+ - contrib/vagrantcloud/UBUNTU_LATEST.box
119
+ - contrib/vagrantcloud/UBUNTU_LATEST_32.box
120
+ - contrib/vagrantcloud/UBUNTU_LATEST_64.box
121
+ - contrib/vagrantcloud/VYATTACE_6.5_64.box
122
+ - contrib/vagrantcloud/VYATTACE_6.6_64.box
123
+ - contrib/vagrantcloud/VYATTACE_LATEST.box
124
+ - contrib/vagrantcloud/VYATTACE_LATEST_64.box
125
+ - contrib/vagrantcloud/WIN_2003-DC-SP2-1_32.box
126
+ - contrib/vagrantcloud/WIN_2003-DC-SP2-1_64.box
127
+ - contrib/vagrantcloud/WIN_2003-ENT-SP2-5_32.box
128
+ - contrib/vagrantcloud/WIN_2003-ENT-SP2-5_64.box
129
+ - contrib/vagrantcloud/WIN_2003-STD-SP2-5_32.box
130
+ - contrib/vagrantcloud/WIN_2003-STD-SP2-5_64.box
131
+ - contrib/vagrantcloud/WIN_2008-DC-R2_64.box
132
+ - contrib/vagrantcloud/WIN_2008-DC-SP2_32.box
133
+ - contrib/vagrantcloud/WIN_2008-DC-SP2_64.box
134
+ - contrib/vagrantcloud/WIN_2008-ENT-R2_64.box
135
+ - contrib/vagrantcloud/WIN_2008-ENT-SP2_32.box
136
+ - contrib/vagrantcloud/WIN_2008-ENT-SP2_64.box
137
+ - contrib/vagrantcloud/WIN_2008-STD-R2-SP1_64.box
138
+ - contrib/vagrantcloud/WIN_2008-STD-R2_64.box
139
+ - contrib/vagrantcloud/WIN_2008-STD-SP2_32.box
140
+ - contrib/vagrantcloud/WIN_2008-STD-SP2_64.box
141
+ - contrib/vagrantcloud/WIN_2012-DC_64.box
142
+ - contrib/vagrantcloud/WIN_2012-STD_64.box
143
+ - contrib/vagrantcloud/WIN_LATEST.box
144
+ - contrib/vagrantcloud/WIN_LATEST_32.box
145
+ - contrib/vagrantcloud/WIN_LATEST_64.box
78
146
  - dummy.box
79
147
  - example_box/metadata.json
80
148
  - example_box/README.md
@@ -110,6 +178,7 @@ files:
110
178
  - lib/vagrant-softlayer.rb
111
179
  - LICENSE
112
180
  - locales/en.yml
181
+ - QUICKSTART.md
113
182
  - Rakefile
114
183
  - README.md
115
184
  - spec/spec_helper.rb