dapp 0.3.2 → 0.3.3

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NThkZTliY2NiMmIyMjYxOTU2NzU0OWFhMDc4NjgxYTE0Y2U1MDMxZQ==
4
+ ZDIwZTRlMjc2NjRmODU1ZDQ5MmU4YmYyMTVjY2E1NWFmMWI1YmVkNA==
5
5
  data.tar.gz: !binary |-
6
- MjlmYTUwZDNjYTE1MDVlYTIxODdjODVkNjFkMWNmMTJjNWVmMDkwOQ==
6
+ NjMwODFkZWRkY2NmNjZkZDJlMjcyNWFmZjYwYjc4NDIzYzM4ZDMzYg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NTE5N2M4ZTRlZmE3OWU2ZTUzOTVlYzVjMmVlY2Q3MWE3NjEwMTEyZjU1M2Ri
10
- ZjhmNGI1YzRlMTk5YjE4YmI4MzA3Yzg3N2EyMTkyMmNkODcyNDFmOTkzMGMx
11
- ZjU2MDFiNmI1ODAxOGYxYjM4ZjEwMTI3Yjc3NDVhZDIyMGI1N2U=
9
+ MTFlYmY1MzhmZmFmN2E2ZWUzMWQyNjA1ZDljNGMzNzNjODRjMWUwMzI5MjJi
10
+ YzhiNWRiZGM0NTU0YjVhMzYwNmNmYTY0ZDUxZWRhMzViNTExMzNiZjI1MGZk
11
+ NjIzYTkzZjQ2Zjc3N2QyOGY5OGVhMDU3NmEwYTExM2YzZmE3NWY=
12
12
  data.tar.gz: !binary |-
13
- ZWUxNDM5ZWEyMTRlYWQwMjI3NzllYmE0YzZiY2JjN2U4NTFkYTgxNmQ5ZDA0
14
- MmUxOWEzYjk0MDg4Y2YxNjQ3ZjhiNTQyYmI4Yjg4ZjFkMWU4MDRmOWY1NTRm
15
- MzBiMDJkNjM4NmI3Y2RlNzBlODRiMzg1MThlYmFlMmJiYzUzNWM=
13
+ MWE1NGM5ZmQ4ODg4M2NjY2VmN2U2YTRkNjU1ZjAxYmM0OWQwMjEyNWY3ZjFm
14
+ Yzg5NjIwMGM2ZGY4NDMwYmNmZTZmODU5YjI2ZWJmMGIyMDgxYjA5MGFmMTBj
15
+ YmIxMWY2NGUwNzM3MmE5YTkwMTM3MzMyMWU1OTU5OGQwODk1MzA=
@@ -72,13 +72,13 @@ module Dapp
72
72
 
73
73
  def local_cookbook_paths_for_checksum
74
74
  @local_cookbook_paths_for_checksum ||= berksfile
75
- .local_cookbooks
76
- .values
77
- .map { |cookbook| cookbook[:path] }
78
- .product(LOCAL_COOKBOOK_CHECKSUM_PATTERNS)
79
- .map { |cb, dir| Dir[cb.join(dir)] }
80
- .flatten
81
- .map(&Pathname.method(:new))
75
+ .local_cookbooks
76
+ .values
77
+ .map { |cookbook| cookbook[:path] }
78
+ .product(LOCAL_COOKBOOK_CHECKSUM_PATTERNS)
79
+ .map { |cb, dir| Dir[cb.join(dir)] }
80
+ .flatten
81
+ .map(&Pathname.method(:new))
82
82
  end
83
83
 
84
84
  def stage_cookbooks_paths_for_checksum(stage)
@@ -202,35 +202,38 @@ module Dapp
202
202
  [['metadata.json', 'metadata.json'],
203
203
  ['attributes', 'attributes'],
204
204
  ["files/#{stage}", 'files/default'],
205
- ["templates/#{stage}", 'templates/default']].select { |from, _| cookbook_path.join(from).exist? }
205
+ ["templates/#{stage}", 'templates/default']
206
+ ].select { |from, _| cookbook_path.join(from).exist? }
206
207
  end
