dry-stack 0.0.50 → 0.0.52

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: 5cc929029911fa4edc7a3ec23a68a6b10c802d6a235685a561f38e6647399a22
4
- data.tar.gz: e44f26a375005eb7c7e934f3be84b61c74bf48b30ecccca003404afca135e356
3
+ metadata.gz: 493b5d976e224229b614daca28afc8012e1df08ca0dd23eb4673376c0701463d
4
+ data.tar.gz: 251a523ee21feca8a22120f4787dbee5a9fbb4a06247703522105b700ec42c2c
5
5
  SHA512:
6
- metadata.gz: eb10f6c18d5e7e900960e4c20433977f4b2d7ad0918a8a6fe2ed4dd8e9af60872f0374538d9d586b0e7f5fe9ee95e87a9e3b53e3696ed2a8bae3dfdc600ad2c7
7
- data.tar.gz: dd6a5c1e6d0fbfca3ac4801b85ec6dc42b7a572dba16bc1c488d5bf428ddd92a1a3698ea413d1cafdf84a282e533a3899fc547b08be9be6085ec5ad2e651ef96
6
+ metadata.gz: 0c01c320d622aec3ffd30503d3ef264a3c5aab4df66768de54abed07c9c9d3c215985240b77ac54881e03468d2cb0b22da1a91dfb942f63228d664fc4d177b06
7
+ data.tar.gz: ba3ea4f235890f90ec55fd43a7aaa13c37d47b42db475618c794696bd05d6e8065b183d6930bcf96b357056993a86a01496b655022c9bf5a213d036e33c03a88
@@ -1,14 +1,17 @@
1
1
  require_relative '../version'
2
2
  require 'open3'
3
3
 
4
- def exec_i(cmd, input_string)
5
- puts "exec_i(inputs.size #{input_string.size}): #{cmd}"
6
- Open3.popen3(cmd) do |i, o, e, t|
7
- i.puts input_string
8
- i.close
9
- while line = o.gets; puts "o: " + line end
10
- while line = e.gets; puts "o: " + line end
11
- end
4
+ def exec_i(cmd, input_string = nil)
5
+ puts "exec_i(inputs.size #{input_string.size}): #{cmd}"
6
+ Open3.popen3(cmd) do |i, o, e, wait_thr|
7
+ i.puts input_string unless input_string.nil?
8
+ i.close
9
+ while line = o.gets; puts "o: " + line end
10
+ while line = e.gets; puts "o: " + line end
11
+ return_value = wait_thr.value
12
+ puts "Error level was: #{return_value.exitstatus}" unless return_value.success?
13
+ exit return_value.exitstatus unless return_value.success?
14
+ end
12
15
  end
13
16
 
14
17
  module Dry
@@ -14,7 +14,7 @@ Dry::CommandLine::COMMANDS[:swarm_deploy] = Class.new do
14
14
  exec_i "docker stack deploy -c - #{stack.name} --prune --resolve-image changed", yaml
15
15
  system "docker config rm $(docker config ls --filter label=com.docker.stack.namespace=#{stack.name} --format \"{{.ID}}\")"
16
16
 
17
- system "docker config rm #{stack.name}_readme"
17
+ exec_i "docker config rm #{stack.name}_readme"
18
18
  puts "stack description: #{stack.description}"
19
19
  exec_i "docker config create #{stack.name}_readme -", stack.description
20
20
  end
@@ -64,6 +64,7 @@ module Dry
64
64
  @deploy = {}
65
65
  @labels = {}
66
66
  @configs = {}
67
+ @logging = {}
67
68
  end
68
69
 
69
70
  def stringify(obj)
@@ -183,6 +184,7 @@ module Dry
183
184
  service[:ports] = (service[:ports] || []) + pp_s unless pp_s.nil?
184
185
 
185
186
  service[:environment].transform_values! { !!_1 == _1 ? _1.to_s : _1 } # (false|true) to string
187
+ service[:logging] ||= @logging[name.to_sym]
186
188
  end
187
189
 
188
190
  compose[:configs].update(compose[:configs]) do |name, config|
@@ -254,6 +256,12 @@ module Dry
254
256
  yield if block_given?
255
257
  end
256
258
 
259
+ def Logging(names, opts = {})
260
+ [names].flatten.each do |name|
261
+ @logging[name.to_sym] = opts
262
+ end
263
+ end
264
+
257
265
  def Volume(name, opts = {})
258
266
  @volumes[name] ||= {}
259
267
  @volumes[name].merge! opts
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Dry
2
2
  class Stack
3
- VERSION = '0.0.50'
3
+ VERSION = '0.0.52'
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.50
4
+ version: 0.0.52
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artyom B
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-18 00:00:00.000000000 Z
11
+ date: 2023-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake