data = JSON.stringify data
request method, path, 'application/json', data, token, (err, response) ->
return callback err if err
- return callback() if response is ' '
- return callback() if response is ''
+ return callback null, '' if response is ' '
+ return callback null, '' if response is ''
try
callback null, JSON.parse(response)
catch error
else
callback "login: couldn't find the token in the server response: #{JSON.stringify response}"
-# this is the friendly one that updates the files then restarts the app
-exports.app_publish = (token, app_name, zip_file, callback) ->
- exports.app_update_files token, app_name, zip_file, (err) ->
- return callback err if err?
- exports.app_restart token, app_name, callback
-
exports.app_update_files = (token, app_name, zip_file, callback) ->
request(
'POST',
exports.app_set_info = (token, app_name, info, callback) ->
json_put "/apps/#{app_name}", info, token, callback
-app_set_state = (token, app_name, state, callback) ->
- async.waterfall [
- (callback) ->
- exports.app_info token, app_name, callback
- (info, callback) ->
- info.state = state
- exports.app_set_info token, app_name, info, callback
- ], callback
-
-exports.app_start = (token, app_name, callback) ->
- app_set_state token, app_name, 'STARTED', callback
-
-exports.app_stop = (token, app_name, callback) ->
- app_set_state token, app_name, 'STOPPED', callback
-
-exports.app_restart = (token, app_name, callback) ->
- # Server requires you to fetch the app state before each call to change
- # it, so there's no quicker way than just calling app_stop then app_start
- async.waterfall [
- (callback) -> exports.app_stop token, app_name, callback
- (callback) -> exports.app_start token, app_name, callback
- ], callback
-
app_get = (path) ->
return (token, app_name, callback) ->
json_get "/apps/#{app_name}#{path}", token, callback