Interrupting parent on error

This commit is contained in:
Donal McBreen
2024-09-04 12:14:47 +01:00
parent 9deb8af4a0
commit 5226d52f8a
11 changed files with 601 additions and 48 deletions

View File

@@ -1,15 +1,15 @@
class Kamal::Secrets::Adapters::Base
delegate :optionize, to: Kamal::Utils
def fetch(secrets, account:, location: nil)
def fetch(secrets, account:, from: nil)
session = login(account)
full_secrets = secrets.map { |secret| [ location, secret ].compact.join("/") }
full_secrets = secrets.map { |secret| [ from, secret ].compact.join("/") }
fetch_from_vault(full_secrets, account: account, session: session)
rescue => e
$stderr.puts " \e[31mERROR (#{e.class}): #{e.message}\e[0m"
$stderr.puts e.backtrace if ENV["VERBOSE"]
Process.kill("INT", Process.ppid) if ENV["KAMAL_SECRETS_KILL_PARENT"]
Process.kill("INT", Process.ppid) if ENV["KAMAL_SECRETS_INT_PARENT"]
exit 1
end