chef-metal-vagrant 0.6 → 0.7
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.
- checksums.yaml +4 -4
- data/lib/chef/provisioning/driver_init/vagrant.rb +3 -0
- data/lib/chef/provisioning/vagrant_driver.rb +35 -0
- data/lib/{chef_metal_vagrant/vagrant_driver.rb → chef/provisioning/vagrant_driver/driver.rb} +9 -5
- data/lib/chef/provisioning/vagrant_driver/version.rb +7 -0
- data/lib/chef/resource/vagrant_box.rb +7 -2
- data/lib/chef/resource/vagrant_cluster.rb +6 -1
- metadata +6 -6
- data/lib/chef_metal/driver_init/vagrant.rb +0 -3
- data/lib/chef_metal_vagrant.rb +0 -33
- data/lib/chef_metal_vagrant/version.rb +0 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9a8d69c824684a912af6c8f37ab60465dffe4fee
|
|
4
|
+
data.tar.gz: ab15a76ad01d484b0503f8920a4d788682d8676d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 810fa6b256bc05420dc7d409f1b582e5d433914bc519cbec3b64d2e95d5ed1c2742d0d46ba89d1dc38cc0e7c87f4d4d1cd86643569316ec47712c2f634df98df
|
|
7
|
+
data.tar.gz: 507562488443ae27ca942210faba3383eb40c2dce8e8617c8ce8d1b82f70672184dc8d3531df7449417601dc61e49d8e668370a39597d400af9297a56652deec
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
require 'chef_metal'
|
|
2
|
+
require 'chef/resource/vagrant_cluster'
|
|
3
|
+
require 'chef/provider/vagrant_cluster'
|
|
4
|
+
require 'chef/resource/vagrant_box'
|
|
5
|
+
require 'chef/provider/vagrant_box'
|
|
6
|
+
require 'chef/provisioning/vagrant_driver/driver'
|
|
7
|
+
|
|
8
|
+
class Chef
|
|
9
|
+
module Provisioning
|
|
10
|
+
module VagrantDriver
|
|
11
|
+
def self.with_vagrant_box(run_context, box_name, vagrant_options = {}, &block)
|
|
12
|
+
if box_name.is_a?(Chef::Resource::VagrantBox)
|
|
13
|
+
new_options = { :vagrant_options => { 'vm.box' => box_name.name } }
|
|
14
|
+
new_options[:vagrant_options]['vm.box_url'] = box_name.url if box_name.url
|
|
15
|
+
else
|
|
16
|
+
new_options = { :vagrant_options => { 'vm.box' => box_name } }
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
run_context.chef_metal.add_machine_options(new_options, &block)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
module DSL
|
|
25
|
+
module Recipe
|
|
26
|
+
def with_vagrant_cluster(cluster_path, &block)
|
|
27
|
+
with_driver("vagrant:#{cluster_path}", &block)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def with_vagrant_box(box_name, vagrant_options = {}, &block)
|
|
31
|
+
Chef::Provisioning::VagrantDriver.with_vagrant_box(run_context, box_name, vagrant_options, &block)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
data/lib/{chef_metal_vagrant/vagrant_driver.rb → chef/provisioning/vagrant_driver/driver.rb}
RENAMED
|
@@ -6,13 +6,15 @@ require 'chef_metal/convergence_strategy/install_msi'
|
|
|
6
6
|
require 'chef_metal/convergence_strategy/install_cached'
|
|
7
7
|
require 'chef_metal/transport/winrm'
|
|
8
8
|
require 'chef_metal/transport/ssh'
|
|
9
|
-
require '
|
|
9
|
+
require 'chef/provisioning/vagrant_driver/version'
|
|
10
10
|
require 'chef/resource/vagrant_cluster'
|
|
11
11
|
require 'chef/provider/vagrant_cluster'
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
class Chef
|
|
14
|
+
module Provisioning
|
|
15
|
+
module VagrantDriver
|
|
14
16
|
# Provisions machines in vagrant.
|
|
15
|
-
class
|
|
17
|
+
class Driver < ChefMetal::Driver
|
|
16
18
|
|
|
17
19
|
include Chef::Mixin::ShellOut
|
|
18
20
|
|
|
@@ -30,7 +32,7 @@ module ChefMetalVagrant
|
|
|
30
32
|
attr_reader :cluster_path
|
|
31
33
|
|
|
32
34
|
def self.from_url(driver_url, config)
|
|
33
|
-
|
|
35
|
+
Driver.new(driver_url, config)
|
|
34
36
|
end
|
|
35
37
|
|
|
36
38
|
def self.canonicalize_url(driver_url, config)
|
|
@@ -51,7 +53,7 @@ module ChefMetalVagrant
|
|
|
51
53
|
old_location = machine_spec.location
|
|
52
54
|
machine_spec.location = {
|
|
53
55
|
'driver_url' => driver_url,
|
|
54
|
-
'driver_version' =>
|
|
56
|
+
'driver_version' => Chef::Provisioning::VagrantDriver::VERSION,
|
|
55
57
|
'vm_name' => vm_name,
|
|
56
58
|
'vm_file_path' => vm_file_path,
|
|
57
59
|
'allocated_at' => Time.now.utc.to_s,
|
|
@@ -465,3 +467,5 @@ module ChefMetalVagrant
|
|
|
465
467
|
end
|
|
466
468
|
end
|
|
467
469
|
end
|
|
470
|
+
end
|
|
471
|
+
end
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
require 'chef/resource/lwrp_base'
|
|
2
|
-
require '
|
|
2
|
+
require 'chef/provisioning/vagrant_driver'
|
|
3
3
|
|
|
4
4
|
class Chef::Resource::VagrantBox < Chef::Resource::LWRPBase
|
|
5
5
|
self.resource_name = 'vagrant_box'
|
|
@@ -13,6 +13,11 @@ class Chef::Resource::VagrantBox < Chef::Resource::LWRPBase
|
|
|
13
13
|
|
|
14
14
|
def after_created
|
|
15
15
|
super
|
|
16
|
-
|
|
16
|
+
Chef::Provisioning::VagrantDriver.with_vagrant_box run_context, self
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# We are not interested in Chef's cloning behavior here.
|
|
20
|
+
def load_prior_resource
|
|
21
|
+
Chef::Log.debug("Overloading #{resource_name}.load_prior_resource with NOOP")
|
|
17
22
|
end
|
|
18
23
|
end
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
require 'chef/resource/lwrp_base'
|
|
2
|
-
require '
|
|
2
|
+
require 'chef/provisioning/vagrant_driver'
|
|
3
3
|
|
|
4
4
|
class Chef::Resource::VagrantCluster < Chef::Resource::LWRPBase
|
|
5
5
|
self.resource_name = 'vagrant_cluster'
|
|
@@ -13,4 +13,9 @@ class Chef::Resource::VagrantCluster < Chef::Resource::LWRPBase
|
|
|
13
13
|
super
|
|
14
14
|
run_context.chef_metal.with_driver "vagrant:#{path}"
|
|
15
15
|
end
|
|
16
|
+
|
|
17
|
+
# We are not interested in Chef's cloning behavior here.
|
|
18
|
+
def load_prior_resource
|
|
19
|
+
Chef::Log.debug("Overloading #{resource_name}.load_prior_resource with NOOP")
|
|
20
|
+
end
|
|
16
21
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: chef-metal-vagrant
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: '0.
|
|
4
|
+
version: '0.7'
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- John Keiser
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2014-
|
|
11
|
+
date: 2014-11-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: chef
|
|
@@ -79,12 +79,12 @@ files:
|
|
|
79
79
|
- Rakefile
|
|
80
80
|
- lib/chef/provider/vagrant_box.rb
|
|
81
81
|
- lib/chef/provider/vagrant_cluster.rb
|
|
82
|
+
- lib/chef/provisioning/driver_init/vagrant.rb
|
|
83
|
+
- lib/chef/provisioning/vagrant_driver.rb
|
|
84
|
+
- lib/chef/provisioning/vagrant_driver/driver.rb
|
|
85
|
+
- lib/chef/provisioning/vagrant_driver/version.rb
|
|
82
86
|
- lib/chef/resource/vagrant_box.rb
|
|
83
87
|
- lib/chef/resource/vagrant_cluster.rb
|
|
84
|
-
- lib/chef_metal/driver_init/vagrant.rb
|
|
85
|
-
- lib/chef_metal_vagrant.rb
|
|
86
|
-
- lib/chef_metal_vagrant/vagrant_driver.rb
|
|
87
|
-
- lib/chef_metal_vagrant/version.rb
|
|
88
88
|
homepage: https://github.com/opscode/chef-metal-fog
|
|
89
89
|
licenses: []
|
|
90
90
|
metadata: {}
|
data/lib/chef_metal_vagrant.rb
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
require 'chef_metal'
|
|
2
|
-
require 'chef/resource/vagrant_cluster'
|
|
3
|
-
require 'chef/provider/vagrant_cluster'
|
|
4
|
-
require 'chef/resource/vagrant_box'
|
|
5
|
-
require 'chef/provider/vagrant_box'
|
|
6
|
-
require 'chef_metal_vagrant/vagrant_driver'
|
|
7
|
-
|
|
8
|
-
module ChefMetalVagrant
|
|
9
|
-
def self.with_vagrant_box(run_context, box_name, vagrant_options = {}, &block)
|
|
10
|
-
if box_name.is_a?(Chef::Resource::VagrantBox)
|
|
11
|
-
new_options = { :vagrant_options => { 'vm.box' => box_name.name } }
|
|
12
|
-
new_options[:vagrant_options]['vm.box_url'] = box_name.url if box_name.url
|
|
13
|
-
else
|
|
14
|
-
new_options = { :vagrant_options => { 'vm.box' => box_name } }
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
run_context.chef_metal.add_machine_options(new_options, &block)
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
class Chef
|
|
22
|
-
module DSL
|
|
23
|
-
module Recipe
|
|
24
|
-
def with_vagrant_cluster(cluster_path, &block)
|
|
25
|
-
with_driver("vagrant:#{cluster_path}", &block)
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def with_vagrant_box(box_name, vagrant_options = {}, &block)
|
|
29
|
-
ChefMetalVagrant.with_vagrant_box(run_context, box_name, vagrant_options, &block)
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end
|