class Fog::OpenStack::Orchestration::Stack

Public Instance Methods

abandon() click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 67
def abandon
  service.abandon_stack(self)
end
cancel_update() click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 71
def cancel_update
  service.cancel_update(self)
end
create() click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 28
def create
  Fog::Logger.deprecation("#create is deprecated, use #save(options) instead [light_black](#{caller.first})[/]")
  requires :stack_name
  service.stacks.create(default_options)
end
delete() click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 46
def delete
  service.delete_stack(self)
end
Also aliased as: destroy
destroy()
Alias for: delete
details() click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 51
def details
  @details ||= service.stacks.get(stack_name, id)
end
events(options = {}) click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 59
def events(options = {})
  @events ||= service.events.all(self, options)
end
patch(options = {}) click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 41
def patch(options = {})
  requires :stack_name
  service.patch_stack(self, options).body['stack']
end
resources(options = {}) click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 55
def resources(options = {})
  @resources ||= service.resources.all({:stack => self}.merge(options))
end
save(options = {}) click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 15
def save(options = {})
  if persisted?
    stack_default_options = default_options
    if (options.key?(:template_url))
      stack_default_options.delete(:template)
    end
    service.update_stack(self, stack_default_options.merge(options)).body['stack']
  else
    service.stacks.create(default_options.merge(options))
  end
end
template() click to toggle source
# File lib/fog/openstack/orchestration/models/stack.rb, line 63
def template
  @template ||= service.templates.get(self)
end
template=(content) click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 88
def template=(content)
  Fog::Logger.deprecation("#template=(content) is deprecated, use it in options for #save(options) instead [light_black](#{caller.first})[/]")
  @template = content
end
template_url() click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 76
def template_url
  Fog::Logger.deprecation("#template_url is deprecated, use it in options for #save(options) instead [light_black](#{caller.first})[/]")
  @template_url
end
template_url=(url) click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 82
def template_url=(url)
  Fog::Logger.deprecation("#template_url= is deprecated, use it in options for #save(options) instead [light_black](#{caller.first})[/]")
  @template_url = url
end
timeout_in_minutes() click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 94
def timeout_in_minutes
  Fog::Logger.deprecation("#timeout_in_minutes is deprecated, set timeout_mins in options for save(options) instead [light_black](#{caller.first})[/]")
  timeout_mins
end
timeout_in_minutes=(minutes) click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 100
def timeout_in_minutes=(minutes)
  Fog::Logger.deprecation("#timeout_in_minutes=(minutes) is deprecated, set timeout_mins in options for save(options) instead [light_black](#{caller.first})[/]")
  timeout_mins = minutes
end
update() click to toggle source

Deprecated

# File lib/fog/openstack/orchestration/models/stack.rb, line 35
def update
  Fog::Logger.deprecation("#update is deprecated, use #save(options) instead [light_black](#{caller.first})[/]")
  requires :stack_name
  service.update_stack(self, default_options).body['stack']
end

Private Instance Methods

default_options() click to toggle source

build options to create or update stack

# File lib/fog/openstack/orchestration/models/stack.rb, line 106
def default_options
  template_content =
    if template && template.kind_of?(Fog::OpenStack::Orchestration::Template)
      template.content
    else
      template
    end

  options = {
    :stack_name       => stack_name,
    :disable_rollback => disable_rollback,
    :timeout_mins     => timeout_mins
  }
  options[:template] = template_content if template_content
  options[:template_url] = @template_url if @template_url
  options[:files] = @files if @files
  options
end