-
Notifications
You must be signed in to change notification settings - Fork 306
Dockerized web workflow tries to run directly if "Edit XML" or "Advanced Edit" #2151
Description
Describe the bug
Using the Dockerized web interface -- if the user tries to edit the PEcAn XML through the web interface, the web container tries to execute the workflow itself (i.e. by calling $Rbinary) rather than posting a message to RabbitMQ to trigger the executor container. This silently fails (i.e. web workflow hangs) because none of the required components (including R itself) are available on the web container.
To Reproduce
Steps to reproduce the behavior:
- Run the Dockerized PEcAn web workflow.
- Select "Edit PEcAn XML"
- Save the XML and try to proceed with the workflow.
The "Job executing" page should hang with no output. A tiny little message in the web container logs will show something like sh: /usr/bin/R not found.
Expected behavior
Web container should post a message to RabbitMQ after PEcAn edit, which will be picked up by the executor and the workflow will proceed as before.
Machine (please complete the following information):
PEcAn Docker.
Proposed solution
Add the RabbitMQ submission code from 04-runpecan.php to whatever happens after pecan_edit, model_edit, etc.
As a band-aid, this can be copy-pasted, but a better solution would involve writing a PHP function (in common.php) to send a RabbitMQ message, which can then be re-used more easily.