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

rename `wrapper` calls/scripts #143

Open ilaflott opened 1 month ago

ilaflott commented 1 month ago

Is your feature request related to a problem? Please describe. @cwhitlock-NOAA, @ceblanton, and myself all agree the wrapper needs a different, less confusing name.

Possible choices @ceblanton suggested fre pp wrapper <args> could easily become fre pp <args>. I do not dislike this idea, but worry it goes against the fre <tool> <subtool> pattern we decided we liked.

@cwhitlock-NOAA considered fre pp all <args> in a meeting.

I myself have suggested fre pp vir <args> (vir == Validation, Installation, Run).

Additional context Personally, a little agnostic as to what we land on. But, whatever we land on should have some logic to it that's obvious.

ceblanton commented 1 month ago

I don't dislike fre pp all but if we can make it more clear that would be better.

I like fre pp vir but wonder if we should add another "i" since we're installing two things, sort of:

fre pp viir? or can we conflate the two "installs" into one for this purpose?

ilaflott commented 1 month ago

I think you're referring to the checkout step as an install? if we were to include that, in shell, without one-command, it would look like:

fre pp checkout <args>
cd /path/to/checked/out/workflow/code
fre pp validate <args>
fre pp install <args>
fre pp run <args>

so if we're including the checkout step, i'd think fre pp vir should instead be fre pp cvir

ceblanton commented 1 month ago

How about fre pp vcir? lol

Validate before checking out the workflow definition.

fre pp validate <args>
fre pp checkout <args>
fre pp install <args>
fre pp run <args>
ilaflott commented 1 month ago

currently, the way this works is fre pp validate calls rose macro --validate and cylc validate . (see here). So fre pp validate before fre pp checkout should fail, or no-op

ceblanton commented 1 month ago

Aha... you're right that the validation is goofy now. We've discussed that we have 3 types of validation

I propose we transition to the first one, YAML validation, and eventually retire the last two. For now, we should run them, and if there's a problem, tell the user to fix the YAML and try again (i.e. not fix rose-suite.conf and try again).

ceblanton commented 1 month ago

The checkout step could be considered part of the installation. It's installing the workflow definition :)