crafterm-sprinkle 0.2.1 → 0.2.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.
data/Manifest.txt CHANGED
@@ -42,18 +42,19 @@ lib/sprinkle/extensions/dsl_accessor.rb
42
42
  lib/sprinkle/extensions/string.rb
43
43
  lib/sprinkle/extensions/symbol.rb
44
44
  lib/sprinkle/installers/apt.rb
45
+ lib/sprinkle/installers/bsd_port.rb
45
46
  lib/sprinkle/installers/deb.rb
47
+ lib/sprinkle/installers/freebsd_pkg.rb
46
48
  lib/sprinkle/installers/gem.rb
47
49
  lib/sprinkle/installers/installer.rb
50
+ lib/sprinkle/installers/mac_port.rb
51
+ lib/sprinkle/installers/openbsd_pkg.rb
52
+ lib/sprinkle/installers/opensolaris_pkg.rb
53
+ lib/sprinkle/installers/push_text.rb
48
54
  lib/sprinkle/installers/rake.rb
49
55
  lib/sprinkle/installers/rpm.rb
50
56
  lib/sprinkle/installers/source.rb
51
57
  lib/sprinkle/installers/yum.rb
52
- lib/sprinkle/installers/freebsd_pkg.rb
53
- lib/sprinkle/installers/openbsd_pkg.rb
54
- lib/sprinkle/installers/opensolaris_pkg.rb
55
- lib/sprinkle/installers/bsd_port.rb
56
- lib/sprinkle/installers/mac_port.rb
57
58
  lib/sprinkle/package.rb
58
59
  lib/sprinkle/policy.rb
59
60
  lib/sprinkle/script.rb
@@ -76,15 +77,18 @@ spec/sprinkle/deployment_spec.rb
76
77
  spec/sprinkle/extensions/array_spec.rb
77
78
  spec/sprinkle/extensions/string_spec.rb
78
79
  spec/sprinkle/installers/apt_spec.rb
80
+ spec/sprinkle/installers/bsd_port_spec.rb
81
+ spec/sprinkle/installers/freebsd_pkg_spec.rb
79
82
  spec/sprinkle/installers/gem_spec.rb
80
83
  spec/sprinkle/installers/installer_spec.rb
84
+ spec/sprinkle/installers/mac_port_spec.rb
85
+ spec/sprinkle/installers/openbsd_pkg_spec.rb
86
+ spec/sprinkle/installers/opensolaris_pkg_spec.rb
87
+ spec/sprinkle/installers/push_text_spec.rb
88
+ spec/sprinkle/installers/rake_spec.rb
81
89
  spec/sprinkle/installers/rpm_spec.rb
82
- spec/sprinkle/installers/yum_spec.rb
83
90
  spec/sprinkle/installers/source_spec.rb
84
- spec/sprinkle/installers/openbsd_pkg_spec.rb
85
- spec/sprinkle/installers/freebsd_pkg_spec.rb
86
- spec/sprinkle/installers/bsd_port_spec.rb
87
- spec/sprinkle/installers/mac_port_spec.rb
91
+ spec/sprinkle/installers/yum_spec.rb
88
92
  spec/sprinkle/package_spec.rb
89
93
  spec/sprinkle/policy_spec.rb
90
94
  spec/sprinkle/script_spec.rb
@@ -237,6 +237,8 @@ module Sprinkle
237
237
 
238
238
  @dependencies.each do |dep|
239
239
  package = PACKAGES[dep]
240
+ package = select_package(dep, package) if package.is_a? Array
241
+
240
242
  raise "Package definition not found for key: #{dep}" unless package
241
243
  block.call(self, package, depth) if block
242
244
  packages << package.tree(depth + 1, &block)
@@ -249,6 +251,22 @@ module Sprinkle
249
251
 
250
252
  private
251
253
 
254
+ def select_package(name, packages)
255
+ if packages.size <= 1
256
+ package = packages.first
257
+ else
258
+ package = choose do |menu|
259
+ menu.prompt = "Multiple choices exist for virtual package #{name}"
260
+ menu.choices *packages.collect(&:to_s)
261
+ end
262
+ package = Sprinkle::Package::PACKAGES[package]
263
+ end
264
+
265
+ cloud_info "Selecting #{package.to_s} for virtual package #{name}"
266
+
267
+ package
268
+ end
269
+
252
270
  def meta_package?
253
271
  @installer == nil
254
272
  end
@@ -2,7 +2,7 @@ module Sprinkle #:nodoc:
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- TINY = 1
5
+ TINY = 2
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
data/sprinkle.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = %q{sprinkle}
3
- s.version = "0.2.1"
3
+ s.version = "0.2.2"
4
4
 
5
5
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
6
6
  s.authors = ["Marcus Crafter", "Mitchell Hashimoto"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crafterm-sprinkle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcus Crafter