Heads up:
We’re moving the GATK website, docs and forum to a new platform. Read the full story and breakdown of key changes on this blog.

Documentation for uploading methods to FireCloud

ericco92ericco92 Cambridge, UKMember ✭✭


I noticed over the weekend that the old FireCloud CLI finally stopped working. I have switched to FISS, but it's documentation is pretty barren. For years I've been able to follow this excellent tutorial from y'all: https://docs.google.com/document/d/1SExJeNoxKGBClPYKtGFfQ0K0bGN2nQeuh_iIkxEt3TY/edit

I've started rolling my own tutorial/Dockerfile as a way to remind myself of the steps. It's available here: https://github.com/hpcb-lab/tutorials/blob/master/firecloud.md . Is there perhaps a public-facing tutorial I've missed?



  • dheimandheiman Member, Broadie ✭✭

    FISS is self documenting - fissfc -l both lists and searches commands, fissfc -F <cmd> gives the code of the command, and fissfc <cmd> -h gives documentation for the command

    If you're looking for a tool for building/testing/uploading methods to FireCloud, there is Hydrant as well.

  • ericco92ericco92 Cambridge, UKMember ✭✭

    Hydrant looks excellent - I'll definitely check that out.

    I grew up on samtools-style command line help, which succinctly outlines each command when only the base command is passed (example included at the bottom here). I found the fiss help command to be less intuitive than I had hoped:
    1. FISS requires a command to run, but those commands aren't listed by default.
    2.fissfc -h returns the same help text as fissfc, and still doesn't list commands. Would it be possible to print basic help when running fissfc and detailed help when passing -h ?
    3. fissfc -l lists commands, but doesn't list what they do.
    4. There are 62 commands printed to the terminal when fissfc -l is run, but no descriptions and no organization besides alphabetization. Breaking them down by section (e.g. "configs", "methods", "attr") would help make it more accessible.
    5. FISS commands are not always self-descriptive. meth_new both adds a new method and updates an existing one, for example. fissfc meth_new -h describes it as: Install a method definition to the repository, which does not reflect it's true behavior. I had to find out how to update a method by reading the source code.

    I'm not familiar with the way fissfc does commands in python using decorators (which looks very elegant), but I'd be happy to learn and make a pull request on the FISS github repo if someone could make an example of how the help text could be modified for a given command.


  • SChaluvadiSChaluvadi Member, Broadie, Moderator admin

    We currently do not have any documentation from the FireCloud support end for FISS. The best way to get information and documentation would be through the GitHub page for FISS as linked above!

Sign In or Register to comment.