mirror of
https://github.com/pre-commit/pre-commit-hooks.git
synced 2025-08-14 17:31:28 +08:00
32 lines
680 B
Python
32 lines
680 B
Python
from __future__ import print_function
|
|
|
|
import argparse
|
|
import sys
|
|
|
|
import yaml
|
|
|
|
|
|
try:
|
|
from yaml.cyaml import CLoader as Loader
|
|
except ImportError: # pragma: no cover (no libyaml-dev / pypy)
|
|
Loader = yaml.Loader
|
|
|
|
|
|
def check_yaml(argv=None):
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument('filenames', nargs='*', help='Yaml filenames to check.')
|
|
args = parser.parse_args(argv)
|
|
|
|
retval = 0
|
|
for filename in args.filenames:
|
|
try:
|
|
yaml.load(open(filename), Loader=Loader)
|
|
except yaml.YAMLError as exc:
|
|
print(exc)
|
|
retval = 1
|
|
return retval
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.exit(check_yaml())
|