From 788a57e85ebd1bf469d35c537a6249a76f8463fa Mon Sep 17 00:00:00 2001 From: Nick Lozon Date: Wed, 22 Nov 2023 13:28:21 -0500 Subject: [PATCH] role `logging_args` method, use in app --- lib/kamal/commands/app.rb | 2 +- lib/kamal/configuration/role.rb | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/kamal/commands/app.rb b/lib/kamal/commands/app.rb index b58861ca..825fe55f 100644 --- a/lib/kamal/commands/app.rb +++ b/lib/kamal/commands/app.rb @@ -21,7 +21,7 @@ class Kamal::Commands::App < Kamal::Commands::Base "-e", "KAMAL_VERSION=\"#{config.version}\"", *role_config.env_args, *role_config.health_check_args, - *config.logging_args, + *role_config.logging_args, *config.volume_args, *role_config.asset_volume_args, *role_config.label_args, diff --git a/lib/kamal/configuration/role.rb b/lib/kamal/configuration/role.rb index 84787a2f..0bdcfb87 100644 --- a/lib/kamal/configuration/role.rb +++ b/lib/kamal/configuration/role.rb @@ -36,6 +36,18 @@ class Kamal::Configuration::Role argumentize "--label", labels end + def logging_args + args = config.logging || {} + args.deep_merge!(specializations['logging']) if specializations['logging'].present? + + if args.any? + optionize({ "log-driver" => args["driver"] }.compact) + + argumentize("--log-opt", args["options"]) + else + config.logging_args + end + end + def env if config.env && config.env["secret"]