Sha256: fa12d2478fb576f39d78fa7aae54ea5fca4f23a973700dafe0044e73a18399cc

Contents?: true

Size: 1.78 KB

Versions: 9

Compression:

Stored size: 1.78 KB

Contents

class Ey::Core::Client
  class Real
    def create_auto_scaling_group(options={})
      url = options.delete("url")

      request(
        :method => :post,
        :url    => url,
        :path   => "/auto_scaling_groups",
        :body   => options
      )
    end
  end

  class Mock
    def create_auto_scaling_group(options={})
      url = options.delete("url")

      environment_id = options.delete("environment")
      environment = find(:environments, environment_id)
      resource_id = self.uuid
      resource = options["auto_scaling_group"].dup

      now = Time.now

      resource.merge!(
        "created_at"       => now,
        "environment"      => url_for("/environments/#{environment_id}"),
        "id"               => resource_id,
        "location_id"      => environment["region"],
        "provisioned_id"   => "#{environment["name"]}#{SecureRandom.uuid}",
        "desired_capacity" => 1,
        "resource_url"     => url_for("/auto_scaling_groups/#{resource_id}"),
      )

      self.data[:auto_scaling_groups][resource_id] = resource

      environment.merge!("auto_scaling_group" => url_for("/auto_scaling_groups/#{resource_id}"))

      request = {
        "created_at"   => now - 2,
        "finished_at"  => now,
        "id"           => self.uuid,
        "message"      => nil,
        "read_channel" => nil,
        "resource"     => [:auto_scaling_groups, resource_id, resource],
        "resource_url" => url_for("/auto_scaling_groups/#{resource_id}"),
        "started_at"   => now - 1,
        "successful"   => true,
        "type"         => "provision_auto_scaling_group",
        "updated_at"   => now,
      }

      self.data[:requests][request["id"]] = request

      response(
        :body   => {"request" => request},
        :status => 200
      )
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
ey-core-3.6.0.autoscaling1 lib/ey-core/requests/create_auto_scaling_group.rb
ey-core-3.6.4 lib/ey-core/requests/create_auto_scaling_group.rb
ey-core-3.6.3 lib/ey-core/requests/create_auto_scaling_group.rb
ey-core-3.6.1 lib/ey-core/requests/create_auto_scaling_group.rb
groove-ey-core-3.6.3 lib/ey-core/requests/create_auto_scaling_group.rb
groove-ey-core-3.6.2 lib/ey-core/requests/create_auto_scaling_group.rb
groove-ey-core-3.6.1 lib/ey-core/requests/create_auto_scaling_group.rb
ey-core-3.5.0 lib/ey-core/requests/create_auto_scaling_group.rb
ey-core-3.4.4 lib/ey-core/requests/create_auto_scaling_group.rb