Add headless pipeline test to github actions#204
Conversation
|
Currently, there's an issue with the testing strategy. When CellProfiler runs in headless and a pipeline fails to load, the pipeline still runs and does not send a shell exit code that causes a fail in the github action. For this reason, we rely on the file test_run.sh to search the headless mode logs to see if the plugin actually ran or not. However, this strategy isn't ideal and it doesn't seem to work. For example, here's the terminal output that passed, when it really should have failed: So it seems like CellProfiler still 'ran' RunStarDist (since we can see |
|
A hacky solution we could use until we get something nicer implemented: |
|
An alternative method of testing that @bethac07 mentioned was to use the CellProfiler done file, which is returned when you add the Examples: So if the pipeline has run successfully, the done file will reflect this. However, in some quick local testing using a pipeline that contained a plugin that was incorrect (ie the plugin wasn't loading, but the pipeline still ran) I was getting a done file that said the pipeline was a success when it wasn't. However, there may be some nuance I'm missing in making the done file work as expected. The updated cellprofiler headless command in the |
|
Documentation checklist for contribution of new plugins
Additional note: |
Goal: Run pipelines composed of plugin modules in a github action to ensure there are no glaring errors.
Still to do: