Sha256: 25749b0f82c3a3875900118077d2b3f60fde3b89d4fa31f7e70c1ad1f6d74455

Contents?: true

Size: 898 Bytes

Versions: 6

Compression:

Stored size: 898 Bytes

Contents

require 'fog/core/collection'
require 'fog/compute/models/virtual_box/server'

module Fog
  module VirtualBox
    class Compute

      class Servers < Fog::Collection

        model Fog::VirtualBox::Compute::Server

        def all
          data = connection.machines.map do |machine|
            {
              :raw => machine
            }
          end
          load(data)
        end

        def bootstrap(new_attributes = {})
          raise 'Not Implemented'
          # server = create(new_attributes)
          # server.start
          # server.wait_for { ready? }
          # server.setup(:password => server.password)
          # server
        end

        def get(server_id)
          machine = connection.find_machine(server_id)
          new(:raw => machine)
        rescue ::VirtualBox::Exceptions::ObjectNotFoundException
          nil
        end

      end

    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
fog-0.8.2 lib/fog/compute/models/virtual_box/servers.rb
fog-0.8.1 lib/fog/compute/models/virtual_box/servers.rb
fog-0.8.0 lib/fog/compute/models/virtual_box/servers.rb
fog-0.7.2 lib/fog/compute/models/virtual_box/servers.rb
fog-0.7.1 lib/fog/compute/models/virtual_box/servers.rb
fog-0.7.0 lib/fog/compute/models/virtual_box/servers.rb