Coverage for python/lsst/obs/base/cli/cmd/commands.py : 92%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1# This file is part of obs_base.
2#
3# Developed for the LSST Data Management System.
4# This product includes software developed by the LSST Project
5# (http://www.lsst.org).
6# See the COPYRIGHT file at the top-level directory of this distribution
7# for details of code ownership.
8#
9# This program is free software: you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by
11# the Free Software Foundation, either version 3 of the License, or
12# (at your option) any later version.
13#
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU General Public License for more details.
18#
19# You should have received a copy of the GNU General Public License
20# along with this program. If not, see <http://www.gnu.org/licenses/>.
22import click
24from lsst.daf.butler.cli.opt import repo_argument, config_option, config_file_option, run_option
25from lsst.daf.butler.cli.utils import cli_handle_exception
26from ..opt import instrument_option
27from ...script import ingestRaws, writeCuratedCalibrations, registerInstrument
30@click.command()
31@repo_argument(required=True)
32@config_option()
33@config_file_option()
34@run_option(required=True)
35@click.option("-d", "--dir", "directory",
36 help="The path to the directory containing the raws to ingest.")
37@click.option("-f", "--file", help="The name of a file containing raws to ingest.")
38@click.option("-t", "--transfer", help="The external data transfer type.", default="auto")
39@click.option("--ingest-task", default="lsst.obs.base.RawIngestTask", help="The fully qualified class name "
40 "of the ingest task to use.")
41def ingest_raws(*args, **kwargs):
42 cli_handle_exception(ingestRaws, *args, **kwargs)
45@click.command()
46@repo_argument(required=True)
47@instrument_option(required=True, help="The fully-qualified name of an Instrument subclass.")
48def register_instrument(*args, **kwargs):
49 """Add an instrument to the data repository.
50 """
51 cli_handle_exception(registerInstrument, *args, **kwargs)
54@click.command()
55@repo_argument(required=True)
56@instrument_option(required=True)
57@run_option(required=True)
58def write_curated_calibrations(*args, **kwargs):
59 """Add an instrument's curated calibrations to the data repository.
60 """
61 cli_handle_exception(writeCuratedCalibrations, *args, **kwargs)