class Rancher::Api::Instance::Action
Few possible actions are:
- execute shell command - render logs - restart
Public Instance Methods
run!()
click to toggle source
# File lib/rancher/api/models/instance/action.rb, line 19 def run! uri = URI.parse(url) uri.userinfo = "#{Rancher::Api.configuration.access_key}:#{Rancher::Api.configuration.secret_key}" uri.query = "token=#{token}" self.response = [] EM.run do # 15 seconds timeout in case of slow operation # EM.add_timer(15) do EM.stop end ws = Faye::WebSocket::Client.new(uri.to_s) ws.on :message do |event| response << Base64.decode64(event.data) end ws.on :close do |_event| ws = nil EM.stop end end self.response = response.join self end