-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement general YAML to command line option functionality #8
Comments
Could you give an example? |
To convert YAML to command line arguments, you don't want to do YAML -> help message -> options but YAML -> options -> help message because the help message is usally the least structured kind of data. |
From what we discussed, I believed the biobox.yaml will be generated by the command line tool from a simplified set of arguments. If the user would like to generate a more complex biobox.yaml file, there will be the option to accept this and transform the paths. |
Well, I thought that the YAML file would be filled with values by the command line tool. So the acual structure or definition could be passed either empty or with default values and the tool could transform it into a set of command line parameters to fill in the fields. Of course, these YAML files could also sit behind the scenes not being visible to the user. This would save us the effort to implement each and every individual specification in the wrapper script. |
Well, I thought that the YAML file would be filled with values by the
command line tool. So the acual structure or definition could be passed
either empty or with default values and the tool could transform it into
a set of command line parameters to fill in the fields.
Yes I agree. This is what the current implementation is doing.
Of course, these YAML files could also sit behind the scenes not being
visible to the user. This would save us the effort to implement each and
every individual specification in the wrapper script.
My preference is for a CLI simplified interface that should cover 90% of
use cases. For example in the case of the genome assembly I believe this is
mostly assembling a single fastq library into contigs.
I think however, as you mentioned, having the option to pass your own
biobox.yaml file instead of other CLI options would be useful since
coordinating mounting paths between the biobox.yaml file and the container
is somewhat annoying.
|
Hi @michaelbarton,
I propose to write a biobox YAML to argparse object parser which seems to be the new Python standard option parsing module (https://docs.python.org/3/library/argparse.html). docopt gives a nice start but IMO for more complex examples going from the object to the help message is better than the other way around.
The text was updated successfully, but these errors were encountered: