dry-stack 0.1.36 → 0.1.37

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
  SHA256:
3
- metadata.gz: 6af13d5d1ff4c7e69a1f83c47c8d12b1df8e1669b009ec0726ffc11a2640ffc2
4
- data.tar.gz: 85d37f24643f66313426edef769b32be3a9ccc1d8bc24cd45d27f20691448854
3
+ metadata.gz: df607775f500ba7af188b6a9fc78981f58a3cc5aa7d94dc4245afef814cb0d4b
4
+ data.tar.gz: 67184a877a5b2a695fb90936a9b127edb3ba4714ca4d9db23e7d4cda36ca6c91
5
5
  SHA512:
6
- metadata.gz: b8cfdcd39544e9757fbb4812eedb673b7d53bd4d7425ff9c331fc721bee69c9698261b36adfee04d9809974c2d46cc8184c6e0d7da306af6ae3f5ff5e127ed4a
7
- data.tar.gz: 93af7ff2f8e349f46f8d33731e68485d4043e248386d5a743ad88c71ac68051c4d627765b8043321ce60095e7b4d0d9e44913e2d5ce86e3f47a67054ce73a409
6
+ metadata.gz: e29bc1158c8add12469161e968142bdefde27482569e68ab7111ab4b668e33d4677fc48c3fb46f6d9115e5f221d37e6d0e0443fde33d4ea2e9f3e2a5c441db4d
7
+ data.tar.gz: ed9e2bf2072eee2f8a2a5894c35229b6f60b703fd878b8633e348127b91064c86f798abcacd7a88a2b928d4461f73efb05441148e7e58f3890d9d509c152655e
@@ -39,18 +39,35 @@ Dry::CommandLine::COMMANDS[:swarm_deploy] = Class.new do
39
39
  yaml = stack.to_compose(_params).lines[1..].join
40
40
  # system " echo \"#{yaml.gsub("`", '\\\`')}\" | docker stack deploy -c - #{stack.name} --prune --resolve-image changed"
41
41
 
42
- extra += ' --resolve-image=never' unless extra.include? '--resolve-image'
43
- exec_i "docker --context #{name} stack deploy -c - --with-registry-auth #{extra} #{stack.name}", yaml
44
- # Hide messages like:
45
- # Error response from daemon: rpc error: code = InvalidArgument desc = config 'grafana_dashboards_yaml-206a34dc77dc394d78a207c7abde327d' is in use by the following service: grafana_grafana
46
- conf_list = `docker config ls --filter label=com.docker.stack.namespace=#{stack.name} --format \"{{.ID}}\"`
47
- unless conf_list.strip.empty?
48
- 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\""
49
- end
42
+ begin
43
+ deploy_status = 'unknown'
44
+ extra += ' --resolve-image=never' unless extra.include? '--resolve-image'
45
+ exec_i "docker --context #{name} stack deploy -c - --with-registry-auth #{extra} #{stack.name}", yaml
46
+ # Hide messages like:
47
+ # Error response from daemon: rpc error: code = InvalidArgument desc = config 'grafana_dashboards_yaml-206a34dc77dc394d78a207c7abde327d' is in use by the following service: grafana_grafana
48
+ conf_list = `docker config ls --filter label=com.docker.stack.namespace=#{stack.name} --format \"{{.ID}}\"`
49
+ unless conf_list.strip.empty?
50
+ 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\""
51
+ end
50
52
 
51
- exec_i "docker --context #{name} config rm #{stack.name}_readme || echo 'failed to remove config #{stack.name}_readme'"
52
- puts "stack description: #{stack.description}"
53
- exec_i "docker --context #{name} config create #{stack.name}_readme -", stack.description
53
+ exec_i "docker --context #{name} config rm #{stack.name}_readme || echo 'failed to remove config #{stack.name}_readme'"
54
+ puts "stack description: #{stack.description}"
55
+ exec_i "docker --context #{name} config create #{stack.name}_readme -", stack.description
56
+ deploy_status = 'deployed'
57
+ ensure
58
+ if ENV['DEPLOY_REGISTRY']
59
+ deploy_registry = ENV['DEPLOY_REGISTRY']
60
+ puts "Sending deploy status to #{deploy_registry}"
61
+ data = {
62
+ deploy_host: endpoint,
63
+ docker_context: name,
64
+ stack_name: stack.name,
65
+ deploy_status:,
66
+ stack: YAML.load(yaml, aliases: true)
67
+ }
68
+ exec_i "curl -x POST #{deploy_registry}/api/v1/swarm_deploy -H 'Content-Type: application/json' -d @-", data.to_json
69
+ end
70
+ end
54
71
  end
55
72
 
56
73
  def help = ['Call docker stack deploy & add config readme w/ description',
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Dry
2
2
  class Stack
3
- VERSION = '0.1.36'
3
+ VERSION = '0.1.37'
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.1.36
4
+ version: 0.1.37
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-04-11 00:00:00.000000000 Z
11
+ date: 2025-05-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake