[bug?] Can't clean remote jobs from the gui if platform not set at launch

Following the wonderful help I received here, I’m now able to run jobs from on my remote cluster, orchestrated from my local computer.

However if I tried to clean them (after they’re stopped) from the web GUI, I got:

Command failed: clean - CylcError: Clean failed:
Workflow: basic_cycle_python/run1
Error: Cannot clean my_flow/run1 on remote platforms as the workflow database is out of date/inconsistent with the global config - No matching platform "ada" found

However, if I used cylc clean my_flow (from my local machine, same as the GUI), then everything worked fine:

INFO - Cleaning basic_cycle_python/run1 on install target: ada
INFO - [ada]
    INFO - Removing directory: /home/[xxx]/cylc-run/my_flow/run1
    INFO - Removing directory: /home/[xxx]/cylc-run/my_flow
INFO - Removing directory: /home/[xxx]/cylc-run/my_flow/run1
INFO - Removing directory: /home/[xxx]/cylc-run/my_flow/_cylc-install
INFO - Removing directory: /home/[xxx]/cylc-run/my_flow

After a bit of fiddling around, here’s what I think happens: for some reason, the GUI sources global.cylc at launch. If a platform is added after the GUI is launched, then the GUI won’t recognize it, and won’t allow cleaning.

This clearly feels like a bug, since for every other command (start/stop, kill, …) the GUI works fine.

Yeah, I think the UI Server only loads the global config, which includes platforms definitions, at start-up.

I wouldn’t say it’s a high priority bug - platforms definitions don’t tend to change much, and you can just restart your UI Server - but I’ll post an issue on GitHub to consider periodic reloading of global config.

1 Like

(Note, at present both workflows and cylc gui servers must be restarted to pick up changes to the global config)