Coverage for python/lsst/daf/butler/cli/cmd/config_validate.py : 59%

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 daf_butler.
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 ... import Butler, ValidationError
25from ..opt import dataset_type_option, repo_option
26from ..utils import split_commas
29@click.command()
30@click.pass_context
31@repo_option(required=True)
32@click.option("--quiet", "-q", is_flag=True, help="Do not report individual failures.")
33@dataset_type_option(help="Specific DatasetType(s) to validate.")
34@click.option("--ignore", "-i", type=str, multiple=True, callback=split_commas,
35 help="DatasetType(s) to ignore for validation.")
36def config_validate(ctx, repo, quiet, dataset_type, ignore):
37 """Validate the configuration files for a Gen3 Butler repository."""
38 logFailures = not quiet
39 butler = Butler(config=repo)
40 try:
41 butler.validateConfiguration(logFailures=logFailures, datasetTypeNames=dataset_type, ignore=ignore)
42 except ValidationError:
43 ctx.exit(1)
44 click.echo("No problems encountered with configuration.")