girder-plugin-worker 5.0.15.dev12__tar.gz → 5.0.15.dev16__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/PKG-INFO +1 -1
  2. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/web_client/dist/girder-plugin-worker.umd.cjs +2 -1
  3. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/PKG-INFO +1 -1
  4. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/scm_file_list.json +8 -8
  5. girder_plugin_worker-5.0.15.dev16/girder_plugin_worker.egg-info/scm_version.json +8 -0
  6. girder_plugin_worker-5.0.15.dev12/girder_plugin_worker.egg-info/scm_version.json +0 -8
  7. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/MANIFEST.in +0 -0
  8. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/__init__.py +0 -0
  9. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/api/__init__.py +0 -0
  10. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/api/worker.py +0 -0
  11. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/constants.py +0 -0
  12. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/event_handlers.py +0 -0
  13. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/status.py +0 -0
  14. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/utils.py +0 -0
  15. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker/web_client/dist/style.css +0 -0
  16. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/SOURCES.txt +0 -0
  17. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/dependency_links.txt +0 -0
  18. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/entry_points.txt +0 -0
  19. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/not-zip-safe +0 -0
  20. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/requires.txt +0 -0
  21. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/girder_plugin_worker.egg-info/top_level.txt +0 -0
  22. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/pyproject.toml +0 -0
  23. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/setup.cfg +0 -0
  24. {girder_plugin_worker-5.0.15.dev12 → girder_plugin_worker-5.0.15.dev16}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: girder-plugin-worker
3
- Version: 5.0.15.dev12
3
+ Version: 5.0.15.dev16
4
4
  Summary: The Girder server plugin interfacing with girder-worker
5
5
  Home-page: http://girder.readthedocs.io/en/latest/plugins.html#worker
6
6
  Author: Kitware, Inc.
