Sha256: 8bb6b7a05fc908fd5e030e9db667d6a6a88f02eb53edb83cb6c3fc8b440a9944
Contents?: true
Size: 1.58 KB
Versions: 20
Compression:
Stored size: 1.58 KB
Contents
require 'fog/openstack/models/model' module Fog module OpenStack class Identity class V3 class OsCredential < Fog::OpenStack::Model identity :id attribute :project_id attribute :type attribute :blob attribute :user_id attribute :links def to_s name end def destroy requires :id service.delete_os_credential(id) @parsed_blob = nil true end def update(attr = nil) requires :id merge_attributes( service.update_os_credential(id, attr || attributes).body['credential'] ) @parsed_blob = nil self end def save requires :blob, :type @parsed_blob = nil identity ? update : create end def create merge_attributes( service.create_os_credential(attributes).body['credential'] ) @parsed_blob = nil self end def parsed_blob @parsed_blob = ::JSON.parse(blob) unless @parsed_blob @parsed_blob end def name parsed_blob['name'] if blob end def public_key parsed_blob['public_key'] if blob end def fingerprint parsed_blob['fingerprint'] if blob end def private_key parsed_blob['private_key'] if blob end end end end end end
Version data entries
20 entries across 20 versions & 3 rubygems