summaryrefslogtreecommitdiff
path: root/docs/_ext/vyos.py
diff options
context:
space:
mode:
authorRobert Göhler <github@ghlr.de>2021-06-24 21:01:53 +0200
committerGitHub <noreply@github.com>2021-06-24 21:01:53 +0200
commitfdab6636c4a92d5d4259a4d6adfcd820e6826196 (patch)
tree05d8f7de2eb917beafcd782118c5fde90d62d613 /docs/_ext/vyos.py
parent4501b59081039ba8ca947fab93f5efe266a3eb69 (diff)
parent18e33cb14ab78c9899d9f9709e5810f3e11642b1 (diff)
downloadvyos-documentation-fdab6636c4a92d5d4259a4d6adfcd820e6826196.tar.gz
vyos-documentation-fdab6636c4a92d5d4259a4d6adfcd820e6826196.zip
Merge pull request #555 from rebortg/metadata
vyos: add proofread meta data test
Diffstat (limited to 'docs/_ext/vyos.py')
-rw-r--r--docs/_ext/vyos.py26
1 files changed, 25 insertions, 1 deletions
diff --git a/docs/_ext/vyos.py b/docs/_ext/vyos.py
index 46ebae36..0a198821 100644
--- a/docs/_ext/vyos.py
+++ b/docs/_ext/vyos.py
@@ -1,6 +1,7 @@
import re
import json
import os
+from datetime import datetime
from docutils import io, nodes, utils, statemachine
from docutils.parsers.rst.roles import set_classes
from docutils.parsers.rst import Directive, directives, states
@@ -9,6 +10,9 @@ from sphinx.util.docutils import SphinxDirective
from testcoverage import get_working_commands
+from sphinx.util import logging
+
+logger = logging.getLogger(__name__)
def setup(app):
@@ -74,6 +78,7 @@ def setup(app):
app.add_directive('opcmd', OpCmdDirective)
app.add_directive('cmdinclude', CfgInclude)
app.connect('doctree-resolved', process_cmd_nodes)
+ app.connect('doctree-read', handle_document_meta_data)
class CfgcmdList(nodes.General, nodes.Element):
pass
@@ -640,4 +645,23 @@ def vytask_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
def cmd_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
node = nodes.literal(text, text)
- return [node], [] \ No newline at end of file
+ return [node], []
+
+
+def handle_document_meta_data(app, document):
+ docname = app.env.docname
+ lastproofread = app.env.metadata[docname].get('lastproofread', False)
+ if lastproofread:
+ try:
+ lastproofread_time = datetime.strptime(lastproofread, '%Y-%m-%d')
+ delta = datetime.now() - lastproofread_time
+ if delta.days > 180:
+ logger.warning(f'{delta.days} days since last proofread {app.env.doc2path(docname)}')
+
+ except Exception as e:
+ logger.warning(f'lastproofread meta data error in {app.env.doc2path(docname)}: {e}')
+ else:
+ pass
+ #logger.warning(f'lastproofread meta data missing in {app.env.doc2path(docname)}')
+
+