dapp 0.10.1 → 0.10.2

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: 61669969d0c0069587fe8b3b438573e777d40450
4
- data.tar.gz: d26f59272e00d9264e7f28b1ead547e7e28e3b30
3
+ metadata.gz: c1c1c851ed5f27bd25dd4b3cf8bc1b27431fe81c
4
+ data.tar.gz: 32d35c1a530a102622ad85129d74d790a5711e4b
5
5
  SHA512:
6
- metadata.gz: 90324bbf0cf86dc6f3d8fa40db48f43e60184204ac612acec5e435fefad10e64e5d52f49623218f2ca1e5a27c3556a00ba7fef51e929e338e53fde1405d023a8
7
- data.tar.gz: fefdf1c404d802696005ee1246cdaf69dc7a9593c0e5d0ea0cda7eea391c658dd2c0ba01e197f92d3941485d471d0989e44dd024b26b4aabffaf54b7bb8b24d4
6
+ metadata.gz: 1ed7f72ee220ac672365bd00b5a1bc2b62ea10132816439b627c5df61a1297f66b7e008410bcf5f23257ee5e6e845a9c54f0361c79607c5c99faea352ba0c523
7
+ data.tar.gz: 495cf5dc364223895564aa19c99a6590cfe58a44f0a6c492c04aabd35c8111601cc49ac8a7ef8a20f27c96d519227706f57e4796dd701c9d33d40761ae4b5fee
@@ -17,6 +17,7 @@ en:
17
17
  built_id_not_defined: '`from.built_id` not defined!'
18
18
  from_image_not_found: 'Image `%{name}` not found!'
19
19
  unsupported_patch_format: "Unsupported patch format:\n\n%{patch}"
20
+ unsupported_docker_image_size_format: "Unsupported docker image size format `%{value}`"
20
21
  command:
21
22
  command_unexpected_dimgs_number: "Command can process only one dimg!\nAmbiguous dimg pattern: `%{dimgs_names}`!"
22
23
  mrproper_required_option: "Expected command option `--improper-dev-mode-cache`, `--improper-cache-version-stages` or `--all`!"
@@ -8,6 +8,10 @@ module Dapp
8
8
  super
9
9
  end
10
10
 
11
+ def empty?
12
+ dimg.git_artifacts.empty? || dependencies_empty?
13
+ end
14
+
11
15
  def dependencies
12
16
  dimg.stage_by_name(:build_artifact).context
13
17
  end
@@ -105,18 +105,24 @@ module Dapp
105
105
  .stdout
106
106
  .lines
107
107
  .each do |l|
108
- name, id, created_at, size_field = l.split(';')
108
+ name, id, created_at, size_field = l.split(';').map(&:strip)
109
109
  name = name.reverse.chomp('docker.io/'.reverse).reverse
110
110
  size = begin
111
- number, unit = size_field.split
112
- coef = case unit.to_s.downcase
113
- when 'b' then return number.to_f
111
+ match = size_field.match(/^(\d+(\.\d+)?)\ ?(b|kb|mb|gb|tb)$/i)
112
+ raise Error::Build, code: :unsupported_docker_image_size_format, data: {value: size_field} unless match and match[1] and match[3]
113
+
114
+ number = match[1].to_f
115
+ unit = match[3].downcase
116
+
117
+ coef = case unit
118
+ when 'b' then 0
114
119
  when 'kb' then 1
115
120
  when 'mb' then 2
116
121
  when 'gb' then 3
117
122
  when 'tb' then 4
118
123
  end
119
- number.to_f * (1000**coef)
124
+
125
+ number * (1000**coef)
120
126
  end
121
127
  cache[name] = { id: id, created_at: created_at, size: size }
122
128
  end
@@ -1,4 +1,4 @@
1
1
  module Dapp
2
- VERSION = '0.10.1'.freeze
2
+ VERSION = '0.10.2'.freeze
3
3
  BUILD_CACHE_VERSION = 7
4
4
  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.10.1
4
+ version: 0.10.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Stolyarov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-04 00:00:00.000000000 Z
11
+ date: 2017-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mixlib-shellout