broadinstitute / fiss

FireCloud Service Selector (FISS) -- Python bindings and CLI for FireCloud execution engine
BSD 3-Clause "New" or "Revised" License
29 stars 25 forks source link

What is 'configuration namespace' #160

Open SHuang-Broad opened 3 years ago

SHuang-Broad commented 3 years ago

Hi,

We are learning how to make use of FISS, and are reading the outputs from help(fapi). I have a conceptual question: What is 'configuration namespace'? This question came up while reading the doc for get_workspace_config.

And more specifically, under the assumption that the workspace lives in Terra, would it always be the same as namespace, or practically most of the time?

Thank you! Steve from Methods group, DSP

dheiman commented 3 years ago

fiss/firecloud/api.py (often imported as fapi) is a python wrapper for the Terra API. get_workspace_config in particular is a wrapper for https://api.firecloud.org/#!/Method_Configurations/getWorkspaceMethodConfig.

If you want a definitive answer for what a "configuration namespace" is, then you will want to ask the team that maintains firecloud-orchestration.

As a fellow user, I can tell you that when you import a workflow into a workspace, you are given the option to set the namespace for its configuration, with the default being the namespace it comes from (at least in Broad Methods Repository/agora, I don't have as much experience with Dockstore). This is the namespace being referred to.

So the answer to your second question is: not in my experience, configuration namespace is a completely separate concept from workspace namespace.

On a separate note, api.py is a low-level wrapper. For enhanced features found in the command-line tool see fiss.py, which should be installed to fissfc.

SHuang-Broad commented 3 years ago

Thanks David! It's much clearer now. We do tend to import workflows into workspaces (that we have some control of) from Dockstore, which doesn't seem to have that option when importing.

Regarding api.py vs fiss.py, am I understanding this correctly, that it's preferable to use the latter? We've been studying the former, but are happy to follow the suggested practices.

Thanks! Steve