knife-vcair 0.8.0 → 0.9.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f5fb6ce00fc091f2234646d471b17580de7f7597
4
- data.tar.gz: f16f1691a223cd4ee3928a2f91b1b1c8e42e2e8c
3
+ metadata.gz: 1525a06d5e0976066743fd906e4f2e8d98135364
4
+ data.tar.gz: 9b2d01074f45eb7d7ca85cfe24106948c73bca42
5
5
  SHA512:
6
- metadata.gz: d46cd5af03fb0f55e725fb599c155d67d0a1cb678103e979ef1f01a032a9e5a60420823355792622960f302be327d67aa9906325626a826f9d44a19cea43b3b0
7
- data.tar.gz: f7a032cc18dd22499b2c6727e5957ec451ec3dbd3c72f690e292a1c198410acc11ed6eae8c367c0f2391314fb47e7067fd0db617374cc02da33f92e85cbfa82a
6
+ metadata.gz: 9a95297fb2957943dc720a4a001b8ecd514bbe7284542c97e751870b82b9864a13233c48469bae7f0648d768689cdd77bac89e67b5cd0f9b69cc68b7e9d68976
7
+ data.tar.gz: e933bea1030853ce3b436061494b228cc18c6c515f94322039a7312ba1f72c4c2975825a6d0ca64bbd79368b9d95c46807b93df9ff41b9434985c5178f915d92
@@ -1,3 +1,7 @@
1
+ ## 0.9.0
2
+ * pinned version of fog to < 2.x in anticipation of release
3
+ * added better exception handling for looking up vCloud Air templates / images
4
+
1
5
  ## 0.8.0
2
6
  * added better exception handling for looking up vCloud Air networks, including adding ability to specify the network by ID instead of name
3
7
 
@@ -19,14 +19,15 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
21
21
 
22
- s.add_dependency "fog", ">= 1.23"
23
- s.add_dependency "knife-cloud", ">= 1.0.1"
22
+ s.add_dependency "fog", "~> 1.33"
23
+ s.add_dependency "knife-cloud", ">= 1.0.1"
24
24
  s.add_dependency "knife-windows", ">= 0.8.3"
25
+ s.add_dependency "em-winrm", "~> 0.7.0"
25
26
 
26
- s.add_development_dependency 'chef', '>= 11.16.2', '< 12'
27
+ s.add_development_dependency 'chef'
27
28
  s.add_development_dependency 'rspec', '~> 2.14'
28
29
  s.add_development_dependency 'rake', '~> 10.1'
29
- s.add_development_dependency 'guard-rspec', ["~> 4.2"]
30
+ s.add_development_dependency 'guard-rspec', '~> 4.2'
30
31
  s.add_development_dependency 'activesupport'
31
32
 
32
33
  %w(rspec-core rspec-expectations rspec-mocks rspec_junit_formatter).each { |gem|
@@ -55,11 +55,27 @@ class Chef
55
55
  end
56
56
 
57
57
  def template
58
+ return @template if @template
59
+
58
60
  # TODO: find by catalog item ID and/or NAME
59
61
  # TODO: add option to search just public and/or private catalogs
60
- @template ||= org.catalogs.map do |cat|
61
- cat.catalog_items.get_by_name(config_value(:image))
62
- end.compact.first
62
+ Chef::Log.debug("Searching catalogs for image #{config_value(:image)}...")
63
+ org.catalogs.each do |catalog|
64
+ Chef::Log.debug("Searching catalog #{catalog.name}...")
65
+
66
+ images = catalog.catalog_items
67
+ @template = images.find { |image| image.name == config_value(:image) }
68
+
69
+ if @template.nil?
70
+ Chef::Log.debug("Image not found in catalog #{catalog.name} - possible images: #{images.map(&:name).join(', ')}")
71
+ else
72
+ Chef::Log.debug("Image #{@template.name} (#{template.id}) found in catalog #{catalog.name} - search complete.")
73
+ break
74
+ end
75
+ end
76
+
77
+ raise "Unable to locate image #{config_value(:image)} in any catalog" if @template.nil?
78
+ @template
63
79
  end
64
80
 
65
81
  def vapp
@@ -1,6 +1,6 @@
1
1
  module Knife
2
2
  module Vcair
3
- VERSION = "0.8.0"
3
+ VERSION = "0.9.0"
4
4
  MAJOR, MINOR, TINY = VERSION.split('.')
5
5
  end
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-vcair
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Ray
@@ -12,22 +12,22 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2015-10-02 00:00:00.000000000 Z
15
+ date: 2015-10-07 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: fog
19
19
  requirement: !ruby/object:Gem::Requirement
20
20
  requirements:
21
- - - ">="
21
+ - - "~>"
22
22
  - !ruby/object:Gem::Version
23
- version: '1.23'
23
+ version: '1.33'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - ">="
28
+ - - "~>"
29
29
  - !ruby/object:Gem::Version
30
- version: '1.23'
30
+ version: '1.33'
31
31
  - !ruby/object:Gem::Dependency
32
32
  name: knife-cloud
33
33
  requirement: !ruby/object:Gem::Requirement
@@ -56,26 +56,34 @@ dependencies:
56
56
  - - ">="
57
57
  - !ruby/object:Gem::Version
58
58
  version: 0.8.3
59
+ - !ruby/object:Gem::Dependency
60
+ name: em-winrm
61
+ requirement: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - "~>"
64
+ - !ruby/object:Gem::Version
65
+ version: 0.7.0
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: 0.7.0
59
73
  - !ruby/object:Gem::Dependency
60
74
  name: chef
61
75
  requirement: !ruby/object:Gem::Requirement
62
76
  requirements:
63
77
  - - ">="
64
78
  - !ruby/object:Gem::Version
65
- version: 11.16.2
66
- - - "<"
67
- - !ruby/object:Gem::Version
68
- version: '12'
79
+ version: '0'
69
80
  type: :development
70
81
  prerelease: false
71
82
  version_requirements: !ruby/object:Gem::Requirement
72
83
  requirements:
73
84
  - - ">="
74
85
  - !ruby/object:Gem::Version
75
- version: 11.16.2
76
- - - "<"
77
- - !ruby/object:Gem::Version
78
- version: '12'
86
+ version: '0'
79
87
  - !ruby/object:Gem::Dependency
80
88
  name: rspec
81
89
  requirement: !ruby/object:Gem::Requirement