Class: Miasma::Models::Orchestration

Inherits:
Types::Api show all
Defined in:
lib/miasma/models/orchestration.rb,
lib/miasma/models/orchestration/plan.rb,
lib/miasma/models/orchestration/event.rb,
lib/miasma/models/orchestration/plans.rb,
lib/miasma/models/orchestration/stack.rb,
lib/miasma/models/orchestration/events.rb,
lib/miasma/models/orchestration/stacks.rb,
lib/miasma/models/orchestration/resource.rb,
lib/miasma/models/orchestration/resources.rb

Overview

Abstract orchestration API

Defined Under Namespace

Classes: Stack, Stacks

Constant Summary collapse

RESOURCE_MAPPING =

Returns mapping of remote type to internal type.

Returns:

  • (Smash)

    mapping of remote type to internal type

Smash.new
VALID_RESOURCE_STATES =

Returns valid resource states.

Returns:

  • (Array<Symbol>)

    valid resource states

[
  :create_complete, :create_in_progress, :create_failed,
  :delete_complete, :delete_in_progress, :delete_failed,
  :rollback_complete, :rollback_in_progress, :rollback_failed,
  :update_complete, :update_in_progress, :update_failed,
  :update_rollback_complete, :update_rollback_in_progress,
  :update_rollback_failed, :unknown,
]

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

#event_all(stack) ⇒ Array<Models::Orchestration::Stack::Event>

Return all events for stack

Parameters:

Returns:

Raises:

  • (NotImplementedError)


125
126
127
# File 'lib/miasma/models/orchestration.rb', line 125

def event_all(stack)
  raise NotImplementedError
end

#event_all_new(events) ⇒ Array<Models::Orchestration::Stack::Event>

Return all new events for event collection

Parameters:

Returns:

Raises:

  • (NotImplementedError)


133
134
135
# File 'lib/miasma/models/orchestration.rb', line 133

def event_all_new(events)
  raise NotImplementedError
end

#event_reload(event) ⇒ Models::Orchestration::Event

Reload the stack event data from the API

Parameters:

Returns:

  • (Models::Orchestration::Event)

Raises:

  • (NotImplementedError)


141
142
143
# File 'lib/miasma/models/orchestration.rb', line 141

def event_reload(event)
  raise NotImplementedError
end

#resource_all(stack) ⇒ Array<Models::Orchestration::Stack::Resource>

Return all resources for stack

Parameters:

Returns:

Raises:

  • (NotImplementedError)


109
110
111
# File 'lib/miasma/models/orchestration.rb', line 109

def resource_all(stack)
  raise NotImplementedError
end

#resource_reload(resource) ⇒ Models::Orchestration::Resource

Reload the stack resource data from the API

Parameters:

Returns:

  • (Models::Orchestration::Resource)

Raises:

  • (NotImplementedError)


117
118
119
# File 'lib/miasma/models/orchestration.rb', line 117

def resource_reload(resource)
  raise NotImplementedError
end

#stack_all(options = {}) ⇒ Array<Models::Orchestration::Stack>

Return all stacks

Parameters:

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

    filter

Returns:

Raises:

  • (NotImplementedError)


69
70
71
# File 'lib/miasma/models/orchestration.rb', line 69

def stack_all(options = {})
  raise NotImplementedError
end

#stack_destroy(stack) ⇒ TrueClass, FalseClass

Delete the stack

Parameters:

Returns:

  • (TrueClass, FalseClass)

Raises:

  • (NotImplementedError)


61
62
63
# File 'lib/miasma/models/orchestration.rb', line 61

def stack_destroy(stack)
  raise NotImplementedError
end

#stack_plan(stack) ⇒ Plan

Plan stack update

Parameters:

Returns:

  • (Plan)

Raises:

  • (NotImplementedError)


93
94
95
# File 'lib/miasma/models/orchestration.rb', line 93

def stack_plan(stack)
  raise NotImplementedError
end

#stack_plan_all(stack) ⇒ Array<Models::Orchestration::Stack::Plan>

Return all plans for stack

Parameters:

Returns:

Raises:

  • (NotImplementedError)


149
150
151
# File 'lib/miasma/models/orchestration.rb', line 149

def stack_plan_all(stack)
  raise NotImplementedError
end

#stack_plan_load(stack) ⇒ Plan

Load plan for stack

Parameters:

Returns:

  • (Plan)

Raises:

  • (NotImplementedError)


101
102
103
# File 'lib/miasma/models/orchestration.rb', line 101

def stack_plan_load(stack)
  raise NotImplementedError
end

#stack_plan_reload(plan) ⇒ Models::Orchestration::Stack::Plan

Reload the plan data from the API

Parameters:

Returns:

Raises:

  • (NotImplementedError)


157
158
159
# File 'lib/miasma/models/orchestration.rb', line 157

def stack_plan_reload(plan)
  raise NotImplementedError
end

#stack_reload(stack) ⇒ Models::Orchestration::Stack

Reload the stack data from the API

Parameters:

Returns:

Raises:

  • (NotImplementedError)


53
54
55
# File 'lib/miasma/models/orchestration.rb', line 53

def stack_reload(stack)
  raise NotImplementedError
end

#stack_save(stack) ⇒ Models::Orchestration::Stack

Save the stack

Parameters:

Returns:

Raises:

  • (NotImplementedError)


45
46
47
# File 'lib/miasma/models/orchestration.rb', line 45

def stack_save(stack)
  raise NotImplementedError
end

#stack_template_load(stack) ⇒ Smash

Fetch stack template

Parameters:

Returns:

  • (Smash)

    stack template

Raises:

  • (NotImplementedError)


77
78
79
# File 'lib/miasma/models/orchestration.rb', line 77

def stack_template_load(stack)
  raise NotImplementedError
end

#stack_template_validate(stack) ⇒ NilClass, String

Validate stack template

Parameters:

Returns:

  • (NilClass, String)

    nil if valid, string error message if invalid

Raises:

  • (NotImplementedError)


85
86
87
# File 'lib/miasma/models/orchestration.rb', line 85

def stack_template_validate(stack)
  raise NotImplementedError
end

#stacks(args = {}) ⇒ Types::Collection<Models::Orchestration::Stack>

Orchestration stacks

Parameters:

  • filter (Hash)

    filtering options

Returns:



35
36
37
38
39
# File 'lib/miasma/models/orchestration.rb', line 35

def stacks(args = {})
  memoize(:stacks) do
    Stacks.new(self)
  end
end