mirror of
https://github.com/adrienverge/yamllint.git
synced 2025-02-25 18:55:20 -06:00
cli: Add the -d
option to provide inline conf
This commit is contained in:
parent
4e188f8801
commit
7688567faa
@ -57,6 +57,9 @@ Usage
|
|||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
|
# Use a pre-defined lint configuration
|
||||||
|
yamllint -d relaxed file.yml
|
||||||
|
|
||||||
# Use a custom lint configuration
|
# Use a custom lint configuration
|
||||||
yamllint -c ~/myconfig file.yml
|
yamllint -c ~/myconfig file.yml
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ settings can be gathered in a configuration file.
|
|||||||
To use a custom configuration file, either name it ``.yamllint`` in your working
|
To use a custom configuration file, either name it ``.yamllint`` in your working
|
||||||
directory, or use the ``-c`` option:
|
directory, or use the ``-c`` option:
|
||||||
|
|
||||||
::
|
.. code:: bash
|
||||||
|
|
||||||
yamllint -c ~/myconfig file.yml
|
yamllint -c ~/myconfig file.yml
|
||||||
|
|
||||||
@ -22,6 +22,15 @@ Unless told otherwise, yamllint uses its ``default`` configuration:
|
|||||||
|
|
||||||
Details on rules can be found on :doc:`the rules page <rules>`.
|
Details on rules can be found on :doc:`the rules page <rules>`.
|
||||||
|
|
||||||
|
There is another pre-defined configuration named ``relaxed``. As its name
|
||||||
|
suggests, it is more tolerant.
|
||||||
|
|
||||||
|
It can be chosen using:
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
yamllint -d relaxed file.yml
|
||||||
|
|
||||||
Extending the default configuration
|
Extending the default configuration
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
|
||||||
@ -63,6 +72,21 @@ strict on block sequences indentation:
|
|||||||
indentation:
|
indentation:
|
||||||
indent-sequences: whatever
|
indent-sequences: whatever
|
||||||
|
|
||||||
|
Custom configuration without a config file
|
||||||
|
------------------------------------------
|
||||||
|
|
||||||
|
It is possible -- although not recommended -- to pass custom configuration
|
||||||
|
options to yamllint with the ``-d`` (short for ``--config-data``) option.
|
||||||
|
|
||||||
|
Its content can either be the name of a pre-defined conf (example: ``default``
|
||||||
|
or ``relaxed``) or a serialized YAML object describing the configuration.
|
||||||
|
|
||||||
|
For instance:
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" file.yml
|
||||||
|
|
||||||
Errors and warnings
|
Errors and warnings
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
|
@ -66,8 +66,11 @@ def run(argv=None):
|
|||||||
description=APP_DESCRIPTION)
|
description=APP_DESCRIPTION)
|
||||||
parser.add_argument('files', metavar='FILE_OR_DIR', nargs='+',
|
parser.add_argument('files', metavar='FILE_OR_DIR', nargs='+',
|
||||||
help='files to check')
|
help='files to check')
|
||||||
parser.add_argument('-c', '--config', dest='config_file', action='store',
|
parser.add_argument('-c', '--config-file', dest='config_file',
|
||||||
help='path to a custom configuration')
|
action='store', help='path to a custom configuration')
|
||||||
|
parser.add_argument('-d', '--config-data', dest='config_data',
|
||||||
|
action='store',
|
||||||
|
help='custom configuration (as YAML source)')
|
||||||
parser.add_argument('-f', '--format',
|
parser.add_argument('-f', '--format',
|
||||||
choices=('parsable', 'standard'), default='standard',
|
choices=('parsable', 'standard'), default='standard',
|
||||||
help='format for parsing output')
|
help='format for parsing output')
|
||||||
@ -78,8 +81,17 @@ def run(argv=None):
|
|||||||
|
|
||||||
args = parser.parse_args(argv)
|
args = parser.parse_args(argv)
|
||||||
|
|
||||||
|
if args.config_file is not None and args.config_data is not None:
|
||||||
|
print('Options --config-file and --config-data cannot be used '
|
||||||
|
'simultaneously.', file=sys.stderr)
|
||||||
|
sys.exit(-1)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if args.config_file is not None:
|
if args.config_data is not None:
|
||||||
|
if ':' not in args.config_data:
|
||||||
|
args.config_data = 'extends: ' + args.config_data
|
||||||
|
conf = YamlLintConfig(content=args.config_data)
|
||||||
|
elif args.config_file is not None:
|
||||||
conf = YamlLintConfig(file=args.config_file)
|
conf = YamlLintConfig(file=args.config_file)
|
||||||
elif os.path.isfile('.yamllint'):
|
elif os.path.isfile('.yamllint'):
|
||||||
conf = YamlLintConfig(file='.yamllint')
|
conf = YamlLintConfig(file='.yamllint')
|
||||||
|
Loading…
Reference in New Issue
Block a user