Sha256: 5ad321682e18c4ebb2ad0aa38db4dd65a288d5966adbb97f2c00d29119202a96

Contents?: true

Size: 1.49 KB

Versions: 46

Compression:

Stored size: 1.49 KB

Contents

module Fog
  module KeyVault
    # This class registers models, requests and collections
    class AzureRM < Fog::Service
      requires :tenant_id
      requires :client_id
      requires :client_secret
      requires :subscription_id

      request_path 'fog/azurerm/requests/key_vault'
      request :get_vault
      request :list_vaults
      request :create_or_update_vault
      request :delete_vault
      request :check_vault_exists

      model_path 'fog/azurerm/models/key_vault'
      model :vault
      model :access_policy_entry
      collection :vaults

      # This class provides the mock implementation for unit tests.
      class Mock
        def initialize(_options = {})
          begin
            require 'azure_mgmt_key_vault'
          rescue LoadError => e
            retry if require('rubygems')
            raise e.message
          end
        end
      end

      # This class provides the actual implementation for service calls.
      class Real
        def initialize(options)
          begin
            require 'azure_mgmt_key_vault'
          rescue LoadError => e
            retry if require('rubygems')
            raise e.message
          end

          credentials = Fog::Credentials::AzureRM.get_credentials(options[:tenant_id], options[:client_id], options[:client_secret])
          @key_vault_client = ::Azure::ARM::KeyVault::KeyVaultManagementClient.new(credentials)
          @key_vault_client.subscription_id = options[:subscription_id]
        end
      end
    end
  end
end

Version data entries

46 entries across 46 versions & 4 rubygems

Version Path
fog-azure-rm-0.6.0 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.5.3 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.5.2 lib/fog/azurerm/key_vault.rb
far-gem-0.5.6 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.5.1 lib/fog/azurerm/key_vault.rb
far-gem-0.5.5 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.5.0 lib/fog/azurerm/key_vault.rb
far-gem-0.5.4 lib/fog/azurerm/key_vault.rb
far-gem-0.5.3 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.9 lib/fog/azurerm/key_vault.rb
far-gem-0.5.2 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.8 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.7 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.6 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.5 lib/fog/azurerm/key_vault.rb
fog-azure-rm-temp-0.0.5 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.4 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.3 lib/fog/azurerm/key_vault.rb
far-gem-0.5.1 lib/fog/azurerm/key_vault.rb
fog-azure-rm-0.4.2 lib/fog/azurerm/key_vault.rb