dry-stack 0.1.59 → 0.1.61
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/stack.rb +13 -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: 13d258d8a3129c307c9e1bfcbfeff364dc5ec7037eb54afc38da52669f466210
|
|
4
|
+
data.tar.gz: 87fb4af30fb0f287506cbb9bdec6a3442adf591ed4595bce284f0dcae3f2d90d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 694dc1bbfa3163947e16f21ec66b0feec728408157bd9140aa765458225057802b0d5f46bc9df1cd1599fc010793f8f319158b35abe1aed928e29ec0e9e04a72
|
|
7
|
+
data.tar.gz: 3bb5cf567fdc78000843d3283c89d2aacae2cafa5b14bbac7a3a1a8bb18c28a73d2bc85a27ecbb960673b0713e4eef3f555cf9154869521255df4bc4d8aa9c8e
|
data/lib/dry-stack/stack.rb
CHANGED
|
@@ -97,6 +97,7 @@ module Dry
|
|
|
97
97
|
|
|
98
98
|
class Stack
|
|
99
99
|
COMPOSE_VERSION = '3.8'
|
|
100
|
+
DEPLOY_SOURCE_LABEL = 'dry-stack.deploy.source'
|
|
100
101
|
class << self
|
|
101
102
|
attr_accessor :last_stack
|
|
102
103
|
end
|
|
@@ -144,6 +145,8 @@ module Dry
|
|
|
144
145
|
|
|
145
146
|
def to_compose(opts = @options)
|
|
146
147
|
@name = @options[:name] || @name
|
|
148
|
+
deploy_source = opts[:deploy_source].to_s.strip
|
|
149
|
+
deploy_source = ENV['CI_PROJECT_URL'].to_s.strip if deploy_source.empty?
|
|
147
150
|
|
|
148
151
|
compose = {
|
|
149
152
|
# name: @name.to_s, # https://docs.docker.com/compose/compose-file/#name-top-level-element
|
|
@@ -168,6 +171,12 @@ module Dry
|
|
|
168
171
|
service[:deploy] ||= {}
|
|
169
172
|
service[:deploy][:labels] ||= []
|
|
170
173
|
service[:deploy][:labels] += @labels.map { "#{_1}=#{_2}" }
|
|
174
|
+
deploy_source_label_present = service[:deploy][:labels].any? do |label|
|
|
175
|
+
label.to_s.partition('=').first == DEPLOY_SOURCE_LABEL
|
|
176
|
+
end
|
|
177
|
+
unless deploy_source.empty? || deploy_source_label_present
|
|
178
|
+
service[:deploy][:labels] << "#{DEPLOY_SOURCE_LABEL}=#{deploy_source}"
|
|
179
|
+
end
|
|
171
180
|
|
|
172
181
|
if ingress[0] && (opts[:ingress] || opts[:traefik] || opts[:traefik_tls])
|
|
173
182
|
service[:networks] ||= {}
|
|
@@ -313,8 +322,10 @@ module Dry
|
|
|
313
322
|
if pp_h&.any?
|
|
314
323
|
service[:ports] = service[:ports].map { |s|
|
|
315
324
|
if s.class == String
|
|
316
|
-
|
|
317
|
-
|
|
325
|
+
# Preserve /udp when mixing shorthand ports with hashes; to_i discards the suffix.
|
|
326
|
+
mapping, protocol = s.split('/', 2)
|
|
327
|
+
published, target = mapping.split(':').map(&:to_i)
|
|
328
|
+
{ published:, target:, protocol: protocol || 'tcp', mode: 'ingress'}
|
|
318
329
|
else
|
|
319
330
|
s
|
|
320
331
|
end
|
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.61
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Artyom B
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-10-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rake
|