Module: Fog::Network

Defined in:
lib/fog/network.rb,
lib/fog/openstack/network.rb,
lib/fog/storm_on_demand/network.rb,
lib/fog/openstack/models/network/port.rb,
lib/fog/openstack/models/network/ports.rb,
lib/fog/openstack/models/network/lb_vip.rb,
lib/fog/openstack/models/network/router.rb,
lib/fog/openstack/models/network/subnet.rb,
lib/fog/openstack/models/network/lb_pool.rb,
lib/fog/openstack/models/network/lb_vips.rb,
lib/fog/openstack/models/network/network.rb,
lib/fog/openstack/models/network/routers.rb,
lib/fog/openstack/models/network/subnets.rb,
lib/fog/openstack/models/network/lb_pools.rb,
lib/fog/openstack/models/network/networks.rb,
lib/fog/openstack/models/network/lb_member.rb,
lib/fog/openstack/models/network/lb_members.rb,
lib/fog/openstack/requests/network/get_port.rb,
lib/fog/storm_on_demand/models/network/pool.rb,
lib/fog/storm_on_demand/models/network/zone.rb,
lib/fog/openstack/models/network/floating_ip.rb,
lib/fog/openstack/requests/network/get_quota.rb,
lib/fog/storm_on_demand/models/network/pools.rb,
lib/fog/storm_on_demand/models/network/zones.rb,
lib/fog/openstack/models/network/floating_ips.rb,
lib/fog/openstack/requests/network/get_lb_vip.rb,
lib/fog/openstack/requests/network/get_quotas.rb,
lib/fog/openstack/requests/network/get_router.rb,
lib/fog/openstack/requests/network/get_subnet.rb,
lib/fog/openstack/requests/network/list_ports.rb,
lib/fog/openstack/requests/network/set_tenant.rb,
lib/fog/openstack/requests/network/create_port.rb,
lib/fog/openstack/requests/network/delete_port.rb,
lib/fog/openstack/requests/network/get_lb_pool.rb,
lib/fog/openstack/requests/network/get_network.rb,
lib/fog/openstack/requests/network/update_port.rb,
lib/fog/storm_on_demand/models/network/ruleset.rb,
lib/fog/openstack/models/network/security_group.rb,
lib/fog/openstack/requests/network/delete_quota.rb,
lib/fog/openstack/requests/network/list_lb_vips.rb,
lib/fog/openstack/requests/network/list_routers.rb,
lib/fog/openstack/requests/network/list_subnets.rb,
lib/fog/openstack/requests/network/update_quota.rb,
lib/fog/storm_on_demand/models/network/balancer.rb,
lib/fog/storm_on_demand/models/network/firewall.rb,
lib/fog/storm_on_demand/models/network/rulesets.rb,
lib/fog/openstack/models/network/security_groups.rb,
lib/fog/openstack/requests/network/create_lb_vip.rb,
lib/fog/openstack/requests/network/create_router.rb,
lib/fog/openstack/requests/network/create_subnet.rb,
lib/fog/openstack/requests/network/delete_lb_vip.rb,
lib/fog/openstack/requests/network/delete_router.rb,
lib/fog/openstack/requests/network/delete_subnet.rb,
lib/fog/openstack/requests/network/get_lb_member.rb,
lib/fog/openstack/requests/network/list_lb_pools.rb,
lib/fog/openstack/requests/network/list_networks.rb,
lib/fog/openstack/requests/network/update_lb_vip.rb,
lib/fog/openstack/requests/network/update_router.rb,
lib/fog/openstack/requests/network/update_subnet.rb,
lib/fog/storm_on_demand/models/network/balancers.rb,
lib/fog/storm_on_demand/models/network/firewalls.rb,
lib/fog/openstack/requests/network/create_lb_pool.rb,
lib/fog/openstack/requests/network/create_network.rb,
lib/fog/openstack/requests/network/delete_lb_pool.rb,
lib/fog/openstack/requests/network/delete_network.rb,
lib/fog/openstack/requests/network/update_lb_pool.rb,
lib/fog/openstack/requests/network/update_network.rb,
lib/fog/storm_on_demand/models/network/network_ip.rb,
lib/fog/storm_on_demand/models/network/private_ip.rb,
lib/fog/storm_on_demand/requests/network/get_pool.rb,
lib/fog/storm_on_demand/requests/network/get_zone.rb,
lib/fog/openstack/models/network/lb_health_monitor.rb,
lib/fog/openstack/requests/network/get_floating_ip.rb,
lib/fog/openstack/requests/network/list_lb_members.rb,
lib/fog/storm_on_demand/models/network/network_ips.rb,
lib/fog/storm_on_demand/models/network/private_ips.rb,
lib/fog/openstack/models/network/lb_health_monitors.rb,
lib/fog/openstack/requests/network/create_lb_member.rb,
lib/fog/openstack/requests/network/delete_lb_member.rb,
lib/fog/openstack/requests/network/update_lb_member.rb,
lib/fog/storm_on_demand/requests/network/list_zones.rb,
lib/fog/openstack/models/network/security_group_rule.rb,
lib/fog/openstack/requests/network/get_lb_pool_stats.rb,
lib/fog/openstack/requests/network/list_floating_ips.rb,
lib/fog/storm_on_demand/requests/network/create_pool.rb,
lib/fog/storm_on_demand/requests/network/delete_pool.rb,
lib/fog/storm_on_demand/requests/network/get_ruleset.rb,
lib/fog/storm_on_demand/requests/network/update_pool.rb,
lib/fog/openstack/models/network/security_group_rules.rb,
lib/fog/openstack/requests/network/create_floating_ip.rb,
lib/fog/openstack/requests/network/delete_floating_ip.rb,
lib/fog/openstack/requests/network/get_security_group.rb,
lib/fog/storm_on_demand/requests/network/get_firewall.rb,
lib/fog/storm_on_demand/requests/network/list_rulesets.rb,
lib/fog/openstack/requests/network/add_router_interface.rb,
lib/fog/openstack/requests/network/list_security_groups.rb,
lib/fog/storm_on_demand/requests/network/create_ruleset.rb,
lib/fog/storm_on_demand/requests/network/get_ip_details.rb,
lib/fog/storm_on_demand/requests/network/get_private_ip.rb,
lib/fog/storm_on_demand/requests/network/list_balancers.rb,
lib/fog/storm_on_demand/requests/network/update_ruleset.rb,
lib/fog/openstack/requests/network/associate_floating_ip.rb,
lib/fog/openstack/requests/network/create_security_group.rb,
lib/fog/openstack/requests/network/delete_security_group.rb,
lib/fog/openstack/requests/network/get_lb_health_monitor.rb,
lib/fog/storm_on_demand/requests/network/create_balancer.rb,
lib/fog/storm_on_demand/requests/network/delete_balancer.rb,
lib/fog/storm_on_demand/requests/network/get_assignments.rb,
lib/fog/storm_on_demand/requests/network/request_new_ips.rb,
lib/fog/storm_on_demand/requests/network/update_balancer.rb,
lib/fog/storm_on_demand/requests/network/update_firewall.rb,
lib/fog/storm_on_demand/requests/network/add_ip_to_server.rb,
lib/fog/storm_on_demand/requests/network/list_network_ips.rb,
lib/fog/storm_on_demand/requests/network/list_private_ips.rb,
lib/fog/storm_on_demand/requests/network/set_default_zone.rb,
lib/fog/openstack/requests/network/get_security_group_rule.rb,
lib/fog/openstack/requests/network/list_lb_health_monitors.rb,
lib/fog/openstack/requests/network/remove_router_interface.rb,
lib/fog/storm_on_demand/requests/network/add_balancer_node.rb,
lib/fog/openstack/requests/network/create_lb_health_monitor.rb,
lib/fog/openstack/requests/network/delete_lb_health_monitor.rb,
lib/fog/openstack/requests/network/disassociate_floating_ip.rb,
lib/fog/openstack/requests/network/update_lb_health_monitor.rb,
lib/fog/storm_on_demand/requests/network/get_firewall_rules.rb,
lib/fog/openstack/requests/network/list_security_group_rules.rb,
lib/fog/openstack/requests/network/create_security_group_rule.rb,
lib/fog/openstack/requests/network/delete_security_group_rule.rb,
lib/fog/storm_on_demand/requests/network/add_balancer_service.rb,
lib/fog/storm_on_demand/requests/network/get_balancer_details.rb,
lib/fog/storm_on_demand/requests/network/remove_balancer_node.rb,
lib/fog/openstack/requests/network/associate_lb_health_monitor.rb,
lib/fog/storm_on_demand/requests/network/check_server_attached.rb,
lib/fog/storm_on_demand/requests/network/remove_ip_from_server.rb,
lib/fog/storm_on_demand/requests/network/get_balancer_strategies.rb,
lib/fog/storm_on_demand/requests/network/list_ip_public_accounts.rb,
lib/fog/storm_on_demand/requests/network/list_network_public_ips.rb,
lib/fog/storm_on_demand/requests/network/remove_balancer_service.rb,
lib/fog/openstack/requests/network/disassociate_lb_health_monitor.rb,
lib/fog/storm_on_demand/requests/network/check_balancer_available.rb,
lib/fog/storm_on_demand/requests/network/get_firewall_basic_options.rb,
lib/fog/storm_on_demand/requests/network/attach_server_to_private_ip.rb,
lib/fog/storm_on_demand/requests/network/get_balancer_possible_nodes.rb,
lib/fog/storm_on_demand/requests/network/detach_server_from_private_ip.rb

Defined Under Namespace

Classes: OpenStack, StormOnDemand

Class Method Summary collapse

Class Method Details

.[](provider) ⇒ Object



4
5
6
# File 'lib/fog/network.rb', line 4

def self.[](provider)
  self.new(:provider => provider)
end

.new(attributes) ⇒ Object

Raises:

  • (ArgumentError)


8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/fog/network.rb', line 8

def self.new(attributes)
  attributes = attributes.dup # Prevent delete from having side effects
  provider = attributes.delete(:provider).to_s.downcase.to_sym

  if provider == :stormondemand
    require "fog/storm_on_demand/network"
    return Fog::Network::StormOnDemand.new(attributes)
  elsif self.providers.include?(provider)
    require "fog/#{provider}/network"
    return Fog::Network.const_get(Fog.providers[provider]).new(attributes)
  end

  raise ArgumentError.new("#{provider} has no network service")
end

.providersObject



23
24
25
# File 'lib/fog/network.rb', line 23

def self.providers
  Fog.services[:network]
end