@@ -1,2 +1,3 @@
1
1
  (function(e){typeof define==`function`&&define.amd?define([],e):e()})(function(){function e(e){var t=``;return t+=`<div class="g-config-breadcrumb-container"></div><p>Configure how Girder should connect to the celery worker.
2
- </p><form id="g-worker-settings-form" role="form"><div class="form-group"><label class="control-label" for="g-worker-api-url">Alternative Girder API URL</label><input class="input-sm form-control" id="g-worker-api-url" type="text" placeholder="API URL (default: auto-detected)"/></div><div class="checkbox"><label class="control-label" for="g-worker-direct-path"><input id="g-worker-direct-path" type="checkbox"/><span>When possible, send local file paths to the worker to avoid downloading files</span></label></div><p class="g-validation-failed-message" id="g-worker-settings-error-message"></p><input class="btn btn-sm btn-primary" type="submit" value="Save"/></form><button class="q-worker-task-info btn btn-default" title="Task information" style="margin-top:10px;">Task information</button>`,t}var t=girder.views.widgets.PluginConfigBreadcrumbWidget,n=girder.views.View,r=girder.events,{restRequest:i}=girder.rest,a=girder.router,o=n.extend({events:{"submit #g-worker-settings-form":function(e){e.preventDefault(),this.$(`#g-worker-settings-error-message`).empty(),this._saveSettings([{key:`worker.api_url`,value:this.$(`#g-worker-api-url`).val().trim()},{key:`worker.direct_path`,value:this.$(`#g-worker-direct-path`).is(`:checked`)}])},"click .q-worker-task-info":function(e){a.navigate(`#plugins/worker/task/status`,{trigger:!0})}},initialize:function(){i({method:`GET`,url:`system/setting`,data:{list:JSON.stringify([`worker.api_url`,`worker.direct_path`])}}).done(e=>{this.render(),this.$(`#g-worker-api-url`).val(e[`worker.api_url`]),this.$(`#g-worker-direct-path`).prop(`checked`,e[`worker.direct_path`])})},render:function(){return this.$el.html(e()),this.breadcrumb||=new t({pluginName:`Worker`,el:this.$(`.g-config-breadcrumb-container`),parentView:this}),this.breadcrumb.render(),this},_saveSettings:function(e){i({method:`PUT`,url:`system/setting`,data:{list:JSON.stringify(e)},error:null}).done(e=>{r.trigger(`g:alert`,{icon:`ok`,text:`Settings saved.`,type:`success`,timeout:4e3})}).fail(e=>{this.$(`#g-worker-settings-error-message`).text(e.responseJSON.message)})}});function s(e){var t=``+e,n=c.exec(t);if(!n)return e;var r,i,a,o=``;for(r=n.index,i=0;r<t.length;r++){switch(t.charCodeAt(r)){case 34:a=`&quot;`;break;case 38:a=`&amp;`;break;case 60:a=`&lt;`;break;case 62:a=`&gt;`;break;default:continue}i!==r&&(o+=t.substring(i,r)),i=r+1,o+=a}return i===r?o:o+t.substring(i,r)}var c=/["&<>]/;function l(e){var t=``,n=e||{};return(function(e,n,r,i,a,o){t+=`<h1 class="g-worker-status-header">Global information about workers`,t+=r?`<i class="icon-spin4 icon-spin"></i>`:`<button class="g-worker-status-btn-reload"><i class="icon-arrows-cw"></i></button>`,t+=`</h1>`,r||(t+=`<div class="g-worker-status-content">`,n===null?(t=t+`<table class="g-worker-status-table"><tr><th>`+s(`Name`)+`</th><th>`+s(`Status`)+`</th><th>`+s(`Max Concurrency`)+`</th><th>`+s(`Accepted tasks`)+`</th><th>`+s(`Running tasks`)+`</th><th>`+s(`Completed tasks`)+`</th><th>`+s(`Report`)+`</th></tr>`,(function(){var e=a;if(typeof e.length==`number`)for(var n=0,r=e.length;n<r;n++){var i=e[n];t=t+`<tr class="g-worker-task-status-link"><td>`+s(i.name??``)+`</td>`,t=i.ping===`pong`?t+`<td>`+s(`Online`)+`</td>`:t+`<td>`+s(`Offline`)+`</td>`,t=t+`<td>`+s(i.concurrency??``)+`</td><td>`+s(i.stats??``)+`</td><td>`+s(i.active.length??``)+`</td><td>`+s(i.stats-i.active.length??``)+`</td><td>`+s(i.report??``)+`</td></tr>`}else{var r=0;for(var n in e){r++;var i=e[n];t=t+`<tr class="g-worker-task-status-link"><td>`+s(i.name??``)+`</td>`,t=i.ping===`pong`?t+`<td>`+s(`Online`)+`</td>`:t+`<td>`+s(`Offline`)+`</td>`,t=t+`<td>`+s(i.concurrency??``)+`</td><td>`+s(i.stats??``)+`</td><td>`+s(i.active.length??``)+`</td><td>`+s(i.stats-i.active.length??``)+`</td><td>`+s(i.report??``)+`</td></tr>`}}}).call(this),t+=`</table>`,(e.length||i.length)&&(t=t+`<div class="g-worker-task-status"><h2 class="g-worker-status-header">`+s(o??``)+`</h2>`,e.length&&(t=t+`<h3 class="g-worker-status-header">Running Tasks</h3><table class="g-worker-task-status-table"><tr><th>`+s(`Name`)+`</th><th>`+s(`ID`)+`</th><th>`+s(`Type`)+`</th><th>`+s(`Time Start`)+`</th><th>`+s(`Arguments`)+`</th><th>`+s(`KeyWord Arguments`)+`</th><th>`+s(`Worker PID`)+`</th></tr>`,(function(){var n=e;if(typeof n.length==`number`)for(var r=0,i=n.length;r<i;r++){var a=n[r];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.time_start??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.worker_pid??``)+`</td></tr>`}else{var i=0;for(var r in n){i++;var a=n[r];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.time_start??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.worker_pid??``)+`</td></tr>`}}}).call(this),t+=`</table>`),i.length&&(t=t+`<h3 class="g-worker-status-header">Queued Tasks</h3><table class="g-worker-task-status-table"><tr><th>`+s(`Name`)+`</th><th>`+s(`ID`)+`</th><th>`+s(`Type`)+`</th><th>`+s(`Arguments`)+`</th><th>`+s(`KeyWord Arguments`)+`</th><th>`+s(`Priority`)+`</th><th>`+s(`Redelivered`)+`</th></tr>`,(function(){var e=i;if(typeof e.length==`number`)for(var n=0,r=e.length;n<r;n++){var a=e[n];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.delivery_info.priority??``)+`</td><td>`+s(a.delivery_info.redelivered??``)+`</td></tr>`}else{var r=0;for(var n in e){r++;var a=e[n];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.delivery_info.priority??``)+`</td><td>`+s(a.delivery_info.redelivered??``)+`</td></tr>`}}}).call(this),t+=`</table>`),t+=`</div>`)):t=t+`<p class="g-worker-status-no-worker-message">`+s(n??``)+`</p>`,t+=`</div>`)}).call(this,`activeTasks`in n?n.activeTasks:typeof activeTasks<`u`?activeTasks:void 0,`errorMsg`in n?n.errorMsg:typeof errorMsg<`u`?errorMsg:void 0,`load`in n?n.load:typeof load<`u`?load:void 0,`reservedTasks`in n?n.reservedTasks:typeof reservedTasks<`u`?reservedTasks:void 0,`workerList`in n?n.workerList:typeof workerList<`u`?workerList:void 0,`workerName`in n?n.workerName:typeof workerName<`u`?workerName:void 0),t}var u=girder._,d=girder.views.View,{restRequest:f}=girder.rest,p=d.extend({events:{"click .g-worker-status-btn-reload":function(){this._fetchWorkerStatus()},"click .g-worker-task-status-link":function(e){var t=e.target.parentElement.childNodes[0].innerText;u.each(this.workers,e=>{e.name===t&&(this.workerName=t,this.activeTaskList=e.active,this.reservedTaskList=e.reserved,this.render())})}},initialize:function(){this.errorMsg=null,this._fetchWorkerStatus()},render:function(){return this.$el.html(l({workerList:this.workers,load:this.load,workerName:this.workerName,activeTasks:this.activeTaskList,reservedTasks:this.reservedTaskList,errorMsg:this.errorMsg})),this},_fetchWorkerStatus:function(){this.workers=[],this.activeTaskList=[],this.reservedTaskList=[],this.load=!0,f({method:`GET`,url:`worker/status`}).done(e=>{e===-1?this.errorMsg=`The Broker is inaccessible.`:(this.errorMsg=null,this.parseWorkerStatus(e.report,e.stats,e.ping,e.active,e.reserved)),this.load=!1,this.render()}),this.render()},parseWorkerStatus:function(e,t,n,r,i){var a=u.keys(e),o=null,s=null,c=null,l=null;u.each(a,a=>{u.has(e[a],`ok`)&&(o=e[a].ok),t[a].total!==null&&(s=u.values(t[a].total)[0]),t[a].pool!==null&&(c=t[a].pool[`max-concurrency`]),u.has(n[a],`ok`)&&(l=n[a].ok),this.workers.push({name:a,report:o,stats:s|0,concurrency:c|0,ping:l,active:r[a]||[],reserved:i[a]})}),this.workers.length||(this.errorMsg=`No task information.`)}}),m=girder.router,h=girder.events,{exposePluginConfig:g}=girder.utilities.PluginUtils;g(`worker`,`plugins/worker/config`),m.route(`plugins/worker/config`,`workerConfig`,function(){h.trigger(`g:navigateTo`,o)}),m.route(`plugins/worker/task/status`,`workerTaskStatus`,function(){h.trigger(`g:navigateTo`,p)}),girder.events.on(`g:appload.before`,()=>{let e=girder.plugins.jobs.JobStatus;e.registerStatus({WORKER_FETCHING_INPUT:{value:820,text:`Fetching input`,icon:`icon-download`,color:`#89d2e2`},WORKER_CONVERTING_INPUT:{value:821,text:`Converting input`,icon:`icon-shuffle`,color:`#92f5b5`},WORKER_CONVERTING_OUTPUT:{value:822,text:`Converting output`,icon:`icon-shuffle`,color:`#92f5b5`},WORKER_PUSHING_OUTPUT:{value:823,text:`Pushing output`,icon:`icon-upload`,color:`#89d2e2`},WORKER_CANCELING:{value:824,text:`Canceling`,icon:`icon-spin3 animate-spin`,color:`#f89406`}});let t=e.isCancelable;e.isCancelable=function(n){let r=n.get(`handler`);return r===`worker_handler`||r===`celery_handler`?[e.CANCELED,e.WORKER_CANCELING,e.SUCCESS,e.ERROR].indexOf(n.get(`status`))===-1:t(n)}})});
2
+ </p><form id="g-worker-settings-form" role="form"><div class="form-group"><label class="control-label" for="g-worker-api-url">Alternative Girder API URL</label><input class="input-sm form-control" id="g-worker-api-url" type="text" placeholder="API URL (default: auto-detected)"/></div><div class="checkbox"><label class="control-label" for="g-worker-direct-path"><input id="g-worker-direct-path" type="checkbox"/><span>When possible, send local file paths to the worker to avoid downloading files</span></label></div><p class="g-validation-failed-message" id="g-worker-settings-error-message"></p><input class="btn btn-sm btn-primary" type="submit" value="Save"/></form><button class="q-worker-task-info btn btn-default" title="Task information" style="margin-top:10px;">Task information</button>`,t}var t=girder.views.widgets.PluginConfigBreadcrumbWidget,n=girder.views.View,r=girder.events,{restRequest:i}=girder.rest,a=girder.router,o=n.extend({events:{"submit #g-worker-settings-form":function(e){e.preventDefault(),this.$(`#g-worker-settings-error-message`).empty(),this._saveSettings([{key:`worker.api_url`,value:this.$(`#g-worker-api-url`).val().trim()},{key:`worker.direct_path`,value:this.$(`#g-worker-direct-path`).is(`:checked`)}])},"click .q-worker-task-info":function(e){a.navigate(`#plugins/worker/task/status`,{trigger:!0})}},initialize:function(){i({method:`GET`,url:`system/setting`,data:{list:JSON.stringify([`worker.api_url`,`worker.direct_path`])}}).done(e=>{this.render(),this.$(`#g-worker-api-url`).val(e[`worker.api_url`]),this.$(`#g-worker-direct-path`).prop(`checked`,e[`worker.direct_path`])})},render:function(){return this.$el.html(e()),this.breadcrumb||=new t({pluginName:`Worker`,el:this.$(`.g-config-breadcrumb-container`),parentView:this}),this.breadcrumb.render(),this},_saveSettings:function(e){i({method:`PUT`,url:`system/setting`,data:{list:JSON.stringify(e)},error:null}).done(e=>{r.trigger(`g:alert`,{icon:`ok`,text:`Settings saved.`,type:`success`,timeout:4e3})}).fail(e=>{this.$(`#g-worker-settings-error-message`).text(e.responseJSON.message)})}});function s(e){var t=``+e,n=c.exec(t);if(!n)return e;var r,i,a,o=``;for(r=n.index,i=0;r<t.length;r++){switch(t.charCodeAt(r)){case 34:a=`&quot;`;break;case 38:a=`&amp;`;break;case 60:a=`&lt;`;break;case 62:a=`&gt;`;break;default:continue}i!==r&&(o+=t.substring(i,r)),i=r+1,o+=a}return i===r?o:o+t.substring(i,r)}var c=/["&<>]/;function l(e){var t=``,n=e||{};return(function(e,n,r,i,a,o){t+=`<h1 class="g-worker-status-header">Global information about workers`,t+=r?`<i class="icon-spin4 icon-spin"></i>`:`<button class="g-worker-status-btn-reload"><i class="icon-arrows-cw"></i></button>`,t+=`</h1>`,r||(t+=`<div class="g-worker-status-content">`,n===null?(t=t+`<table class="g-worker-status-table"><tr><th>`+s(`Name`)+`</th><th>`+s(`Status`)+`</th><th>`+s(`Max Concurrency`)+`</th><th>`+s(`Accepted tasks`)+`</th><th>`+s(`Running tasks`)+`</th><th>`+s(`Completed tasks`)+`</th><th>`+s(`Report`)+`</th></tr>`,(function(){var e=a;if(typeof e.length==`number`)for(var n=0,r=e.length;n<r;n++){var i=e[n];t=t+`<tr class="g-worker-task-status-link"><td>`+s(i.name??``)+`</td>`,t=i.ping===`pong`?t+`<td>`+s(`Online`)+`</td>`:t+`<td>`+s(`Offline`)+`</td>`,t=t+`<td>`+s(i.concurrency??``)+`</td><td>`+s(i.stats??``)+`</td><td>`+s(i.active.length??``)+`</td><td>`+s(i.stats-i.active.length??``)+`</td><td>`+s(i.report??``)+`</td></tr>`}else{var r=0;for(var n in e){r++;var i=e[n];t=t+`<tr class="g-worker-task-status-link"><td>`+s(i.name??``)+`</td>`,t=i.ping===`pong`?t+`<td>`+s(`Online`)+`</td>`:t+`<td>`+s(`Offline`)+`</td>`,t=t+`<td>`+s(i.concurrency??``)+`</td><td>`+s(i.stats??``)+`</td><td>`+s(i.active.length??``)+`</td><td>`+s(i.stats-i.active.length??``)+`</td><td>`+s(i.report??``)+`</td></tr>`}}}).call(this),t+=`</table>`,(e.length||i.length)&&(t=t+`<div class="g-worker-task-status"><h2 class="g-worker-status-header">`+s(o??``)+`</h2>`,e.length&&(t=t+`<h3 class="g-worker-status-header">Running Tasks</h3><table class="g-worker-task-status-table"><tr><th>`+s(`Name`)+`</th><th>`+s(`ID`)+`</th><th>`+s(`Type`)+`</th><th>`+s(`Time Start`)+`</th><th>`+s(`Arguments`)+`</th><th>`+s(`KeyWord Arguments`)+`</th><th>`+s(`Worker PID`)+`</th></tr>`,(function(){var n=e;if(typeof n.length==`number`)for(var r=0,i=n.length;r<i;r++){var a=n[r];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.time_start??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.worker_pid??``)+`</td></tr>`}else{var i=0;for(var r in n){i++;var a=n[r];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.time_start??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.worker_pid??``)+`</td></tr>`}}}).call(this),t+=`</table>`),i.length&&(t=t+`<h3 class="g-worker-status-header">Queued Tasks</h3><table class="g-worker-task-status-table"><tr><th>`+s(`Name`)+`</th><th>`+s(`ID`)+`</th><th>`+s(`Type`)+`</th><th>`+s(`Arguments`)+`</th><th>`+s(`KeyWord Arguments`)+`</th><th>`+s(`Priority`)+`</th><th>`+s(`Redelivered`)+`</th></tr>`,(function(){var e=i;if(typeof e.length==`number`)for(var n=0,r=e.length;n<r;n++){var a=e[n];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.delivery_info.priority??``)+`</td><td>`+s(a.delivery_info.redelivered??``)+`</td></tr>`}else{var r=0;for(var n in e){r++;var a=e[n];t=t+`<tr><td>`+s(a.name??``)+`</td><td>`+s(a.id??``)+`</td><td>`+s(a.type??``)+`</td><td>`+s(a.args??``)+`</td><td>`+s(a.kwargs??``)+`</td><td>`+s(a.delivery_info.priority??``)+`</td><td>`+s(a.delivery_info.redelivered??``)+`</td></tr>`}}}).call(this),t+=`</table>`),t+=`</div>`)):t=t+`<p class="g-worker-status-no-worker-message">`+s(n??``)+`</p>`,t+=`</div>`)}).call(this,`activeTasks`in n?n.activeTasks:typeof activeTasks<`u`?activeTasks:void 0,`errorMsg`in n?n.errorMsg:typeof errorMsg<`u`?errorMsg:void 0,`load`in n?n.load:typeof load<`u`?load:void 0,`reservedTasks`in n?n.reservedTasks:typeof reservedTasks<`u`?reservedTasks:void 0,`workerList`in n?n.workerList:typeof workerList<`u`?workerList:void 0,`workerName`in n?n.workerName:typeof workerName<`u`?workerName:void 0),t}var u=girder._,d=girder.views.View,{restRequest:f}=girder.rest,p=d.extend({events:{"click .g-worker-status-btn-reload":function(){this._fetchWorkerStatus()},"click .g-worker-task-status-link":function(e){var t=e.target.parentElement.childNodes[0].innerText;u.each(this.workers,e=>{e.name===t&&(this.workerName=t,this.activeTaskList=e.active,this.reservedTaskList=e.reserved,this.render())})}},initialize:function(){this.errorMsg=null,this._fetchWorkerStatus()},render:function(){return this.$el.html(l({workerList:this.workers,load:this.load,workerName:this.workerName,activeTasks:this.activeTaskList,reservedTasks:this.reservedTaskList,errorMsg:this.errorMsg})),this},_fetchWorkerStatus:function(){this.workers=[],this.activeTaskList=[],this.reservedTaskList=[],this.load=!0,f({method:`GET`,url:`worker/status`}).done(e=>{e===-1?this.errorMsg=`The Broker is inaccessible.`:(this.errorMsg=null,this.parseWorkerStatus(e.report,e.stats,e.ping,e.active,e.reserved)),this.load=!1,this.render()}),this.render()},parseWorkerStatus:function(e,t,n,r,i){var a=u.keys(e),o=null,s=null,c=null,l=null;u.each(a,a=>{u.has(e[a],`ok`)&&(o=e[a].ok),t[a].total!==null&&(s=u.values(t[a].total)[0]),t[a].pool!==null&&(c=t[a].pool[`max-concurrency`]),u.has(n[a],`ok`)&&(l=n[a].ok),this.workers.push({name:a,report:o,stats:s|0,concurrency:c|0,ping:l,active:r[a]||[],reserved:i[a]})}),this.workers.length||(this.errorMsg=`No task information.`)}}),m=girder.router,h=girder.events,{exposePluginConfig:g}=girder.utilities.PluginUtils;g(`worker`,`plugins/worker/config`),m.route(`plugins/worker/config`,`workerConfig`,function(){h.trigger(`g:navigateTo`,o)}),m.route(`plugins/worker/task/status`,`workerTaskStatus`,function(){h.trigger(`g:navigateTo`,p)}),girder.events.on(`g:appload.before`,()=>{let e=girder.plugins.jobs.JobStatus;e.registerStatus({WORKER_FETCHING_INPUT:{value:820,text:`Fetching input`,icon:`icon-download`,color:`#89d2e2`},WORKER_CONVERTING_INPUT:{value:821,text:`Converting input`,icon:`icon-shuffle`,color:`#92f5b5`},WORKER_CONVERTING_OUTPUT:{value:822,text:`Converting output`,icon:`icon-shuffle`,color:`#92f5b5`},WORKER_PUSHING_OUTPUT:{value:823,text:`Pushing output`,icon:`icon-upload`,color:`#89d2e2`},WORKER_CANCELING:{value:824,text:`Canceling`,icon:`icon-spin3 animate-spin`,color:`#f89406`}});let t=e.isCancelable;e.isCancelable=function(n){let r=n.get(`handler`);return r===`worker_handler`||r===`celery_handler`?[e.CANCELED,e.WORKER_CANCELING,e.SUCCESS,e.ERROR].indexOf(n.get(`status`))===-1:t(n)}})});
3
+ //# sourceMappingURL=girder-plugin-worker.umd.cjs.map
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: girder-plugin-worker
3
- Version: 5.0.15.dev12
3
+ Version: 5.0.15.dev16
4
4
  Summary: The Girder server plugin interfacing with girder-worker
5
5
  Home-page: http://girder.readthedocs.io/en/latest/plugins.html#worker
6
6
  Author: Kitware, Inc.
@@ -1,28 +1,28 @@
1
1
  {
2
2
  "files": [
3
3
  "MANIFEST.in",
4
- "pyproject.toml",
5
- "setup.py",
6
4
  "girder_plugin_worker/__init__.py",
5
+ "girder_plugin_worker/api/__init__.py",
6
+ "girder_plugin_worker/api/worker.py",
7
7
  "girder_plugin_worker/constants.py",
8
8
  "girder_plugin_worker/event_handlers.py",
9
9
  "girder_plugin_worker/status.py",
10
10
  "girder_plugin_worker/utils.py",
11
- "girder_plugin_worker/api/__init__.py",
12
- "girder_plugin_worker/api/worker.py",
13
11
  "girder_plugin_worker/web_client/JobStatus.js",
14
12
  "girder_plugin_worker/web_client/main.js",
15
13
  "girder_plugin_worker/web_client/package-lock.json",
16
14
  "girder_plugin_worker/web_client/package.json",
17
15
  "girder_plugin_worker/web_client/routes.js",
18
- "girder_plugin_worker/web_client/tsconfig.json",
19
- "girder_plugin_worker/web_client/vite-env.d.ts",
20
- "girder_plugin_worker/web_client/vite.config.ts",
21
16
  "girder_plugin_worker/web_client/stylesheets/jobDetailsWidget.styl",
22
17
  "girder_plugin_worker/web_client/stylesheets/taskStatusView.styl",
23
18
  "girder_plugin_worker/web_client/templates/configView.pug",
24
19
  "girder_plugin_worker/web_client/templates/taskStatusView.pug",
20
+ "girder_plugin_worker/web_client/tsconfig.json",
25
21
  "girder_plugin_worker/web_client/views/ConfigView.js",
26
- "girder_plugin_worker/web_client/views/taskStatusView.js"
22
+ "girder_plugin_worker/web_client/views/taskStatusView.js",
23
+ "girder_plugin_worker/web_client/vite-env.d.ts",
24
+ "girder_plugin_worker/web_client/vite.config.ts",
25
+ "pyproject.toml",
26
+ "setup.py"
27
27
  ]
28
28
  }
@@ -0,0 +1,8 @@
1
+ {
2
+ "tag": "5.0.14",
3
+ "distance": 16,
4
+ "node": "g59ebc95b5712c49d1df8bb77e64d498d4fce2685",
5
+ "dirty": false,
6
+ "branch": "master",
7
+ "node_date": "2026-08-11"
8
+ }
@@ -1,8 +0,0 @@
1
- {
2
- "tag": "5.0.14",
3
- "distance": 12,
4
- "node": "g103f7799794d1e6b3daa6eff70e20f860abd4c0f",
5
- "dirty": false,
6
- "branch": "master",
7
- "node_date": "2026-08-04"
8
- }