207
208
 
208
209
  install_paths = Dir[cookbooks_vendor_path('*')]
209
- .map(&Pathname.method(:new))
210
- .map do |cookbook_path|
211
- cookbook_name = File.basename cookbook_path
212
- is_project = (cookbook_name == project_name)
213
- is_mdapp = cookbook_name.start_with? 'mdapp-'
214
- mdapp_enabled = is_mdapp && application.config._chef._modules.include?(cookbook_name)
215
-
216
- paths = if is_project
217
- recipe_paths = application.config._chef._recipes
218
- .map { |recipe| ["recipes/#{stage}/#{recipe}.rb", "recipes/#{recipe}.rb"] }
219
- .select { |from, _| cookbook_path.join(from).exist? }
220
-
221
- (recipe_paths + common_paths[cookbook_path]) if recipe_paths.any?
222
- elsif is_mdapp && mdapp_enabled
223
- recipe_path = "recipes/#{stage}.rb"
224
- if cookbook_path.join(recipe_path).exist?
225
- [[recipe_path, recipe_path]] + common_paths[cookbook_path]
226
- end
227
- else
228
- [['.', '.']]
229
- end
230
-
231
- [cookbook_path, paths] if paths && paths.any?
232
- end
233
- .compact
210
+ .map(&Pathname.method(:new))
211
+ .map do |cookbook_path|
212
+ cookbook_name = File.basename cookbook_path
213
+ is_project = (cookbook_name == project_name)
214
+ is_mdapp = cookbook_name.start_with? 'mdapp-'
215
+ mdapp_enabled = is_mdapp && application.config._chef._modules.include?(cookbook_name)
216
+
217
+ paths = if is_project
218
+ recipe_paths = application.config._chef._recipes
219
+ .map { |recipe| ["recipes/#{stage}/#{recipe}.rb", "recipes/#{recipe}.rb"] }
220
+ .select { |from, _| cookbook_path.join(from).exist? }
221
+
222
+ (recipe_paths + common_paths[cookbook_path]) if recipe_paths.any?
223
+ elsif is_mdapp && mdapp_enabled
224
+ recipe_path = "recipes/#{stage}.rb"
225
+ if cookbook_path.join(recipe_path).exist?
226
+ [[recipe_path, recipe_path]] + common_paths[cookbook_path]
227
+ elsif cookbook_metadata.depends.include? cookbook_name
228
+ [['metadata.json', 'metadata.json']]
229
+ end
230
+ else
231
+ [['.', '.']]
232
+ end
233
+
234
+ [cookbook_path, paths] if paths && paths.any?
235
+ end
236
+ .compact
234
237
 
235
238
  stage_cookbooks_path(stage).mkpath
236
239
  install_paths.each do |cookbook_path, paths|
@@ -18,6 +18,10 @@ module Dapp
18
18
  @cookbook_metadata.version = version
19
19
  end
20
20
 
21
+ def depends(dependency)
22
+ @cookbook_metadata.depends << dependency
23
+ end
24
+
21
25
  # rubocop:disable Style/MethodMissing
22
26
  def method_missing(*_a, &_blk)
23
27
  end
@@ -34,6 +38,10 @@ module Dapp
34
38
  attr_accessor :name
35
39
  attr_accessor :version
36
40
 
41
+ def depends
42
+ @depends ||= []
43
+ end
44
+
37
45
  def initialize(path)
38
46
  @path = path
39
47
  @parser = Parser.new(self)
@@ -1,5 +1,5 @@
1
1
  # Version
2
2
  module Dapp
3
- VERSION = '0.3.2'.freeze
3
+ VERSION = '0.3.3'.freeze
4
4
  BUILD_CACHE_VERSION = 1
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dapp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Stolyarov