librarian-puppet-maestrodev 0.9.9.3 → 0.9.9.4

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.
@@ -103,10 +103,14 @@ module Librarian
103
103
  end
104
104
 
105
105
  class Resolver
106
- class Implementation
107
- def debug_conflict(dependency, conflict)
108
- raise Error, "Conflict between #{dependency} and #{conflict}"
106
+ # ensure we don't return nil, if manifests is nil we return a resolution that is not valid
107
+ def resolve(spec, partial_manifests = [])
108
+ manifests = implementation(spec).resolve(partial_manifests)
109
+ if manifests
110
+ enforce_consistency!(spec.dependencies, manifests)
111
+ manifests = sort(manifests)
109
112
  end
113
+ Resolution.new(spec.dependencies, manifests)
110
114
  end
111
115
  end
112
116
  end
@@ -103,7 +103,7 @@ module Librarian
103
103
  target = vendored?(name, version) ? vendored_path(name, version) : name
104
104
 
105
105
 
106
- command = "puppet module install --version #{version} --target-dir '#{path}' --modulepath '#{path}' --ignore-dependencies '#{target}'"
106
+ command = "puppet module install --version #{version} --target-dir '#{path}' --module_repository '#{source}' --modulepath '#{path}' --ignore-dependencies '#{target}'"
107
107
  output = `#{command}`
108
108
 
109
109
  # Check for bad exit code
@@ -26,16 +26,21 @@ module Librarian
26
26
  end
27
27
 
28
28
  def dependencies
29
- return {} unless modulefile?
30
-
31
- metadata = ::Puppet::ModuleTool::Metadata.new
32
-
33
- ::Puppet::ModuleTool::ModulefileReader.evaluate(metadata, modulefile)
34
-
35
- metadata.dependencies.inject({}) do |h, dependency|
36
- name = dependency.instance_variable_get(:@full_module_name)
37
- version = dependency.instance_variable_get(:@version_requirement)
38
- h.update(name => version)
29
+ return {} unless modulefile? or puppetfile?
30
+
31
+ if modulefile?
32
+ metadata = ::Puppet::ModuleTool::Metadata.new
33
+
34
+ ::Puppet::ModuleTool::ModulefileReader.evaluate(metadata, modulefile)
35
+
36
+ metadata.dependencies.map do |dependency|
37
+ name = dependency.instance_variable_get(:@full_module_name)
38
+ version = dependency.instance_variable_get(:@version_requirement)
39
+ v = Librarian::Puppet::Requirement.new(version).gem_requirement
40
+ Dependency.new(name, v, forge_source)
41
+ end
42
+ elsif puppetfile?
43
+ Librarian::Puppet::Environment.new(:project_path => path).specfile.read.dependencies
39
44
  end
40
45
  end
41
46
 
@@ -46,6 +51,14 @@ module Librarian
46
51
  def modulefile?
47
52
  File.exists?(modulefile)
48
53
  end
54
+
55
+ def puppetfile?
56
+ File.exists?(File.join(path, 'Puppetfile'))
57
+ end
58
+
59
+ def forge_source
60
+ Librarian::Puppet::Source::Forge.from_lock_options(environment, :remote=>"http://forge.puppetlabs.com")
61
+ end
49
62
  end
50
63
  end
51
64
  end
@@ -107,14 +120,7 @@ module Librarian
107
120
  end
108
121
 
109
122
  def fetch_dependencies(name, version, extra)
110
- repository.dependencies.map do |k, v|
111
- v = Requirement.new(v).gem_requirement
112
- Dependency.new(k, v, forge_source)
113
- end
114
- end
115
-
116
- def forge_source
117
- Forge.from_lock_options(environment, :remote=>"http://forge.puppetlabs.com")
123
+ repository.dependencies
118
124
  end
119
125
 
120
126
  end
@@ -1,5 +1,5 @@
1
1
  module Librarian
2
2
  module Puppet
3
- VERSION = "0.9.9.3"
3
+ VERSION = "0.9.9.4"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: librarian-puppet-maestrodev
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.9.3
4
+ version: 0.9.9.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-06-07 00:00:00.000000000 Z
12
+ date: 2013-06-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: librarian
@@ -165,7 +165,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
165
165
  version: '0'
166
166
  segments:
167
167
  - 0
168
- hash: -17747547661605876
168
+ hash: -3974085254619562597
169
169
  required_rubygems_version: !ruby/object:Gem::Requirement
170
170
  none: false
171
171
  requirements:
@@ -174,7 +174,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
174
  version: '0'
175
175
  segments:
176
176
  - 0
177
- hash: -17747547661605876
177
+ hash: -3974085254619562597
178
178
  requirements: []
179
179
  rubyforge_project:
180
180
  rubygems_version: 1.8.25