Sha256: 2893f9659593e13d9112d6b1c2be8687b3c6021e45665008d80ac902cefb8a48

Contents?: true

Size: 1.7 KB

Versions: 24

Compression:

Stored size: 1.7 KB

Contents

module Fog
  module Compute
    class Cloudstack

      class Real
        # Creates a network offering.
        #
        # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createNetworkOffering.html]
        def create_network_offering(*args)
          options = {}
          if args[0].is_a? Hash
            options = args[0]
            options.merge!('command' => 'createNetworkOffering')
          else
            options.merge!('command' => 'createNetworkOffering',
            'traffictype' => args[0],
            'guestiptype' => args[1],
            'name' => args[2],
            'supportedservices' => args[3],
            'displaytext' => args[4])
          end
          request(options)
        end
      end

      class Mock
        def create_network_offering(options={})
          network_offering_id = Fog::Cloudstack.uuid

          network_offering = {
            "id"              => network_offering_id,
            "name"            => "Isolated Network for VPC",
            "displaytext"     => "Isolated Network for VPC",
            "traffictype"     => "Guest",
            "isdefault"       => true,
            "specifyvlan"     => true,
            "conservemode"    => true,
            "specifyipranges" => false,
            "availability"    => "Optional",
            "networkrate"     => 200,
            "state"           => "Enabled",
            "guestiptype"     => "Isolated",
            "serviceofferingid" => "eaec129c-f1f1-f1f1-f1f1-a379f6b2897d"
          }

          self.data[:network_offerings][network_offering_id] = network_offering

          {'createnetworkofferingresponse' => network_offering}
        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_network_offering.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-1.42.1/lib/fog/cloudstack/requests/compute/create_network_offering.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-1.42.1/lib/fog/cloudstack/requests/compute/create_network_offering.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-1.42.1/lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.42.1 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-2.0.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.42.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.41.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.40.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.39.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.38.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.37.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.36.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.35.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-2.0.0.pre.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.34.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.33.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.32.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb
fog-1.31.0 lib/fog/cloudstack/requests/compute/create_network_offering.rb