Sha256: 6cfff9b66e22f5d169d5ab43c099cdcd0d5fa0cc34b140237fbbfb4f7bfe8244

Contents?: true

Size: 1.39 KB

Versions: 46

Compression:

Stored size: 1.39 KB

Contents

module Fog
  module Sql
    class AzureRM
      # Real class for Firewall Rule Request
      class Real
        def create_or_update_firewall_rule(firewall_hash)
          msg = "Creating SQL Firewall Rule : #{firewall_hash[:name]}."
          Fog::Logger.debug msg

          begin
            server_firewall_rule = @sql_mgmt_client.servers.create_or_update_firewall_rule(firewall_hash[:resource_group], firewall_hash[:server_name], firewall_hash[:name], format_server_firewall_parameters(firewall_hash[:start_ip], firewall_hash[:end_ip]))
          rescue MsRestAzure::AzureOperationError => e
            raise_azure_exception(e, msg)
          end
          Fog::Logger.debug "SQL Firewall Rule : #{firewall_hash[:name]} created successfully."
          server_firewall_rule
        end

        private

        def format_server_firewall_parameters(start_ip, end_ip)
          firewall_rule = Azure::ARM::SQL::Models::ServerFirewallRule.new
          firewall_rule.start_ip_address = start_ip
          firewall_rule.end_ip_address = end_ip
          firewall_rule
        end
      end

      # Mock class for Sql Firewall Rule Request
      class Mock
        def create_or_update_firewall_rule(*)
          {
            'properties' => {
              'startIpAddress' => '{start-ip-address}',
              'endIpAddress' => '{end-ip-address}'
            }
          }
        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/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.5.3 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.5.2 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
far-gem-0.5.6 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.5.1 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
far-gem-0.5.5 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.5.0 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
far-gem-0.5.4 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
far-gem-0.5.3 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.9 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
far-gem-0.5.2 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.8 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.7 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.6 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.5 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-temp-0.0.5 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.4 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.3 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
far-gem-0.5.1 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb
fog-azure-rm-0.4.2 lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb