dapp 0.6.11 → 0.6.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bfc6a68fd3d125233e595953664e147e4a209091
4
- data.tar.gz: 369287b73a66da2d400db0ce1db3602e1d395f55
3
+ metadata.gz: c3dd77689ebc3d0f069edff07100a1ec9d135977
4
+ data.tar.gz: 09d0a2dd7f5f64acb00a2b1c58d3e48da0c9ce59
5
5
  SHA512:
6
- metadata.gz: 01ae25ee3031a89f7dff9990307286acb747f08f469eba7524c5ec558b3fe06a5dd96ed0d9b628a14217dba0a00634b533ea18bac56d00141a847912b1997af3
7
- data.tar.gz: bb3d48378904ff32abecd2efbbefe05c1e3143ee2bcc49698d398b313e59489e01a46fafa7166b1c25bcaa1e930dc515785ebcbe79ea153f804ac7e1f27721a0
6
+ metadata.gz: ae25b2ffc259b33c7ce576e8ad88e3f1312fa3c5031b238c60088afe80f90db7d294c33baeb9fbed2025e86c318c3ab9e9065bc3e579993c62940e91f4bee319
7
+ data.tar.gz: d148dca01afaac2a84468d5dbe01abb6d9d14092ecd6d86701d726eca46cb91bc4beb29d29d6737bdafed930b2190241f291183675a4d0bf97fc4e7d8d4229f8
@@ -27,8 +27,11 @@ module Dapp
27
27
  with_introspection do
28
28
  project.lock("#{config._basename}.images", readonly: true) do
29
29
  last_stage.build_lock! do
30
- last_stage.build!
31
- last_stage.save_in_cache!
30
+ begin
31
+ last_stage.build!
32
+ ensure
33
+ last_stage.save_in_cache! if last_stage.image.built? || project.dev_mode?
34
+ end
32
35
  end
33
36
  end
34
37
  end
@@ -38,10 +38,12 @@ module Dapp
38
38
 
39
39
  copy_files = proc do |from_, cwd_, path_ = ''|
40
40
  cwd_ = File.expand_path(File.join('/', cwd_))
41
+ "if [[ -d #{File.join(from_, cwd_, path_)} ]]; then " \
41
42
  "#{application.project.find_path} #{File.join(from_, cwd_, path_)} #{excludes} -type f -exec " \
42
43
  "#{application.project.bash_path} -ec '#{application.project.install_path} -D #{credentials} {} " \
43
- "#{File.join(to, "$(echo {} | " \
44
- "#{application.project.sed_path} -e \"s/#{File.join(from_, cwd_).gsub('/', '\\/')}//g\")")}' \\;"
44
+ "#{File.join(to, '$(echo {} | ' \
45
+ "#{application.project.sed_path} -e \"s/#{File.join(from_, cwd_).gsub('/', '\\/')}//g\")")}' \\; ;" \
46
+ 'fi'
45
47
  end
46
48
 
47
49
  commands = []
@@ -134,7 +134,7 @@ module Dapp
134
134
  end
135
135
 
136
136
  def should_be_tagged?
137
- !(empty? || image.tagged? || should_be_not_present?)
137
+ !(empty? || image.tagged? || should_be_not_present?) && image.built?
138
138
  end
139
139
 
140
140
  def should_be_not_present?
@@ -156,7 +156,7 @@ module Dapp
156
156
  application.hashsum [
157
157
  application.paths_content_hashsum(paths),
158
158
  *paths.map { |p| p.relative_path_from(berksfile.home_path).to_s }.sort,
159
- (berksfile_lock_checksum unless application.project.cli_options[:dev]),
159
+ (berksfile_lock_checksum unless application.project.dev_mode?),
160
160
  *enabled_recipes,
161
161
  *enabled_modules
162
162
  ].compact
@@ -197,7 +197,7 @@ module Dapp
197
197
 
198
198
  application.project.log_secondary_process(application.project.t(code: process_code)) do
199
199
  before_vendor_commands = [].tap do |commands|
200
- unless application.project.cli_options[:dev] || chef_cookbooks_stage
200
+ unless application.project.dev_mode? || chef_cookbooks_stage
201
201
  commands.push(
202
202
  ['if [ ! -f Berksfile.lock ] ; then ',
203
203
  "echo \"Berksfile.lock not found\" 1>&2 ; ",
@@ -208,7 +208,7 @@ module Dapp
208
208
  end
209
209
 
210
210
  after_vendor_commands = [].tap do |commands|
211
- if application.project.cli_options[:dev]
211
+ if application.project.dev_mode?
212
212
  commands.push(
213
213
  ["#{application.project.install_path} -o #{Process.uid} -g #{Process.gid} ",
214
214
  "--mode $(#{application.project.stat_path} -c %a Berksfile.lock) ",
@@ -287,7 +287,7 @@ module Dapp
287
287
  application.project.lock(lock_name, default_timeout: 120) do
288
288
  @install_cookbooks ||= {}
289
289
  @install_cookbooks[chef_cookbooks_stage] ||= begin
290
- install_cookbooks(_cookbooks_path, chef_cookbooks_stage: chef_cookbooks_stage) unless _cookbooks_path.join('.created_at').exist? && !application.project.cli_options[:dev]
290
+ install_cookbooks(_cookbooks_path, chef_cookbooks_stage: chef_cookbooks_stage) unless _cookbooks_path.join('.created_at').exist? && !application.project.dev_mode?
291
291
  true
292
292
  end
293
293
  end
@@ -28,6 +28,10 @@ module Dapp
28
28
  project.shellout("docker rm #{container_name}")
29
29
  end
30
30
 
31
+ def built?
32
+ !@built_id.nil?
33
+ end
34
+
31
35
  def export!(name)
32
36
  image = self.class.new(name: name, project: project, built_id: built_id)
33
37
  image.tag!
@@ -86,5 +86,9 @@ module Dapp
86
86
  def stage_dapp_label_format
87
87
  '%{application_name}'
88
88
  end
89
+
90
+ def dev_mode?
91
+ !!cli_options[:dev]
92
+ end
89
93
  end # Project
90
94
  end # Dapp
@@ -1,5 +1,5 @@
1
1
  # Version
2
2
  module Dapp
3
- VERSION = '0.6.11'.freeze
3
+ VERSION = '0.6.12'.freeze
4
4
  BUILD_CACHE_VERSION = 4
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dapp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.11
4
+ version: 0.6.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Stolyarov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-08 00:00:00.000000000 Z
11
+ date: 2016-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mixlib-shellout