Sha256: 2f15b83263a2a6f7f99c36794931701472c17b8114402b84b04ad4c4b02717bb

Contents?: true

Size: 1.09 KB

Versions: 16

Compression:

Stored size: 1.09 KB

Contents

module Fog
  class Slicehost

    class Server < Fog::Model

      identity :id

      attribute :addresses
      attribute :backup_id,     'backup-id'
      attribute :bandwidth_in,  'bw-in'
      attribute :bandwidth_out, 'bw-out'
      attribute :flavor_id,     'flavor-id'
      attribute :image_id,      'image-id'
      attribute :name
      attribute :password,      'root-password'
      attribute :progress
      attribute :status

      def destroy
        requires :id
        connection.delete_slice(@id)
        true
      end

      def flavor
        requires :flavor_id
        connection.flavors.get(@flavor_id)
      end

      def image
        requires :image_id
        connection.images.get(@image_id)
      end

      def ready?
        @status == 'active'
      end

      def reboot(type = 'SOFT')
        requires :id
        connection.reboot_server(@id, type)
        true
      end

      def save
        requires :flavor_id, :image_id, :name
        data = connection.create_slice(@flavor_id, @image_id, @name)
        merge_attributes(data.body)
        true
      end

    end

  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
fog-0.0.58 lib/fog/slicehost/models/server.rb
fog-0.0.57 lib/fog/slicehost/models/server.rb
fog-0.0.56 lib/fog/slicehost/models/server.rb
fog-0.0.55 lib/fog/slicehost/models/server.rb
fog-0.0.54 lib/fog/slicehost/models/server.rb
fog-0.0.53 lib/fog/slicehost/models/server.rb
fog-0.0.52 lib/fog/slicehost/models/server.rb
fog-0.0.51 lib/fog/slicehost/models/server.rb
fog-0.0.50 lib/fog/slicehost/models/server.rb
fog-0.0.49 lib/fog/slicehost/models/server.rb
fog-0.0.48 lib/fog/slicehost/models/server.rb
fog-0.0.47 lib/fog/slicehost/models/server.rb
fog-0.0.46 lib/fog/slicehost/models/server.rb
fog-0.0.45 lib/fog/slicehost/models/server.rb
fog-0.0.44 lib/fog/slicehost/models/server.rb
fog-0.0.43 lib/fog/slicehost/models/server.rb