-# content of: tox.ini , put in same dir as setup.py\r
-[tox]\r
-envlist=flake8,code\r
-\r
-minversion = 1.6\r
-skipsdist = True\r
-\r
-[testenv]\r
-basepython =\r
- code: python3.8\r
- flake8: python3.8\r
-setenv =\r
- VIRTUAL_ENV={envdir}\r
-\r
-# NOTE: relative paths were used due to '-w' flag for nosetests util\r
-\r
-usedevelop = True\r
-install_command = pip install -U {opts} {packages}\r
-deps = -r{toxinidir}/requirements.txt\r
- -r{toxinidir}/requirements-test.txt\r
-whitelist_externals = bash, flake8, pytest\r
-\r
-[testenv:flake8]\r
-commands =\r
- flake8 o2ims\r
- flake8 o2dms\r
- flake8 o2common\r
-\r
-[testenv:code]\r
-commands =\r
- pytest tests/unit\r
-\r
-[testenv:nosetests]\r
-commands =\r
- pytest tests/unit\r
+# content of: tox.ini , put in same dir as setup.py
+[tox]
+envlist=
+ flake8,
+ code,
+ docs,
+ docs-linkcheck,
+
+minversion = 2.0
+skipsdist = True
+
+[testenv]
+basepython =
+ code: python3
+ flake8: python3
+setenv =
+ VIRTUAL_ENV={envdir}
+
+# NOTE: relative paths were used due to '-w' flag for nosetests util
+
+usedevelop = True
+install_command = pip install -U {opts} {packages}
+deps = -r{toxinidir}/requirements.txt
+ -r{toxinidir}/requirements-test.txt
+whitelist_externals = bash, flake8, pytest
+
+[testenv:clm]
+# use pip to report dependencies with versions
+whitelist_externals = sh
+commands = sh -c 'pip freeze > requirements.txt'
+
+[testenv:flake8]
+commands =
+ flake8 o2ims
+ flake8 o2dms
+ flake8 o2common
+
+[testenv:code]
+setenv =
+ O2APP_CONFIG=configs/o2app.conf
+ ALARM_YAML=configs/alarm.yaml
+commands =
+ pytest tests/unit
+
+[testenv:nosetests]
+commands =
+ pytest tests/unit
+
+
+[testenv:docs]
+basepython = python3
+deps = -r{toxinidir}/docs/requirements-docs.txt
+
+commands =
+ sphinx-build -W -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+
+ echo "Generated docs available in {toxinidir}/docs/_build/html"
+
+allowlist_externals = echo
+
+[testenv:docs-linkcheck]
+basepython = python3
+deps = -r{toxinidir}/docs/requirements-docs.txt
+
+commands = sphinx-build -W -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck
+
+[flake8]
+extend-ignore = E231,F401