Class: Kettle::Dev::ReleaseSecrets::BrokerClient
- Defined in:
- lib/kettle/dev/release_secrets.rb
Overview
Secret provider used by a family-owned release broker. The broker keeps all 1Password lookups in the family process; member release processes never authenticate independently.
Instance Method Summary collapse
- #gem_signing_passphrase ⇒ Object
-
#initialize(endpoint) ⇒ BrokerClient
constructor
A new instance of BrokerClient.
-
#keepalive!(elapsed: nil) ⇒ Object
A family broker owns authorization.
- #keepalive_required? ⇒ Boolean
- #rubygems_otp ⇒ Object
Constructor Details
#initialize(endpoint) ⇒ BrokerClient
Returns a new instance of BrokerClient.
36 37 38 39 |
# File 'lib/kettle/dev/release_secrets.rb', line 36 def initialize(endpoint) @endpoint = endpoint.to_s raise Kettle::Dev::Error, "release secrets broker endpoint is required" if @endpoint.empty? end |
Instance Method Details
#gem_signing_passphrase ⇒ Object
41 42 43 44 45 |
# File 'lib/kettle/dev/release_secrets.rb', line 41 def gem_signing_passphrase return cached_gem_signing_passphrase if cached_gem_signing_passphrase? request("gem_signing_passphrase") end |
#keepalive!(elapsed: nil) ⇒ Object
A family broker owns authorization. Polling must never start a new authentication lookup in the member process.
53 54 55 |
# File 'lib/kettle/dev/release_secrets.rb', line 53 def keepalive!(elapsed: nil) true end |
#keepalive_required? ⇒ Boolean
57 58 59 |
# File 'lib/kettle/dev/release_secrets.rb', line 57 def keepalive_required? false end |
#rubygems_otp ⇒ Object
47 48 49 |
# File 'lib/kettle/dev/release_secrets.rb', line 47 def rubygems_otp request("rubygems_otp") end |