kitchen-hyperv 0.1.20 → 0.2.0
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/.cane +1 -1
- data/.gitignore +15 -15
- data/Gemfile +15 -10
- data/{CHANGELOG.md → HISTORY.md} +21 -21
- data/LICENSE.txt +22 -22
- data/README.md +2 -0
- data/Rakefile +69 -52
- data/kitchen-hyperv.gemspec +32 -31
- data/lib/kitchen/driver/hyperv.rb +31 -9
- data/lib/kitchen/driver/hyperv_version.rb +22 -22
- data/lib/kitchen/driver/powershell.rb +193 -194
- data/spec/kitchen/driver/hyperv_spec.rb +70 -70
- data/spec/spec_helper.rb +43 -43
- data/spec/support/hyperv.Tests.ps1 +43 -2
- data/support/hyperv.ps1 +19 -6
- metadata +18 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7fe9d9ccb046b8b131cfd899f51d4b3e804a4785
|
|
4
|
+
data.tar.gz: 0d10faf30ad3ce73c07231e41fce9a5216d1929d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6deb6cbcae9d5b8c7c69277b82bd6b4577db267256e4c48fd627d57da4022fcb7f36d71b1ec28dc0f9794246d5d20b722239ee4893efaa76dcc7923c17691f6a
|
|
7
|
+
data.tar.gz: 1a6092559b6c67e6f7caaa2a79089f4a7e7bf1d3d652a59c281f6efa46836c56cd3af0a9c69fbc207d7785b482b0881552f4e721e8760cb1bbe838b9ef7a4a01
|
data/.cane
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
--no-doc
|
|
1
|
+
--no-doc
|
|
2
2
|
--style-measure 100
|
data/.gitignore
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
/.bundle/
|
|
2
|
-
/.yardoc
|
|
3
|
-
/Gemfile.lock
|
|
4
|
-
/_yardoc/
|
|
5
|
-
/coverage/
|
|
6
|
-
/doc/
|
|
7
|
-
/pkg/
|
|
8
|
-
/spec/reports/
|
|
9
|
-
/tmp/
|
|
10
|
-
*.bundle
|
|
11
|
-
*.so
|
|
12
|
-
*.o
|
|
13
|
-
*.a
|
|
14
|
-
mkmf.log
|
|
15
|
-
*.gem
|
|
1
|
+
/.bundle/
|
|
2
|
+
/.yardoc
|
|
3
|
+
/Gemfile.lock
|
|
4
|
+
/_yardoc/
|
|
5
|
+
/coverage/
|
|
6
|
+
/doc/
|
|
7
|
+
/pkg/
|
|
8
|
+
/spec/reports/
|
|
9
|
+
/tmp/
|
|
10
|
+
*.bundle
|
|
11
|
+
*.so
|
|
12
|
+
*.o
|
|
13
|
+
*.a
|
|
14
|
+
mkmf.log
|
|
15
|
+
*.gem
|
data/Gemfile
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
source 'https://rubygems.org'
|
|
2
|
-
|
|
3
|
-
# Specify your gem's dependencies in kitchen-hyperv.gemspec
|
|
4
|
-
gemspec
|
|
5
|
-
|
|
6
|
-
gem 'win32-process'
|
|
7
|
-
gem 'win32-api'
|
|
8
|
-
gem 'windows-pr'
|
|
9
|
-
gem 'windows-api'
|
|
10
|
-
gem 'ffi'
|
|
1
|
+
source 'https://rubygems.org'
|
|
2
|
+
|
|
3
|
+
# Specify your gem's dependencies in kitchen-hyperv.gemspec
|
|
4
|
+
gemspec
|
|
5
|
+
|
|
6
|
+
gem 'win32-process'
|
|
7
|
+
gem 'win32-api'
|
|
8
|
+
gem 'windows-pr'
|
|
9
|
+
gem 'windows-api'
|
|
10
|
+
gem 'ffi'
|
|
11
|
+
gem 'rb-readline'
|
|
12
|
+
gem 'pry'
|
|
13
|
+
gem 'pry-stack_explorer'
|
|
14
|
+
gem 'pry-byebug'
|
|
15
|
+
gem 'github_changelog_generator'
|
data/{CHANGELOG.md → HISTORY.md}
RENAMED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
# 0.1.10 / 12-03-2015
|
|
2
|
-
|
|
3
|
-
I really need to add some tests to this project. ;)
|
|
4
|
-
|
|
5
|
-
* [PR #21](https://github.com/test-kitchen/kitchen-hyperv/pull/21) : Wrong module name
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# 0.1.9 / 12-03-2015
|
|
9
|
-
|
|
10
|
-
Missed a merge conflict.
|
|
11
|
-
|
|
12
|
-
# 0.1.8 / 12-03-2015
|
|
13
|
-
|
|
14
|
-
* [PR #15](https://github.com/test-kitchen/kitchen-hyperv/pull/15) : Dynamic Memory support
|
|
15
|
-
* [PR #17](https://github.com/test-kitchen/kitchen-hyperv/pull/17) : File copy support
|
|
16
|
-
* [PR #19](https://github.com/test-kitchen/kitchen-hyperv/pull/19) : Explict import of hyper-v module and delay in getting ip (wait for DHCP)
|
|
17
|
-
* [PR #20](https://github.com/test-kitchen/kitchen-hyperv/pull/20) : Doc the required WinRM Settings
|
|
18
|
-
|
|
19
|
-
# 0.1.7 / 07-14-2015
|
|
20
|
-
|
|
21
|
-
* [PR #8](https://github.com/test-kitchen/kitchen-hyperv/pull/8) : Add support for 64 bit ruby
|
|
1
|
+
# 0.1.10 / 12-03-2015
|
|
2
|
+
|
|
3
|
+
I really need to add some tests to this project. ;)
|
|
4
|
+
|
|
5
|
+
* [PR #21](https://github.com/test-kitchen/kitchen-hyperv/pull/21) : Wrong module name
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# 0.1.9 / 12-03-2015
|
|
9
|
+
|
|
10
|
+
Missed a merge conflict.
|
|
11
|
+
|
|
12
|
+
# 0.1.8 / 12-03-2015
|
|
13
|
+
|
|
14
|
+
* [PR #15](https://github.com/test-kitchen/kitchen-hyperv/pull/15) : Dynamic Memory support
|
|
15
|
+
* [PR #17](https://github.com/test-kitchen/kitchen-hyperv/pull/17) : File copy support
|
|
16
|
+
* [PR #19](https://github.com/test-kitchen/kitchen-hyperv/pull/19) : Explict import of hyper-v module and delay in getting ip (wait for DHCP)
|
|
17
|
+
* [PR #20](https://github.com/test-kitchen/kitchen-hyperv/pull/20) : Doc the required WinRM Settings
|
|
18
|
+
|
|
19
|
+
# 0.1.7 / 07-14-2015
|
|
20
|
+
|
|
21
|
+
* [PR #8](https://github.com/test-kitchen/kitchen-hyperv/pull/8) : Add support for 64 bit ruby
|
data/LICENSE.txt
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
Copyright (c) 2015 Steven Murawski
|
|
2
|
-
|
|
3
|
-
MIT License
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
-
a copy of this software and associated documentation files (the
|
|
7
|
-
"Software"), to deal in the Software without restriction, including
|
|
8
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
-
the following conditions:
|
|
12
|
-
|
|
13
|
-
The above copyright notice and this permission notice shall be
|
|
14
|
-
included in all copies or substantial portions of the Software.
|
|
15
|
-
|
|
16
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
1
|
+
Copyright (c) 2015 Steven Murawski
|
|
2
|
+
|
|
3
|
+
MIT License
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
+
a copy of this software and associated documentation files (the
|
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be
|
|
14
|
+
included in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
CHANGED
|
@@ -49,6 +49,8 @@ driver:
|
|
|
49
49
|
* The virtual switch to attach the guest VMs. Defaults to the first switch returned from Get-VMSwitch.
|
|
50
50
|
* iso_path
|
|
51
51
|
* Path on the host to the ISO to mount on the VMs.
|
|
52
|
+
* boot_iso_path
|
|
53
|
+
* Path on the host to the ISO to mount before starting the VMs.
|
|
52
54
|
* vm_generation
|
|
53
55
|
* The generation for the hyper-v VM. Defaults to 1.
|
|
54
56
|
* disk_type
|
data/Rakefile
CHANGED
|
@@ -1,52 +1,69 @@
|
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
|
2
|
-
|
|
3
|
-
require "bundler/gem_tasks"
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
t.
|
|
9
|
-
t.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
require "
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
task.options << "--
|
|
28
|
-
task.options <<
|
|
29
|
-
task.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
require "bundler/gem_tasks"
|
|
4
|
+
require "kitchen/driver/hyperv_version"
|
|
5
|
+
|
|
6
|
+
require "rake/testtask"
|
|
7
|
+
Rake::TestTask.new(:unit) do |t|
|
|
8
|
+
t.libs.push "lib"
|
|
9
|
+
t.test_files = FileList["spec/**/*_spec.rb"]
|
|
10
|
+
t.verbose = true
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
desc "Run all test suites"
|
|
14
|
+
task :test => [:unit]
|
|
15
|
+
|
|
16
|
+
desc "Display LOC stats"
|
|
17
|
+
task :stats do
|
|
18
|
+
puts "\n## Production Code Stats"
|
|
19
|
+
sh "countloc -r lib"
|
|
20
|
+
puts "\n## Test Code Stats"
|
|
21
|
+
sh "countloc -r spec"
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
require "finstyle"
|
|
25
|
+
require "rubocop/rake_task"
|
|
26
|
+
RuboCop::RakeTask.new(:style) do |task|
|
|
27
|
+
task.options << "--display-cop-names"
|
|
28
|
+
task.options << "--lint"
|
|
29
|
+
task.options << '--config' << '.rubocop.yml'
|
|
30
|
+
task.patterns = ['lib/**/*.rb']
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
require "cane/rake_task"
|
|
34
|
+
desc "Run cane to check quality metrics"
|
|
35
|
+
Cane::RakeTask.new do |cane|
|
|
36
|
+
cane.canefile = "./.cane"
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
desc "Run all quality tasks"
|
|
40
|
+
task :quality => [:cane, :style, :stats]
|
|
41
|
+
|
|
42
|
+
require "yard"
|
|
43
|
+
YARD::Rake::YardocTask.new
|
|
44
|
+
|
|
45
|
+
desc "Generate gem dependency graph"
|
|
46
|
+
task :viz do
|
|
47
|
+
Bundler.with_clean_env do
|
|
48
|
+
sh "bundle viz --without test development guard " \
|
|
49
|
+
"--requirements --version"
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
task :default => [:test, :quality]
|
|
54
|
+
|
|
55
|
+
begin
|
|
56
|
+
require "github_changelog_generator/task"
|
|
57
|
+
|
|
58
|
+
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
|
|
59
|
+
#config.issues = false
|
|
60
|
+
config.future_release = "v#{Kitchen::Driver::HYPERV_VERSION}"
|
|
61
|
+
config.since_tag = "v0.1.10"
|
|
62
|
+
config.token = ENV["GITHUB_TOKEN"]
|
|
63
|
+
#config.enhancement_labels = "enhancement,Enhancement,New Feature,Feature".split(",")
|
|
64
|
+
#config.bug_labels = "bug,Bug,Improvement,Upstream Bug".split(",")
|
|
65
|
+
#config.exclude_labels = "duplicate,question,invalid,wontfix,no_changelog,Exclude From Changelog,Question,Discussion".split(",")
|
|
66
|
+
end
|
|
67
|
+
rescue LoadError
|
|
68
|
+
puts "github_changelog_generator is not available. gem install github_changelog_generator to generate changelogs"
|
|
69
|
+
end
|
data/kitchen-hyperv.gemspec
CHANGED
|
@@ -1,31 +1,32 @@
|
|
|
1
|
-
# encoding: utf-8
|
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
|
|
5
|
-
require 'kitchen/driver/hyperv_version'
|
|
6
|
-
|
|
7
|
-
Gem::Specification.new do |spec|
|
|
8
|
-
spec.name = "kitchen-hyperv"
|
|
9
|
-
spec.version = Kitchen::Driver::HYPERV_VERSION
|
|
10
|
-
spec.authors = ["Steven Murawski"]
|
|
11
|
-
spec.email = ["steven.murawski@gmail.com"]
|
|
12
|
-
spec.summary = 'Hyper-V Driver for Test-Kitchen'
|
|
13
|
-
spec.description = 'Hyper-V Driver for Test-Kitchen'
|
|
14
|
-
spec.homepage = "https://github.com/test-kitchen/kitchen-hyperv"
|
|
15
|
-
spec.license = "Apache 2"
|
|
16
|
-
|
|
17
|
-
spec.files = `git ls-files -z`.split("\x0")
|
|
18
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
19
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
20
|
-
spec.require_paths = ["lib"]
|
|
21
|
-
|
|
22
|
-
spec.add_development_dependency "bundler", "~> 1.7"
|
|
23
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
|
24
|
-
spec.add_development_dependency "pry", "~> 0.10"
|
|
25
|
-
spec.add_development_dependency "cane"
|
|
26
|
-
spec.add_development_dependency "finstyle"
|
|
27
|
-
spec.add_development_dependency "rubocop"
|
|
28
|
-
spec.add_development_dependency "yard"
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
+
|
|
5
|
+
require 'kitchen/driver/hyperv_version'
|
|
6
|
+
|
|
7
|
+
Gem::Specification.new do |spec|
|
|
8
|
+
spec.name = "kitchen-hyperv"
|
|
9
|
+
spec.version = Kitchen::Driver::HYPERV_VERSION
|
|
10
|
+
spec.authors = ["Steven Murawski"]
|
|
11
|
+
spec.email = ["steven.murawski@gmail.com"]
|
|
12
|
+
spec.summary = 'Hyper-V Driver for Test-Kitchen'
|
|
13
|
+
spec.description = 'Hyper-V Driver for Test-Kitchen'
|
|
14
|
+
spec.homepage = "https://github.com/test-kitchen/kitchen-hyperv"
|
|
15
|
+
spec.license = "Apache 2"
|
|
16
|
+
|
|
17
|
+
spec.files = `git ls-files -z`.split("\x0")
|
|
18
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
19
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
20
|
+
spec.require_paths = ["lib"]
|
|
21
|
+
|
|
22
|
+
spec.add_development_dependency "bundler", "~> 1.7"
|
|
23
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
|
24
|
+
spec.add_development_dependency "pry", "~> 0.10"
|
|
25
|
+
spec.add_development_dependency "cane"
|
|
26
|
+
spec.add_development_dependency "finstyle"
|
|
27
|
+
spec.add_development_dependency "rubocop"
|
|
28
|
+
spec.add_development_dependency "yard"
|
|
29
|
+
spec.add_development_dependency "countloc"
|
|
30
|
+
|
|
31
|
+
spec.add_dependency "test-kitchen", "~> 1.4"
|
|
32
|
+
end
|
|
@@ -47,6 +47,7 @@ module Kitchen
|
|
|
47
47
|
default_config :subnet, '255.255.255.0'
|
|
48
48
|
default_config :vm_switch
|
|
49
49
|
default_config :iso_path
|
|
50
|
+
default_config :boot_iso_path
|
|
50
51
|
default_config :vm_generation, 1
|
|
51
52
|
default_config :disk_type do |driver|
|
|
52
53
|
File.extname(driver[:parent_vhd_name])
|
|
@@ -84,24 +85,47 @@ module Kitchen
|
|
|
84
85
|
run_ps mount_vm_iso
|
|
85
86
|
end
|
|
86
87
|
|
|
88
|
+
def vhd_folder?
|
|
89
|
+
config[:parent_vhd_folder] && Dir.exist?(config[:parent_vhd_folder])
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
def vhd?
|
|
93
|
+
config[:parent_vhd_name] && File.exist?(parent_vhd_path)
|
|
94
|
+
end
|
|
95
|
+
|
|
87
96
|
def validate_vm_settings
|
|
88
|
-
raise "Missing parent_vhd_folder" unless
|
|
89
|
-
raise "Missing parent_vhd_name" unless
|
|
97
|
+
raise "Missing parent_vhd_folder" unless vhd_folder?
|
|
98
|
+
raise "Missing parent_vhd_name" unless vhd?
|
|
90
99
|
if config[:dynamic_memory]
|
|
91
100
|
startup_bytes = config[:memory_startup_bytes]
|
|
92
101
|
min = config[:dynamic_memory_min_bytes]
|
|
93
102
|
max = config[:dynamic_memory_max_bytes]
|
|
94
103
|
memory_valid = startup_bytes.between?(min, max)
|
|
95
|
-
|
|
104
|
+
warning = "memory_startup_bytes (#{startup_bytes}) must" /
|
|
105
|
+
" fall within dynamic memory range (#{min}-#{max})"
|
|
106
|
+
raise warning unless memory_valid
|
|
107
|
+
end
|
|
108
|
+
config[:vm_switch] = vm_switch
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
def vm_switch
|
|
112
|
+
default_switch_object = run_ps vm_default_switch_ps
|
|
113
|
+
if default_switch_object.nil? ||
|
|
114
|
+
!default_switch_object.key?('Name') ||
|
|
115
|
+
default_switch_object['Name'].empty?
|
|
116
|
+
raise "Failed to find a default VM Switch."
|
|
96
117
|
end
|
|
97
|
-
|
|
98
|
-
config[:vm_switch] = (run_ps vm_default_switch_ps)['Name']
|
|
118
|
+
default_switch_object['Name']
|
|
99
119
|
end
|
|
100
120
|
|
|
101
121
|
def kitchen_vm_path
|
|
102
122
|
@kitchen_vm_path ||= File.join(config[:kitchen_root], ".kitchen/#{instance.name}")
|
|
103
123
|
end
|
|
104
124
|
|
|
125
|
+
def boot_iso_path
|
|
126
|
+
@boot_iso_path ||= config[:boot_iso_path]
|
|
127
|
+
end
|
|
128
|
+
|
|
105
129
|
def differencing_disk_path
|
|
106
130
|
@differencing_disk_path ||= File.join(kitchen_vm_path, "diff" + "#{config[:disk_type]}")
|
|
107
131
|
end
|
|
@@ -116,8 +140,7 @@ module Kitchen
|
|
|
116
140
|
existing_vm = run_ps ensure_vm_running_ps
|
|
117
141
|
return false if existing_vm.nil? || existing_vm['Id'].nil?
|
|
118
142
|
info("Found an exising VM with an ID: #{existing_vm['Id']}")
|
|
119
|
-
|
|
120
|
-
#fail('Failed to start existing VM.')
|
|
143
|
+
true
|
|
121
144
|
end
|
|
122
145
|
|
|
123
146
|
def remove_differencing_disk
|
|
@@ -146,9 +169,8 @@ module Kitchen
|
|
|
146
169
|
@state[:id] = new_vm_object['Id']
|
|
147
170
|
info("Created virtual machine for #{instance.name}.")
|
|
148
171
|
end
|
|
149
|
-
|
|
172
|
+
|
|
150
173
|
def copy_vm_files
|
|
151
|
-
|
|
152
174
|
return if config[:copy_vm_files].nil?
|
|
153
175
|
info("Copying files to virtual machine")
|
|
154
176
|
config[:copy_vm_files].each do |file_info|
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Author:: Steven Murawski <smurawski@chef.io>
|
|
3
|
-
# Copyright:: Copyright (c) 2015 Chef Software, Inc.
|
|
4
|
-
# License:: Apache License, Version 2.0
|
|
5
|
-
#
|
|
6
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
# you may not use this file except in compliance with the License.
|
|
8
|
-
# You may obtain a copy of the License at
|
|
9
|
-
#
|
|
10
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
#
|
|
12
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
# See the License for the specific language governing permissions and
|
|
16
|
-
# limitations under the License.
|
|
17
|
-
|
|
18
|
-
module Kitchen
|
|
19
|
-
module Driver
|
|
20
|
-
|
|
21
|
-
end
|
|
22
|
-
end
|
|
1
|
+
#
|
|
2
|
+
# Author:: Steven Murawski <smurawski@chef.io>
|
|
3
|
+
# Copyright:: Copyright (c) 2015 Chef Software, Inc.
|
|
4
|
+
# License:: Apache License, Version 2.0
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
|
|
18
|
+
module Kitchen
|
|
19
|
+
module Driver
|
|
20
|
+
HYPERV_VERSION = '0.2.0'
|
|
21
|
+
end
|
|
22
|
+
end
|