Method: ContainersController#run_container_action

Defined in:
app/controllers/containers_controller.rb

#run_container_action(action) ⇒ Object



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'app/controllers/containers_controller.rb', line 62

def run_container_action(action)
  if @docker_container.send(action)
    @docker_container.reload
    notice _("%{vm} is now %{vm_state}") %
      { :vm => @docker_container, :vm_state => @docker_container.state.capitalize }
    redirect_to containers_path(:id => @container.id)
  else
    error _("failed to %{action} %{vm}") % { :action => _(action), :vm => @docker_container }
    redirect_back(:fallback_location => containers_path)
  end
  # This should only rescue Fog::Errors, but Fog returns all kinds of errors...
rescue => e
  error _("Error - %{message}") % { :message => _(e.message) }
  redirect_back(:fallback_location => containers_path)
end