dapp 0.27.4 → 0.27.5

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,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