Skip to content
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

u/parejkoj/pipeline: improve docs on config overrides #430

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 7 additions & 11 deletions doc/lsst.pipe.base/creating-a-pipeline.rst
Original file line number Diff line number Diff line change
Expand Up @@ -451,15 +451,11 @@ class name of the python camera object. For instance, for an ``obs_subaru``

instrument: lsst.obs.subaru.HyperSuprimeCam
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any documentation of what order config settings are applied in (field defaults, setDefaults, general obs overrides, instrument obs overrides, top-level pipelines, included pipelines, and maybe other stuff I'm forgetting). It would be hard for the reader to make informed decisions without that kind of big picture.


The ``instrument`` key is available to all `Pipeline`\s, but by convention
obs\_* packages typically will contain `Pipeline`\s that are customized for
the instrument they represent, inside a directory named ''pipelines''. This
includes relevant configs, `PipelineTask` (re)declarations, instrument label,
etc. These pipelines can be found inside a directory named `Pipeline`\s that
lives at the root of each obs\_ package.

These `Pipeline`\ s enable you to run a `Pipeline` that is configured for the
desired camera, or can serve as a base for further `Pipeline`\ s to import.
The ``instrument`` key is available to all `Pipeline`\s, and by convention is
used in instrument-specific ``pipelines`` sub-directories, for example
``ap_pipe/pipelines/HSC`` for the instrument above. These `Pipeline`\ s enable
you to run a `Pipeline` that is configured for the desired camera, or can
serve as a base for further `Pipeline`\ s to import.

.. _pipeline-running-intro:

Expand Down Expand Up @@ -544,8 +540,8 @@ consistency throughout the software stack.
named as above.
* `Pipeline`\ s should contain a useful description of what the `Pipeline` is
intended to do.
* `Pipeline`\ s should be placed in a directory called ``Pipelines`` at the top
* `Pipeline`\ s should be placed in a directory called ``pipelines`` at the top
level of a package.
* Instrument packages should provide `Pipeline`\ s that override standard
* High level pipeline packages (e.g. ``ap_pipe``, ``drp_pipe``) should provide `Pipeline`\ s that override standard
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cp_pipe?

`Pipeline`\ s and are specifically configured for that instrument (if
applicable).