feat(cli): update secrets --account flag as optional depending on adapter

This commit is contained in:
Ralf Schmitz Bongiolo
2024-11-04 18:58:18 -04:00
parent d0d9dfcba9
commit 77cd29f5ad
4 changed files with 47 additions and 4 deletions

View File

@@ -1,13 +1,20 @@
class Kamal::Secrets::Adapters::Base
delegate :optionize, to: Kamal::Utils
def fetch(secrets, account:, from: nil)
def fetch(secrets, account: nil, from: nil)
raise RuntimeError, "Missing required option '--account'" if requires_account? && account.blank?
check_dependencies!
session = login(account)
full_secrets = secrets.map { |secret| [ from, secret ].compact.join("/") }
fetch_secrets(full_secrets, account: account, session: session)
end
def requires_account?
true
end
private
def login(...)
raise NotImplementedError