dry-stack 0.0.27 → 0.0.29

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
  SHA256:
3
- metadata.gz: 67c733825cb94fe80cc994312906c3a91ad42ba03efcab588babad3cd4c8a120
4
- data.tar.gz: ebbc4557be4a83de95ed2363c2261a853c2273e3ce7083ddb853f5d442104654
3
+ metadata.gz: ec6a26f6bec5b6052d6d1d3ba5d8da6364bd57be09e36c50df7619b30ffb3580
4
+ data.tar.gz: 5414baf2c1dbff34e6db0dfd68fb314569dc41e7a05c9ee0a356c4e06ad2f814
5
5
  SHA512:
6
- metadata.gz: 9039620c77b429b1fa109602f2feffcb72ed301bafce404eabb675d0eae9ee07e1097888399e3a5f970bdc8d4d3a27cce3aa740c9ca856ecd6b3f1caf09c7213
7
- data.tar.gz: 87197bdc39450dc5527e22714705ce69fd41651959d3651f0752d63ca9460d0f83c1215278a8b0a0a3d186f33f7bb0f3f96854985826829f962f5e3706ee03cf
6
+ metadata.gz: 2c981de0665c1744c01a79c1c9b30e6df2278de89d22be0f796b3e00c48862d50dad34259bbb7e11faf8547ae567d78a89017bb5cbc803adcbdc68c9830a243f
7
+ data.tar.gz: 1b20dfae0ec340458c2bc53c5b3f4f694271cc2faf23d95c25bf91296d9af39a3374cb7a86d0242687f9d7984aec08ff87927819d5acee758de3cc835c2d552b
@@ -52,7 +52,9 @@ module Dry
52
52
  command = args.shift || ''
53
53
  raise "Unknown command: #{command}" unless COMMANDS.key?(command.to_sym)
54
54
 
55
- stack_text = $stdin.tty? ? File.read(params[:stack]) : STDIN.read
55
+ stack_text = File.read(params[:stack]) if params[:stack]
56
+ stack_text ||= STDIN.read unless $stdin.tty?
57
+
56
58
  Dry::Stack() { eval stack_text }
57
59
  Stack.last_stack.name = params[:name] if params[:name]
58
60
  COMMANDS[command.to_sym].run Stack.last_stack, params
@@ -11,6 +11,7 @@ Dry::CommandLine::COMMANDS[:swarm_deploy] = Class.new do
11
11
  system " echo \"#{yaml.gsub("`", '\\\`')}\"" if _params[:v]
12
12
  system " echo \"#{yaml.gsub("`", '\\\`')}\" | docker stack deploy -c - #{stack.name} --prune --resolve-image changed"
13
13
  system " docker config rm #{stack.name}_readme"
14
+ puts " printf \"#{stack.description}\" | docker config create #{stack.name}_readme -"
14
15
  system " printf \"#{stack.description}\" | docker config create #{stack.name}_readme -"
15
16
  end
16
17
 
@@ -39,6 +39,7 @@ module Dry
39
39
  @publish_ports = {}
40
40
  @ingress = {}
41
41
  @deploy = {}
42
+ @labels = {}
42
43
  end
43
44
 
44
45
  def stringify(hash) = hash.to_h { |k, v| [k.to_s, v.is_a?(Hash) ? stringify(v) : v] }
@@ -82,6 +83,7 @@ module Dry
82
83
  @ingress[name][:port] ||= service[:ports]&.first if @ingress[name]
83
84
  service[:deploy] ||= {}
84
85
  service[:deploy][:labels] ||= []
86
+ service[:deploy][:labels] += @labels.map { "#{_1}=#{_2}" }
85
87
 
86
88
  if @ingress[name] && (opts[:ingress] || opts[:traefik] || opts[:traefik_tls])
87
89
  service[:networks] ||= []
@@ -160,6 +162,10 @@ module Dry
160
162
  @options.merge! opts
161
163
  end
162
164
 
165
+ def Labels(labels)
166
+ @labels.merge! labels
167
+ end
168
+
163
169
  def Ingress(services)
164
170
  @ingress.merge! services
165
171
  end
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Dry
2
2
  class Stack
3
- VERSION = '0.0.27'
3
+ VERSION = '0.0.29'
4
4
  end
5
5
  end
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.0.27
4
+ version: 0.0.29
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artyom B
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-21 00:00:00.000000000 Z
11
+ date: 2022-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake