dry-stack 0.1.26 → 0.1.28
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 +4 -4
- data/lib/dry-stack/command_swarm_deploy.rb +4 -4
- data/lib/dry-stack/stack.rb +14 -2
- data/lib/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3d0987eabb73bc09cec5a5199ea82cf507a1b6209b871ba3f9e8b8b4bf8f8e54
|
4
|
+
data.tar.gz: '0219fffa6fb22d82bb0a11f06ea9f30e3e0484705a783746325edbd0badbf03f'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c819b5ab4611cb68d98787e8f44c359e33a2bed99498c6e23b75d817f21743840a9e0167dac169f712a8a7c834ebd39dcca0a2312476a0a036d52326161b3e8c
|
7
|
+
data.tar.gz: eb4baeb1c7abe692ea1adc5130ddb7a6cd21801098c1b199cb112abd7de4300cf4644e7a6a06e48ff45bd13a2a06fc55cdd97b189c67fe530548915eff191be1
|
@@ -35,14 +35,14 @@ Dry::CommandLine::COMMANDS[:swarm_deploy] = Class.new do
|
|
35
35
|
# system " echo \"#{yaml.gsub("`", '\\\`')}\" | docker stack deploy -c - #{stack.name} --prune --resolve-image changed"
|
36
36
|
|
37
37
|
# --prune --resolve-image changed
|
38
|
-
exec_i "docker stack deploy -c - --with-registry-auth #{extra} #{stack.name}", yaml
|
38
|
+
exec_i "docker --context #{name} stack deploy -c - --with-registry-auth #{extra} #{stack.name}", yaml
|
39
39
|
# Hide messages like:
|
40
40
|
# Error response from daemon: rpc error: code = InvalidArgument desc = config 'grafana_dashboards_yaml-206a34dc77dc394d78a207c7abde327d' is in use by the following service: grafana_grafana
|
41
|
-
system "docker config rm $(docker config ls --filter label=com.docker.stack.namespace=#{stack.name} --format \"{{.ID}}\") 2>&1 | grep -v \"is in use\""
|
41
|
+
system "docker --context #{name} config rm $(docker config ls --filter label=com.docker.stack.namespace=#{stack.name} --format \"{{.ID}}\") 2>&1 | grep -v \"is in use\""
|
42
42
|
|
43
|
-
exec_i "docker config rm #{stack.name}_readme || echo 'failed to remove config #{stack.name}_readme'"
|
43
|
+
exec_i "docker --context #{name} config rm #{stack.name}_readme || echo 'failed to remove config #{stack.name}_readme'"
|
44
44
|
puts "stack description: #{stack.description}"
|
45
|
-
exec_i "docker config create #{stack.name}_readme -", stack.description
|
45
|
+
exec_i "docker --context #{name} config create #{stack.name}_readme -", stack.description
|
46
46
|
end
|
47
47
|
|
48
48
|
def help = ['Call docker stack deploy & add config readme w/ description',
|
data/lib/dry-stack/stack.rb
CHANGED
@@ -270,11 +270,23 @@ module Dry
|
|
270
270
|
service[:deploy][:labels] = service[:deploy][:labels].map{ env_sub[_1] }
|
271
271
|
service[:environment].transform_values!{ _1.is_a?(String) ? (env_sub[_1]) : _1 }
|
272
272
|
|
273
|
-
|
273
|
+
pp_h = @publish_ports[name]&.select { _1.class == Hash }
|
274
|
+
pp_i = @publish_ports[name]&.select { _1.class == Integer }
|
274
275
|
pp_s = @publish_ports[name]&.select { _1.class == String }
|
275
276
|
service[:ports] = pp_i&.zip(service[:ports] || pp_i)&.map { _1.join ':' }
|
276
277
|
service[:ports] = (service[:ports] || []) + pp_s unless pp_s.nil?
|
277
278
|
|
279
|
+
if pp_h&.any?
|
280
|
+
service[:ports] = service[:ports].map { |s|
|
281
|
+
if s.class == String
|
282
|
+
published, target = s.split(':').map(&:to_i)
|
283
|
+
{ published:, target:, protocol: 'tcp', mode: 'ingress'}
|
284
|
+
else
|
285
|
+
s
|
286
|
+
end
|
287
|
+
} + pp_h
|
288
|
+
end
|
289
|
+
|
278
290
|
service[:logging] ||= @logging[name.to_sym]
|
279
291
|
|
280
292
|
service[:volumes]&.map!&.with_index do |volume, index|
|
@@ -391,7 +403,7 @@ module Dry
|
|
391
403
|
end
|
392
404
|
|
393
405
|
def PublishPorts(ports)
|
394
|
-
@publish_ports.merge! ports.to_h { |k, v| [k
|
406
|
+
@publish_ports.merge! ports.to_h { |k, v| [k,@publish_ports[k].to_a + [v].flatten] }
|
395
407
|
end
|
396
408
|
|
397
409
|
def Service(name, opts = {}, &block)
|
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dry-stack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.28
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Artyom B
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-02-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|