X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=client.coffee;h=74d7a5c4db7ebd349ae5ced95c4ee81b72840727;hb=4afbec887d5f696bb9bf8802363f1500877c0764;hp=9e28b9b09f14d0de7c53cbf0103d6af417a13db2;hpb=4b25ae43b769543dc9cb4c1c43178f9d43eb095f;p=af-coffee.git diff --git a/client.coffee b/client.coffee index 9e28b9b..74d7a5c 100755 --- a/client.coffee +++ b/client.coffee @@ -54,17 +54,23 @@ commands.app_publish_seamless = (token, app_name, zip_file, callback) -> new_app = app_name async.auto { - push: (cb) => @api 'app_update_files', new_app, zip_file, cb - # TODO find out if app_update_files increments app_info.version - # if not, drop new_info's dependency on push old_info: (cb) => @api 'app_info', old_app, cb - new_info: ['push', (cb) => @api 'app_info', new_app, cb ] - start_new: ['push', 'old_info', 'new_info', (cb, args) => - args.new_info.state = 'STARTED' + new_info: (cb) => @api 'app_info', new_app, cb + push: (cb) => @api 'app_update_files', new_app, zip_file, cb + copy_uris: ['push', 'old_info', 'new_info', (cb, args) => + # There's a bug in the server where you can't set new uris and + # start the app in the same app_set_info call for u in args.old_info.uris args.new_info.uris.push u unless u.substr(-6) is '.af.cm' @api 'app_set_info', new_app, args.new_info, cb ] + new_info_again: ['copy_uris', (cb, args) => + @api 'app_info', new_app, cb + ] + start_new: ['new_info_again', (cb, args) => + args.new_info_again.state = 'STARTED' + @api 'app_set_info', new_app, args.new_info_again, cb + ] hide_old: ['start_new', 'old_info', (cb, args) => just_af = [] for u in args.old_info.uris