Sha256: d71afba7078deb47ed09b05fa626f414c23825fe334abd12757c58f9b3f96fe5

Contents?: true

Size: 1.24 KB

Versions: 24

Compression:

Stored size: 1.24 KB

Contents

module Fog
  module Compute
    class Cloudstack

      class Real
        # Creates a egress firewall rule for a given network
        #
        # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createEgressFirewallRule.html]
        def create_egress_firewall_rule(*args)
          options = {}
          if args[0].is_a? Hash
            options = args[0]
            options.merge!('command' => 'createEgressFirewallRule')
          else
            options.merge!('command' => 'createEgressFirewallRule',
            'networkid' => args[0],
            'protocol' => args[1])
          end
          request(options)
        end
      end

      class Mock
        def create_egress_firewall_rule(*args)
          egress_firewall_rule_id = Fog::Cloudstack.uuid

          egress_firewall_rule = {
            "id" => egress_firewall_rule_id,
            "protocol" => "tcp",
            "networkid" => "f1f1f1-f1f1-f1f1f1-f1f1f1f1f1",
            "state" => "Active",
            "cidrlist" => "10.2.1.0/24",
          }

          self.data[:egress_firewall_rules][egress_firewall_rule_id] = egress_firewall_rule

          {'createegressfirewallruleresponse' => egress_firewall_rule}
        end
      end

    end
  end
end

Version data entries

24 entries across 22 versions & 3 rubygems

Version Path
fog-2.1.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-1.42.1/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-1.42.1/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-1.42.1/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.42.1 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-2.0.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.42.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.41.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.40.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.39.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.38.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.37.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.36.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.35.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-2.0.0.pre.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.34.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.33.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.32.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
fog-1.31.0 lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb