[tox] minversion = 1.6 envlist = checkniceness,checksyntax,checkdeletions,checkbuild,checklinks skipsdist = True [testenv] basepython = python2.7 setenv = VIRTUAL_ENV={envdir} deps = -r{toxinidir}/test-requirements.txt whitelist_externals = bash mkdir mv rsync [testenv:venv] commands = {posargs} [testenv:checklinks] commands = openstack-doc-test --check-links {posargs} [testenv:checkniceness] commands = openstack-doc-test --check-niceness {posargs} doc8 openstack-firstapp [testenv:checksyntax] commands = openstack-doc-test --check-syntax {posargs} # Check that .po and .pot files are valid: bash -c "find api* -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null" [testenv:checkdeletions] commands = openstack-doc-test --check-deletions {posargs} [testenv:checkbuild] commands = # Build and copy RST Guides # Include only environments that are (partially) written # TODO(ajaeger): We publish to content to allow for reviewing, this needs a # change of openstack-doc-tools to remove content here in the file layout # for previewing. sphinx-build -E -W -t libcloud openstack-firstapp/doc/source openstack-firstapp/build-libcloud/html mkdir -p publish-docs/openstack-firstapp-libcloud/content rsync -a openstack-firstapp/build-libcloud/html/ publish-docs/openstack-firstapp-libcloud/content/ sphinx-build -E -W -t fog openstack-firstapp/doc/source openstack-firstapp/build-fog/html mkdir -p publish-docs/openstack-firstapp-fog/content rsync -a openstack-firstapp/build-fog/html/ publish-docs/openstack-firstapp-fog/content/ # Build DocBook Guides openstack-doc-test --check-build {posargs} [testenv:publishdocs] # Prepare documents (without www) so that they can get published on # docs.openstack.org with just copying publish-docs/* over. commands = openstack-doc-test --check-build --publish --only-book api-quick-start [testenv:publishdocs-api] # Prepare documents (without www) so that they can get published on # developer.openstack.org with just copying publish-docs/api-ref over. commands = openstack-doc-test --check-build --publish --only-book api-ref --only-book api-ref-guides # We need to move api-ref-guides to the proper place: mv publish-docs/api-ref-guides publish-docs/api-ref/ # Build and copy RST Guides as draft # Include only environments that are (partially) written sphinx-build -E -W -t libcloud openstack-firstapp/doc/source openstack-firstapp/build-libcloud/html mkdir -p publish-docs/api-ref/draft/openstack-firstapp-libcloud/ rsync -a openstack-firstapp/build-libcloud/html/ publish-docs/api-ref/draft/openstack-firstapp-libcloud/ [testenv:checklang] # openstack-generate-docbook needs xml2po which cannot be installed in # the venv. Since it's installed in the system, let's use # sitepackages. sitepackages=True whitelist_externals = doc-tools-check-languages commands = doc-tools-check-languages doc-tools-check-languages.conf test all [testenv:buildlang] # Run as "tox -e buildlang -- $LANG" # openstack-generate-docbook needs xml2po which cannot be installed # in the venv. Since it's installed in the system, let's # use sitepackages. sitepackages=True whitelist_externals = doc-tools-check-languages commands = doc-tools-check-languages doc-tools-check-languages.conf test {posargs} [testenv:publishlang] # openstack-generate-docbook needs xml2po which cannot be installed # in the venv. Since it's installed in the system, let's # use sitepackages. sitepackages=True whitelist_externals = doc-tools-check-languages commands = doc-tools-check-languages doc-tools-check-languages.conf publish all [testenv:docs] commands = # Include only environments that are (partially) written sphinx-build -E -W -t libcloud openstack-firstapp/doc/source openstack-firstapp/build-libcloud/html sphinx-build -E -W -t fog openstack-firstapp/doc/source openstack-firstapp/build-fog/html [testenv:openstack-firstapp-libcloud] commands = sphinx-build -E -W -t libcloud openstack-firstapp/doc/source openstack-firstapp/build-libcloud/html [testenv:openstack-firstapp-jclouds] commands = sphinx-build -E -W -t jclouds openstack-firstapp/doc/source openstack-firstapp/build-jclouds/html [testenv:openstack-firstapp-fog] commands = sphinx-build -E -W -t fog openstack-firstapp/doc/source openstack-firstapp/build-fog/html [testenv:openstack-firstapp-dotnet] commands = sphinx-build -E -W -t dotnet openstack-firstapp/doc/source openstack-firstapp/build-dotnet/html [testenv:openstack-firstapp-node] commands = sphinx-build -E -W -t node openstack-firstapp/doc/source openstack-firstapp/build-node/html [testenv:openstack-firstapp-openstacksdk] commands = sphinx-build -E -W -t openstacksdk openstack-firstapp/doc/source openstack-firstapp/build-openstacksdk/html [testenv:openstack-firstapp-todos] commands = sphinx-build -E -W -t libcloud openstack-firstapp/doc/source openstack-firstapp/build/html [doc8] # Settings for doc8: # Ignore target directories ignore-path = openstack-firstapp/build* # File extensions to use extensions = .rst,.txt # Ignore lines longer than 79 chars ignore = D001