Add checkfeaturelist validation to checkstyle.
Fix two files with errors.
Type: docs
Change-Id: I81eda0e25b271f2006b4da22efdf7218d52a67d3
Signed-off-by: Ole Troan <ot@cisco.com>
DEB_DEPENDS += python-all python3-all python3-setuptools python-dev
DEB_DEPENDS += python-virtualenv python-pip libffi6 check
DEB_DEPENDS += libboost-all-dev libffi-dev python3-ply libmbedtls-dev
-DEB_DEPENDS += cmake ninja-build uuid-dev python3-jsonschema python3-yaml yamllint
+DEB_DEPENDS += cmake ninja-build uuid-dev python3-jsonschema python3-yaml
DEB_DEPENDS += python3-venv # ensurepip
DEB_DEPENDS += python3-dev # needed for python3 -m pip install psutil
# python3.6 on 16.04 requires python36-dev
RPM_DEPENDS += ninja-build
RPM_DEPENDS += libuuid-devel
RPM_DEPENDS += mbedtls-devel
-RPM_DEPENDS += yamllint
RPM_DEPENDS += python3-devel # needed for python3 -m pip install psutil
ifeq ($(OS_ID),fedora)
@cscope -b -q -v
.PHONY: checkstyle
-checkstyle:
+checkstyle: checkfeaturelist
@build-root/scripts/checkstyle.sh
- yamllint $(WS_ROOT)/src
.PHONY: checkstyle-commit
checkstyle-commit:
.PHONY: checkfeaturelist
checkfeaturelist: centos-pyyaml
- @build-root/scripts/fts.py --validate --git-status
+ @build-root/scripts/fts.py --validate --all
#
# Build the documentation
import yaml
from pprint import pprint
import re
-from jsonschema import validate
+from jsonschema import validate, exceptions
import argparse
from subprocess import run, PIPE
print('# {}'.format(v['name']))
if type(v['maintainer']) is list:
print('Maintainers: ' +
- ', '.join('{}'.format(m) for m in v['maintainer']))
+ ', '.join('{}'.format(m) for m in
+ v['maintainer']) + ' ')
else:
print('Maintainer: {} '.format(v['maintainer']))
- print('State: {}\n'.format(v['state']))
+ print('State: {} \n'.format(v['state']))
print('{}\n'.format(v['description']))
output_features(0, v['features'])
if 'missing' in v:
# Load configuration file
with open(featurefile) as f:
cfg = yaml.load(f, Loader=yaml.SafeLoader)
- validate(instance=cfg, schema=schema)
+ try:
+ validate(instance=cfg, schema=schema)
+ except exceptions.ValidationError:
+ print('File does not validate: {}'.format(featurefile),
+ file=sys.stderr)
+ raise
features[featurefile] = cfg
if args.markdown:
features:
- BFD protocol implementation
description: "Bidirectional Forwarding Detection implementation"
-missing:
state: production
properties: [API, CLI, STATS, MULTITHREAD]
features:
- link layer discovery protocol implementation
description: "Link Layer Discovery Protocol implementation"
-missing:
state: production
properties: [API, CLI, STATS, MULTITHREAD]