Class: Miasma::Models::Compute

Inherits:
Types::Api show all
Defined in:
lib/miasma/models/compute.rb,
lib/miasma/models/compute/server.rb,
lib/miasma/models/compute/servers.rb

Overview

Abstract compute API

Defined Under Namespace

Classes: Server, Servers

Constant Summary

Constants inherited from Types::Api

Types::Api::MAX_REQUEST_RETRIES, Types::Api::VALID_REQUEST_RETRY_METHODS

Instance Method Summary collapse

Methods inherited from Types::Api

#after_setup, #api_for, #connect, #connection, #custom_setup, #endpoint, #format_response, #from_json, #from_xml, #initialize, #make_request, #perform_request_retry, #provider, #request, #retryable_allowed?, #retryable_request

Constructor Details

This class inherits a constructor from Miasma::Types::Api

Instance Method Details

#server_allArray<Models::Compute::Server>

Return all servers

Returns:

Raises:

  • (NotImplementedError)


54
55
56
# File 'lib/miasma/models/compute.rb', line 54

def server_all
  raise NotImplementedError
end

#server_change_state(server, action) ⇒ TrueClass, FalseClass

Change server to desired state

Parameters:

Returns:

  • (TrueClass, FalseClass)

Raises:

  • (NotImplementedError)


63
64
65
# File 'lib/miasma/models/compute.rb', line 63

def server_change_state(server, action)
  raise NotImplementedError
end

#server_destroy(server) ⇒ TrueClass, FalseClass

Delete server instance

Parameters:

Returns:

  • (TrueClass, FalseClass)

Raises:

  • (NotImplementedError)


47
48
49
# File 'lib/miasma/models/compute.rb', line 47

def server_destroy(server)
  raise NotImplementedError
end

#server_filter(filter = {}) ⇒ Array<Server>

Filtered compute instances

Parameters:

  • filter (Hash) (defaults to: {})

    search filter

Options Hash (filter):

  • :state (Symbol)

    state of server ‘Server::VALID_COMPUTE_STATES`

Returns:



24
25
# File 'lib/miasma/models/compute.rb', line 24

def server_filter(filter = {})
end

#server_reload(server) ⇒ Models::Compute::Server

Reload the server data from the API

Parameters:

Returns:

Raises:

  • (NotImplementedError)


39
40
41
# File 'lib/miasma/models/compute.rb', line 39

def server_reload(server)
  raise NotImplementedError
end

#server_save(server) ⇒ Models::Compute::Server

Create new server instance

Parameters:

Returns:

Raises:

  • (NotImplementedError)


31
32
33
# File 'lib/miasma/models/compute.rb', line 31

def server_save(server)
  raise NotImplementedError
end

#serversTypes::Collection<Models::Compute::Server>

All compute instances

Returns:



13
14
15
16
17
# File 'lib/miasma/models/compute.rb', line 13

def servers
  memoize(:servers) do
    Servers.new(self)
  end
end