Class: Mrsk::Tags
- Inherits:
-
Object
- Object
- Mrsk::Tags
- Defined in:
- lib/mrsk/tags.rb
Instance Attribute Summary collapse
-
#config ⇒ Object
readonly
Returns the value of attribute config.
-
#tags ⇒ Object
readonly
Returns the value of attribute tags.
Class Method Summary collapse
- .default_tags(config) ⇒ Object
- .from_config(config, **extra) ⇒ Object
- .service_version(config) ⇒ Object
Instance Method Summary collapse
- #env ⇒ Object
- #except(*tags) ⇒ Object
-
#initialize(**tags) ⇒ Tags
constructor
A new instance of Tags.
- #to_s ⇒ Object
Constructor Details
#initialize(**tags) ⇒ Tags
Returns a new instance of Tags.
24 25 26 |
# File 'lib/mrsk/tags.rb', line 24 def initialize(**) @tags = .compact end |
Instance Attribute Details
#config ⇒ Object (readonly)
Returns the value of attribute config.
4 5 6 |
# File 'lib/mrsk/tags.rb', line 4 def config @config end |
#tags ⇒ Object (readonly)
Returns the value of attribute tags.
4 5 6 |
# File 'lib/mrsk/tags.rb', line 4 def @tags end |
Class Method Details
.default_tags(config) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/mrsk/tags.rb', line 11 def (config) { recorded_at: Time.now.utc.iso8601, performer: `whoami`.chomp, destination: config.destination, version: config.version, service_version: service_version(config) } end |
.from_config(config, **extra) ⇒ Object
7 8 9 |
# File 'lib/mrsk/tags.rb', line 7 def from_config(config, **extra) new(**(config), **extra) end |
.service_version(config) ⇒ Object
19 20 21 |
# File 'lib/mrsk/tags.rb', line 19 def service_version(config) [ config.service, config.abbreviated_version ].compact.join("@") end |
Instance Method Details
#env ⇒ Object
28 29 30 |
# File 'lib/mrsk/tags.rb', line 28 def env .transform_keys { |detail| "MRSK_#{detail.upcase}" } end |
#except(*tags) ⇒ Object
36 37 38 |
# File 'lib/mrsk/tags.rb', line 36 def except(*) self.class.new(**self..except(*)) end |
#to_s ⇒ Object
32 33 34 |
# File 'lib/mrsk/tags.rb', line 32 def to_s .values.map { |value| "[#{value}]" }.join(" ") end |