dry-stack 0.0.48 → 0.0.50

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: b9869544e65771b3a67dc978d70980aed68a0c5315cf0b72299c1e6b0a3c4b62
4
- data.tar.gz: 4bbfb8544667bcac8d0ef564dfd3d14f93bfb1cd789ec508580edc8239e07082
3
+ metadata.gz: 5cc929029911fa4edc7a3ec23a68a6b10c802d6a235685a561f38e6647399a22
4
+ data.tar.gz: e44f26a375005eb7c7e934f3be84b61c74bf48b30ecccca003404afca135e356
5
5
  SHA512:
6
- metadata.gz: dabb2d39c64d81c3f72a22ab857a94aed55c4404545b0aeb15815b85ab03d1c8342ae7ffd19a6abffab0305de731c9d0146fc5e256ad7043a3bdb8d07ff784bc
7
- data.tar.gz: 8eb313b41315302ed6019f9deb704c6f632ad3067cffb252e269a8b7798265f2d96587eeeaf2b1d676764e14b48db5f9d8f140e6a2ca9c4d4076162030e50d49
6
+ metadata.gz: eb10f6c18d5e7e900960e4c20433977f4b2d7ad0918a8a6fe2ed4dd8e9af60872f0374538d9d586b0e7f5fe9ee95e87a9e3b53e3696ed2a8bae3dfdc600ad2c7
7
+ data.tar.gz: dd6a5c1e6d0fbfca3ac4801b85ec6dc42b7a572dba16bc1c488d5bf428ddd92a1a3698ea413d1cafdf84a282e533a3899fc547b08be9be6085ec5ad2e651ef96
@@ -3,6 +3,7 @@ require_relative 'command_line'
3
3
  Dry::CommandLine::COMMANDS[:to_compose] = Class.new do
4
4
  def run(stack, params)
5
5
  _params = stack.options.merge params
6
+ stack.name = _params[:name] if _params[:name]
6
7
  yaml = stack.to_compose(_params).lines[1..].join
7
8
 
8
9
  # substitute ENV variables
@@ -12,6 +12,8 @@ Dry::CommandLine::COMMANDS[:swarm_deploy] = Class.new do
12
12
  # system " echo \"#{yaml.gsub("`", '\\\`')}\" | docker stack deploy -c - #{stack.name} --prune --resolve-image changed"
13
13
 
14
14
  exec_i "docker stack deploy -c - #{stack.name} --prune --resolve-image changed", yaml
15
+ system "docker config rm $(docker config ls --filter label=com.docker.stack.namespace=#{stack.name} --format \"{{.ID}}\")"
16
+
15
17
  system "docker config rm #{stack.name}_readme"
16
18
  puts "stack description: #{stack.description}"
17
19
  exec_i "docker config create #{stack.name}_readme -", stack.description
@@ -3,8 +3,24 @@ require 'yaml'
3
3
  require 'optparse'
4
4
  require 'digest'
5
5
 
6
+ # class TrueClass
7
+ # def encode_with(coder) = coder.represent_scalar('tag:yaml.org,2002:str', 'true')
8
+ # end
9
+ #
10
+ # class FalseClass
11
+ # def encode_with(coder)= coder.represent_scalar('tag:yaml.org,2002:str', 'false')
12
+ # end
13
+
6
14
  module Dry
7
15
 
16
+ def each_recursive(parent, each_ =-> { _1.respond_to?(:each) ? _1.each : [] }, path = [], &blk)
17
+ each2_ = each_.is_a?(Array) ? ->(p) { (m = each_.find { p.respond_to? _1 }) ? p.send(m) : [] } : each_
18
+ (each2_[parent] || []).each do |(k,v)|
19
+ blk.call [path + [parent], k, v, path]
20
+ each_recursive(v || k, each_, path + [parent], &blk)
21
+ end
22
+ end
23
+
8
24
  def Stack(name = nil, &)
9
25
  Stack.last_stack = Stack.new name
10
26
  Stack.last_stack.instance_exec(&) if block_given?
@@ -185,6 +201,11 @@ module Dry
185
201
  o.delete_if { _2.nil? || (_2.respond_to?(:empty?) && _2.empty?) } if o.is_a? Hash
186
202
  }
187
203
  prune[compose]
204
+
205
+ each_recursive compose do |_path, node, _v|
206
+ _path.last[node] = _v.to_s if node.to_s == 'fluentd-async'
207
+ end
208
+
188
209
  stringify(compose).to_yaml
189
210
  end
190
211
 
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Dry
2
2
  class Stack
3
- VERSION = '0.0.48'
3
+ VERSION = '0.0.50'
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.48
4
+ version: 0.0.50
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-17 00:00:00.000000000 Z
11
+ date: 2023-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake