NOAA-GFDL / fre-cli

Python-based command line interface for FRE (FMS Runtime Environment) to compile and run FMS-based models and post-process their output.
GNU Lesser General Public License v3.0
3 stars 7 forks source link

fre pp validate doesn't check for circular dependencies in large workflows #106

Open ilaflott opened 2 months ago

ilaflott commented 2 months ago

fre pp validate calls cylc validate, but without the --check-circular flag for avoiding circular task dependencies in a workflow. As a result, we get the following output:

$] fre pp validate -e FOO_exp -p BAR_platform -t BAZ_target
[INFO] app/analysis/rose-app.conf
[INFO] app/combine-statics/rose-app.conf
[INFO] app/combine-timeavgs/rose-app.conf
[INFO] app/make-timeavgs/rose-app.conf
[INFO] app/make-timeseries/rose-app.conf
[INFO] app/mask-atmos-plevel/rose-app.conf
[INFO] app/regrid-xy/rose-app.conf
[INFO] app/remap-pp-components/rose-app.conf
[INFO] app/rename-split-to-pp/rose-app.conf
[INFO] app/split-netcdf-python/rose-app.conf
[INFO] app/split-netcdf/rose-app.conf
[INFO] rose-suite.conf
...
...
...
WARNING - Number of tasks is > 100; will not check graph for circular dependencies. To enforce this check, use the option --check-circular.
Valid for cylc-8.3.0

A successful solution to this issue adds the --check-circular flag the appropriate spot in fre-cli, and as a result, the above warning will not be shown upon successful workflow configuration.