Sha256: 972081fcdbc245d79458318e2fc80e3d79a0ae43490234c50b76feaa8df5045f
Contents?: true
Size: 1.66 KB
Versions: 1
Compression:
Stored size: 1.66 KB
Contents
module Fog module Sql class AzureRM # Sql Server model for Server Firewall Rule Service class FirewallRule < Fog::Model identity :name attribute :id attribute :type attribute :resource_group attribute :location attribute :start_ip, aliases: %w(startIpAddress) attribute :end_ip, aliases: %w(endIpAddress) attribute :server_name def self.parse(firewall) data = {} if firewall.is_a? Hash firewall.each do |k, v| if k == 'properties' v.each do |j, l| data[j] = l end else data[k] = v end end data['resource_group'] = get_resource_group_from_id(firewall['id']) data['server_name'] = get_resource_from_resource_id(firewall['id'], 8) else raise 'Object is not a hash. Parsing SQL Server firewall object failed.' end data end def save requires :resource_group, :server_name, :name, :start_ip, :end_ip firewall_rule = service.create_or_update_firewall_rule(format_firewall_params) merge_attributes(Fog::Sql::AzureRM::FirewallRule.parse(firewall_rule)) end def destroy service.delete_firewall_rule(resource_group, server_name, name) end private def format_firewall_params { resource_group: resource_group, server_name: server_name, name: name, start_ip: start_ip, end_ip: end_ip } end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fog-azure-rm-0.1.2 | lib/fog/azurerm/models/sql/firewall_rule.rb |