% import json

{{warning_msg}}

Status of Lorry Controller

% if links: % if running_queue:

New jobs are allowed.

% else:

New jobs are NOT allowed.

% end % else: % if running_queue:

New jobs are allowed.

% else:

New jobs are NOT allowed.

% end % end % if links:

% end

Maximum number of jobs: {{max_jobs}}.

Free disk space: {{disk_free_gib}} GiB.

Remote Troves

% for trove_info in troves: % end
Trove host Due for re-scan of remote repositories
{{trove_info['trovehost']}} {{trove_info['ls_due_nice']}}

Currently running jobs

% if len(run_queue) == 0:

There are no jobs running at this time.

% else: % for spec in run_queue: % if spec['running_job'] is not None: % if links: % else: % end % end % end
Job ID path
{{spec['running_job']}} {{spec['path']}}
{{spec['running_job']}} {{spec['path']}}
% end % if links:

See separate list of all jobs that have ever been started.

% end

Run-queue

% for i, spec in enumerate(run_queue): % obj = json.loads(spec['text']) % name = obj.keys()[0] % fields = obj[name] % if links: % else: % end % if publish_failures and spec['last_run_exit'] is not None and spec['last_run_exit'] is not "0": % else: % end % if spec['running_job'] and links: % else: % end % end
Pos Path Interval Due Job? Last run exit
{{i+1}}{{spec['path']}}{{spec['path']}}{{spec['interval_nice']}} {{spec['due_nice']}}
{{spec['last_run_exit']}}: Show log

{{spec['last_run_error']}}

{{spec['last_run_exit']}}{{spec['running_job']}}

Updated: {{timestamp}}