dry-stack 0.1.44 → 0.1.46
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 +10 -1
- 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: ed1755ead8de79a905251d32118955c1637707f0914b85833f879a98542acdcf
|
4
|
+
data.tar.gz: cab5eee46ab54f4a5a170ae76d29a54f5de44142cf9cbdf6b9b4d365cc346dfa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e63a17ba9928530ddd0e4756231265eb4becaf93587eeae2bc4120a1b765a38f0922095a6a92d40aad64a2d8176674435c914f9940f61bf0855cd95b0661b825
|
7
|
+
data.tar.gz: 5e640e64d6e4bd1285b097a87b2b15956348838c13493571e5dcf8d76e91c0a1f55fee0a2ea27b45aaf25dbf3427e1137de42d9e33eccf4e1a77e416d9f38369
|
data/lib/dry-stack/stack.rb
CHANGED
@@ -84,6 +84,7 @@ module Dry
|
|
84
84
|
def user(user) = @service[:user] = user # "${UID}:${GID}", "www-data:www-data"
|
85
85
|
def network(name, opts = {}) = (@service[:networks][name] ||={}).merge! opts
|
86
86
|
def ingress(ing) = ((@service[:ingress] ||=[]) << ing).flatten!
|
87
|
+
def oauth_provider(address) = (@service[:oauth_provider] = address)
|
87
88
|
end
|
88
89
|
|
89
90
|
class ConfigurationFunction
|
@@ -218,7 +219,7 @@ module Dry
|
|
218
219
|
|
219
220
|
if opts[:traefik_tls]
|
220
221
|
domain = opts[:tls_domain] || 'example.com'
|
221
|
-
domain = ing[:host].gsub('.*', ".#{domain}") if ing[:host]&.include?('
|
222
|
+
domain = ing[:host].gsub('.*', ".#{domain}") if ing[:host]&.include?('.*')
|
222
223
|
domain = ing[:tls_domain] if ing[:tls_domain]
|
223
224
|
service[:deploy][:labels] += [
|
224
225
|
"traefik.http.routers.#{service_name}-#{index}.tls=true",
|
@@ -234,6 +235,13 @@ module Dry
|
|
234
235
|
rule << "#{ing[:rule]}" if ing[:rule]
|
235
236
|
|
236
237
|
middlewares = []
|
238
|
+
if ing[:oauth_provider] || service[:oauth_provider]
|
239
|
+
pname = "#{service_name}-#{index}_oauth_provider"
|
240
|
+
value = ing[:oauth_provider] || service[:oauth_provider]
|
241
|
+
value = "http://#{value}" unless value =~ /^http/
|
242
|
+
middlewares << pname
|
243
|
+
service[:deploy][:labels] << "traefik.http.middlewares.#{pname}.forwardauth.address=#{value}"
|
244
|
+
end
|
237
245
|
|
238
246
|
if ing[:basic_auth]
|
239
247
|
ba_user, ba_password, salt = ing[:basic_auth].split ':'
|
@@ -257,6 +265,7 @@ module Dry
|
|
257
265
|
end
|
258
266
|
end
|
259
267
|
service.delete :ingress
|
268
|
+
service.delete :oauth_provider
|
260
269
|
|
261
270
|
service[:environment] = @environment[name].merge(service[:environment]) if @environment[name]
|
262
271
|
service[:environment].merge! STACK_NAME: @name.to_s, STACK_SERVICE_NAME: name.to_s
|
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.46
|
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-
|
11
|
+
date: 2025-08-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|