class OSESecretSerializer
Public Class Methods
from_yaml(yaml)
click to toggle source
rubocop:disable Metrics/MethodLength
# File lib/serializers/ose_secret_serializer.rb, line 9 def from_yaml(yaml) secret_hash = Psych.load(yaml) data = { 'apiVersion' => secret_hash['apiVersion'], 'data' => decoded_data(secret_hash['data']), 'kind' => secret_hash['kind'], 'metadata' => { 'name' => secret_hash['metadata']['name'], 'labels' => secret_hash['metadata']['labels'] } }.to_yaml OSESecret.new(secret_hash['metadata']['name'], data.to_s) end
to_account(secret)
click to toggle source
rubocop:enable Metrics/MethodLength
# File lib/serializers/ose_secret_serializer.rb, line 24 def to_account(secret) Account.new(accountname: secret.name, ose_secret: secret.ose_secret, type: 'ose_secret') end
to_yaml(secret)
click to toggle source
# File lib/serializers/ose_secret_serializer.rb, line 28 def to_yaml(secret) secret_hash = Psych.load(secret.ose_secret) secret_hash['data'] = encoded_data(secret_hash['data']) secret_hash.to_yaml end
Private Class Methods
decoded_data(data)
click to toggle source
# File lib/serializers/ose_secret_serializer.rb, line 36 def decoded_data(data) return {} unless data data.transform_values do |value| Base64.strict_decode64(value) rescue ArgumentError value end end
encoded_data(data)
click to toggle source
# File lib/serializers/ose_secret_serializer.rb, line 46 def encoded_data(data) return {} unless data data.transform_values do |value| Base64.strict_encode64(value) end end