diff options
author | Ole Troan <ot@cisco.com> | 2020-01-03 16:37:27 +0100 |
---|---|---|
committer | Paul Vinciguerra <pvinci@vinciconsulting.com> | 2020-01-04 16:14:04 +0000 |
commit | f3aebda7eace119444c88df52fb8d6c3e9f4323b (patch) | |
tree | d26b359b225681ff3f37a685e7635f727bb5ce8e | |
parent | 69c2a5895a7233076fdf4328a80bd0777931d159 (diff) |
misc: fix feature.yaml
Add checkfeaturelist validation to checkstyle.
Fix two files with errors.
Type: docs
Change-Id: I81eda0e25b271f2006b4da22efdf7218d52a67d3
Signed-off-by: Ole Troan <ot@cisco.com>
-rw-r--r-- | Makefile | 8 | ||||
-rwxr-xr-x | src/scripts/fts.py | 14 | ||||
-rw-r--r-- | src/vnet/bfd/FEATURE.yaml | 1 | ||||
-rw-r--r-- | src/vnet/lldp/FEATURE.yaml | 1 |
4 files changed, 13 insertions, 11 deletions
@@ -68,7 +68,7 @@ DEB_DEPENDS += lcov chrpath autoconf indent clang-format libnuma-dev 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 @@ -93,7 +93,6 @@ RPM_DEPENDS += selinux-policy selinux-policy-devel 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) @@ -629,9 +628,8 @@ cscope: cscope.files @cscope -b -q -v .PHONY: checkstyle -checkstyle: +checkstyle: checkfeaturelist @build-root/scripts/checkstyle.sh - yamllint $(WS_ROOT)/src .PHONY: checkstyle-commit checkstyle-commit: @@ -665,7 +663,7 @@ featurelist: centos-pyyaml .PHONY: checkfeaturelist checkfeaturelist: centos-pyyaml - @build-root/scripts/fts.py --validate --git-status + @build-root/scripts/fts.py --validate --all # # Build the documentation diff --git a/src/scripts/fts.py b/src/scripts/fts.py index f3165ced0cd..750b73f8dcc 100755 --- a/src/scripts/fts.py +++ b/src/scripts/fts.py @@ -6,7 +6,7 @@ import ipaddress import yaml from pprint import pprint import re -from jsonschema import validate +from jsonschema import validate, exceptions import argparse from subprocess import run, PIPE @@ -96,10 +96,11 @@ def output_markdown(features): 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: @@ -137,7 +138,12 @@ def main(): # 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: diff --git a/src/vnet/bfd/FEATURE.yaml b/src/vnet/bfd/FEATURE.yaml index cf0e300f2fe..5c14281f6db 100644 --- a/src/vnet/bfd/FEATURE.yaml +++ b/src/vnet/bfd/FEATURE.yaml @@ -4,6 +4,5 @@ maintainer: Klement Sekera <ksekera@cisco.com> features: - BFD protocol implementation description: "Bidirectional Forwarding Detection implementation" -missing: state: production properties: [API, CLI, STATS, MULTITHREAD] diff --git a/src/vnet/lldp/FEATURE.yaml b/src/vnet/lldp/FEATURE.yaml index 9672269eeea..0d3277d53ab 100644 --- a/src/vnet/lldp/FEATURE.yaml +++ b/src/vnet/lldp/FEATURE.yaml @@ -4,6 +4,5 @@ maintainer: Klement Sekera <ksekera@cisco.com> features: - link layer discovery protocol implementation description: "Link Layer Discovery Protocol implementation" -missing: state: production properties: [API, CLI, STATS, MULTITHREAD] |