Method: Sem::API::Secret.find!

Defined in:
lib/sem/api/secret.rb

.find!(secrets_srn) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/sem/api/secret.rb', line 8

def self.find!(secrets_srn)
  org_name, secret_name = Sem::SRN.parse_secret(secrets_srn)

  secrets = client.secrets.list_for_org!(org_name)
  secret = secrets.find { |c| c.name == secret_name }

  if secret.nil?
    raise Sem::Errors::ResourceNotFound.new("Secret", [org_name, secret_name])
  end

  new(org_name, secret)
rescue SemaphoreClient::Exceptions::NotFound
  raise Sem::Errors::ResourceNotFound.new("Secret", [org_name, secret_name])
end