aboutsummaryrefslogtreecommitdiffstats
path: root/src/scripts/fts.py
diff options
context:
space:
mode:
authorOle Troan <ot@cisco.com>2020-01-02 22:32:57 +0100
committerPaul Vinciguerra <pvinci@vinciconsulting.com>2020-01-03 03:57:29 +0000
commite774a8b38983d9848f71efdb1bb0c41ba36039f3 (patch)
treeeae174f6c8ca10d8fa6e72060f09ba6a3fa39251 /src/scripts/fts.py
parent8ef8f8f7937ba2939ea0550e832eaa77d0c73203 (diff)
nat: add feature.yaml
And add support for multiple maintainers in JSON schema. Type: docs Change-Id: Ice430927ceecf53526a3fdf46c075a95206bf0ac Signed-off-by: Ole Troan <ot@cisco.com>
Diffstat (limited to 'src/scripts/fts.py')
-rwxr-xr-xsrc/scripts/fts.py18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/scripts/fts.py b/src/scripts/fts.py
index eb44be9a59a..f3165ced0cd 100755
--- a/src/scripts/fts.py
+++ b/src/scripts/fts.py
@@ -17,9 +17,9 @@ schema = {
"properties": {
"name": {"type": "string"},
"description": {"type": "string"},
- "maintainer": {"type": "string"},
+ "maintainer": {"$ref": "#/definitions/maintainers"},
"state": {"type": "string",
- "enum": ["production", "experimental"]},
+ "enum": ["production", "experimental", "development"]},
"features": {"$ref": "#/definitions/features"},
"missing": {"$ref": "#/definitions/features"},
"properties": {"type": "array",
@@ -30,6 +30,14 @@ schema = {
},
"additionalProperties": False,
"definitions": {
+ "maintainers": {
+ "anyof": [{
+ "type": "array",
+ "items": {"type": "string"},
+ "minItems": 1,
+ },
+ {"type": "string"}],
+ },
"featureobject": {
"type": "object",
"patternProperties": {
@@ -86,7 +94,11 @@ def output_features(indent, fl):
def output_markdown(features):
for k, v in features.items():
print('# {}'.format(v['name']))
- print('Maintainer: {} '.format(v['maintainer']))
+ if type(v['maintainer']) is list:
+ print('Maintainers: ' +
+ ', '.join('{}'.format(m) for m in v['maintainer']))
+ else:
+ print('Maintainer: {} '.format(v['maintainer']))
print('State: {}\n'.format(v['state']))
print('{}\n'.format(v['description']))
output_features(0, v['features'])