dapp 0.27.4 → 0.27.5

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: f1f27a244e9ea4322280e79e2ea6b0e7c2d02675
4
- data.tar.gz: 9c8f56e544461a4017f133f07f5496350ce057ca
3
+ metadata.gz: d1e643078bf570017b9c6e9094ad4931c7abfd65
4
+ data.tar.gz: e2c385bc8931033054991efd1d6bdd4ec007f954
5
5
  SHA512:
6
- metadata.gz: cd19f60baa8cf98dd7164d28f8bdde8fa9e06fb10d45f2f8a665227c97c288c873663c570f54a7bdbea0036d32ef6650b5d8d8f8dfdf6933186cfe6ce371045c
7
- data.tar.gz: 3fb47dd74d293ef7122a2222c3785e8fdd4b0c7687e035cdabcfb2d82fad76c6916c34f70c66cae50df5cbea99981f485387313e1336339b043e2658ce8e927a
6
+ metadata.gz: fb802f2a3a31e22d6fb7b040d375212b2db356a208c53b15b3e1460ff9cdf6f3dff0bd696ee6bda69891924d4c95e92cc1867656bd3f121aa4589164b657ec05
7
+ data.tar.gz: 77622c1f4c45722a7026aced780593b7cf1d97a18d239f011e69dc974c6017a4fc22c5d8740cec0f6303d4623f94fb1a6f28416310aa981a4b1404206bb3814e
@@ -48,6 +48,7 @@ en:
48
48
  export: '[EXPORT]'
49
49
  pull: '[PULL]'
50
50
  tag: '[TAG]'
51
+ exist: '[EXIST]'
51
52
  warning:
52
53
  wrong_using_base_directive: "WARNING: Directive `%{directive}` has declared after dimg_group|dimg|artifact!"
53
54
  wrong_using_directive: "WARNING: Directive `%{directive}` has declared after dimg_group|dimg!"
@@ -14,7 +14,7 @@ module Dapp
14
14
  { ':minikube' => "localhost:5000/#{name}" }
15
15
  end
16
16
 
17
- def dimg_registry(repo)
17
+ def dimg_registry(repo = option_repo)
18
18
  validate_repo_name!(repo)
19
19
  ::Dapp::Dimg::DockerRegistry.new(repo)
20
20
  end
@@ -81,6 +81,12 @@ module Dapp
81
81
  dapp.log_step_with_indent(tag_scheme_name) do
82
82
  tags.each do |tag|
83
83
  image_name = format(export_format, repo: repo, dimg_name: name, tag: tag)
84
+
85
+ if push && tag_should_not_be_pushed?(tag.to_s)
86
+ dapp.log_state(image_name, state: dapp.t(code: 'state.exist'))
87
+ next
88
+ end
89
+
84
90
  export_base!(image_name, push: push) do
85
91
  export_image = build_export_image!(image_name, scheme_name: tag_scheme_name)
86
92
  if push
@@ -95,7 +101,28 @@ module Dapp
95
101
  end
96
102
  end
97
103
 
98
- def build_export_image!(image_name, scheme_name:)
104
+ def tag_should_not_be_pushed?(tag)
105
+ registry_tags.include?(tag) && begin
106
+ registry_tag_parent = registry.image_history(tag, name)['container_config']['Image']
107
+ registry_tag_parent == last_stage.image.built_id
108
+ end
109
+ end
110
+
111
+ def registry_tags
112
+ @registry_tags ||= begin
113
+ if name.nil?
114
+ registry.nameless_dimg_tags
115
+ else
116
+ registry.dimg_tags(name)
117
+ end
118
+ end
119
+ end
120
+
121
+ def registry
122
+ @registry ||= dapp.dimg_registry
123
+ end
124
+
125
+ def build_export_image!(image_name, scheme_name:)
99
126
  Image::Dimg.image_by_name(name: image_name, from: last_stage.image, dapp: dapp).tap do |export_image|
100
127
  export_image.add_service_change_label(:'dapp-tag-scheme' => scheme_name)
101
128
  export_image.add_service_change_label(:'dapp-dimg' => true)
@@ -1,4 +1,4 @@
1
1
  module Dapp
2
- VERSION = "0.27.4"
2
+ VERSION = "0.27.5"
3
3
  BUILD_CACHE_VERSION = 28
4
4
  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.27.4
4
+ version: 0.27.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Stolyarov
@@ -741,7 +741,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
741
741
  version: 2.5.0
742
742
  requirements: []
743
743
  rubyforge_project:
744
- rubygems_version: 2.5.1
744
+ rubygems_version: 2.6.11
745
745
  signing_key:
746
746
  specification_version: 4
747
747
  summary: Build docker packaged apps using chef or shell