Read the Docs build information Build id: 1577783 Project: canonical-microovn Version: latest Commit: 03afdc448b4b0fe815276c66226a743ae30f4555 Date: 2023-07-04T17:09:59.912225Z State: finished Success: False [rtd-command-info] start-time: 2023-07-04T17:10:08.311224Z, end-time: 2023-07-04T17:10:08.875833Z, duration: 0, exit-code: 0 git clone --no-single-branch --depth 50 https://github.com/canonical/microovn . Cloning into '.'... [rtd-command-info] start-time: 2023-07-04T17:10:09.427307Z, end-time: 2023-07-04T17:10:09.511451Z, duration: 0, exit-code: 0 git checkout --force origin/main Note: switching to 'origin/main'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 03afdc4 Merge pull request #40 from pmatulis/add-sphinx-again [rtd-command-info] start-time: 2023-07-04T17:10:09.895785Z, end-time: 2023-07-04T17:10:09.963886Z, duration: 0, exit-code: 0 git clean -d -f -f [rtd-command-info] start-time: 2023-07-04T17:10:12.195621Z, end-time: 2023-07-04T17:10:16.971747Z, duration: 4, exit-code: 0 python3.7 -mvirtualenv $READTHEDOCS_VIRTUALENV_PATH Using base prefix '/home/docs/.pyenv/versions/3.7.9' New python executable in /home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/bin/python3.7 Also creating executable in /home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/bin/python Installing setuptools, pip, wheel... done. [rtd-command-info] start-time: 2023-07-04T17:10:17.357610Z, end-time: 2023-07-04T17:10:18.544574Z, duration: 1, exit-code: 0 python -m pip install --upgrade --no-cache-dir pip setuptools Requirement already satisfied: pip in /home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages (23.1.2) Requirement already satisfied: setuptools in /home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages (68.0.0) [rtd-command-info] start-time: 2023-07-04T17:10:18.949467Z, end-time: 2023-07-04T17:10:26.871542Z, duration: 7, exit-code: 0 python -m pip install --upgrade --no-cache-dir pillow mock==1.0.1 alabaster>=0.7,<0.8,!=0.7.5 commonmark==0.9.1 recommonmark==0.5.0 sphinx sphinx-rtd-theme readthedocs-sphinx-ext<2.3 Collecting pillow Downloading Pillow-9.5.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 69.5 MB/s eta 0:00:00 Collecting mock==1.0.1 Downloading mock-1.0.1.zip (861 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 861.9/861.9 kB 228.2 MB/s eta 0:00:00 Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Collecting alabaster!=0.7.5,<0.8,>=0.7 Downloading alabaster-0.7.13-py3-none-any.whl (13 kB) Collecting commonmark==0.9.1 Downloading commonmark-0.9.1-py2.py3-none-any.whl (51 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 51.1/51.1 kB 137.7 MB/s eta 0:00:00 Collecting recommonmark==0.5.0 Downloading recommonmark-0.5.0-py2.py3-none-any.whl (9.8 kB) Collecting sphinx Downloading sphinx-5.3.0-py3-none-any.whl (3.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 199.3 MB/s eta 0:00:00 Collecting sphinx-rtd-theme Downloading sphinx_rtd_theme-1.2.2-py2.py3-none-any.whl (2.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.8/2.8 MB 200.2 MB/s eta 0:00:00 Collecting readthedocs-sphinx-ext<2.3 Downloading readthedocs_sphinx_ext-2.2.2-py2.py3-none-any.whl (11 kB) Collecting docutils>=0.11 (from recommonmark==0.5.0) Downloading docutils-0.20.1-py3-none-any.whl (572 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 572.7/572.7 kB 225.0 MB/s eta 0:00:00 Collecting sphinxcontrib-applehelp (from sphinx) Downloading sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl (121 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 121.2/121.2 kB 204.4 MB/s eta 0:00:00 Collecting sphinxcontrib-devhelp (from sphinx) Downloading sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl (84 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 84.7/84.7 kB 168.6 MB/s eta 0:00:00 Collecting sphinxcontrib-jsmath (from sphinx) Downloading sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl (5.1 kB) Collecting sphinxcontrib-htmlhelp>=2.0.0 (from sphinx) Downloading sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl (100 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.5/100.5 kB 198.7 MB/s eta 0:00:00 Collecting sphinxcontrib-serializinghtml>=1.1.5 (from sphinx) Downloading sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl (94 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 94.0/94.0 kB 199.8 MB/s eta 0:00:00 Collecting sphinxcontrib-qthelp (from sphinx) Downloading sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl (90 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 90.6/90.6 kB 200.3 MB/s eta 0:00:00 Collecting Jinja2>=3.0 (from sphinx) Downloading Jinja2-3.1.2-py3-none-any.whl (133 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.1/133.1 kB 195.8 MB/s eta 0:00:00 Collecting Pygments>=2.12 (from sphinx) Downloading Pygments-2.15.1-py3-none-any.whl (1.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 218.7 MB/s eta 0:00:00 Collecting docutils>=0.11 (from recommonmark==0.5.0) Downloading docutils-0.19-py3-none-any.whl (570 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 570.5/570.5 kB 218.2 MB/s eta 0:00:00 Collecting snowballstemmer>=2.0 (from sphinx) Downloading snowballstemmer-2.2.0-py2.py3-none-any.whl (93 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 93.0/93.0 kB 194.2 MB/s eta 0:00:00 Collecting babel>=2.9 (from sphinx) Downloading Babel-2.12.1-py3-none-any.whl (10.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.1/10.1 MB 185.5 MB/s eta 0:00:00 Collecting imagesize>=1.3 (from sphinx) Downloading imagesize-1.4.1-py2.py3-none-any.whl (8.8 kB) Collecting requests>=2.5.0 (from sphinx) Downloading requests-2.31.0-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 kB 176.5 MB/s eta 0:00:00 Collecting packaging>=21.0 (from sphinx) Downloading packaging-23.1-py3-none-any.whl (48 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 48.9/48.9 kB 164.9 MB/s eta 0:00:00 Collecting importlib-metadata>=4.8 (from sphinx) Downloading importlib_metadata-6.7.0-py3-none-any.whl (22 kB) Collecting docutils>=0.11 (from recommonmark==0.5.0) Downloading docutils-0.18.1-py2.py3-none-any.whl (570 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 570.0/570.0 kB 211.3 MB/s eta 0:00:00 Collecting sphinxcontrib-jquery<5,>=4 (from sphinx-rtd-theme) Downloading sphinxcontrib_jquery-4.1-py2.py3-none-any.whl (121 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 121.1/121.1 kB 200.2 MB/s eta 0:00:00 Collecting pytz>=2015.7 (from babel>=2.9->sphinx) Downloading pytz-2023.3-py2.py3-none-any.whl (502 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 502.3/502.3 kB 217.9 MB/s eta 0:00:00 Collecting zipp>=0.5 (from importlib-metadata>=4.8->sphinx) Downloading zipp-3.15.0-py3-none-any.whl (6.8 kB) Collecting typing-extensions>=3.6.4 (from importlib-metadata>=4.8->sphinx) Downloading typing_extensions-4.7.1-py3-none-any.whl (33 kB) Collecting MarkupSafe>=2.0 (from Jinja2>=3.0->sphinx) Downloading MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25 kB) Collecting charset-normalizer<4,>=2 (from requests>=2.5.0->sphinx) Downloading charset_normalizer-3.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (171 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 171.0/171.0 kB 193.7 MB/s eta 0:00:00 Collecting idna<4,>=2.5 (from requests>=2.5.0->sphinx) Downloading idna-3.4-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.5/61.5 kB 171.8 MB/s eta 0:00:00 Collecting urllib3<3,>=1.21.1 (from requests>=2.5.0->sphinx) Downloading urllib3-2.0.3-py3-none-any.whl (123 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 123.6/123.6 kB 201.4 MB/s eta 0:00:00 Collecting certifi>=2017.4.17 (from requests>=2.5.0->sphinx) Downloading certifi-2023.5.7-py3-none-any.whl (156 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 157.0/157.0 kB 211.3 MB/s eta 0:00:00 Building wheels for collected packages: mock Building wheel for mock (setup.py): started Building wheel for mock (setup.py): finished with status 'done' Created wheel for mock: filename=mock-1.0.1-py3-none-any.whl size=23753 sha256=c5dcffece6371a72ff262a0ad532ef9676b5735fa0a811f3c111238c4b6e5103 Stored in directory: /tmp/pip-ephem-wheel-cache-0_ywf0gx/wheels/7a/94/b1/0fdc5339a5bd487a5cc15421ec200d9ba3e2aa7190e4a727f1 Successfully built mock Installing collected packages: snowballstemmer, pytz, mock, commonmark, zipp, urllib3, typing-extensions, sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, sphinxcontrib-jsmath, sphinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, Pygments, pillow, packaging, MarkupSafe, imagesize, idna, docutils, charset-normalizer, certifi, babel, alabaster, requests, Jinja2, importlib-metadata, sphinx, readthedocs-sphinx-ext, sphinxcontrib-jquery, recommonmark, sphinx-rtd-theme Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.3 Pygments-2.15.1 alabaster-0.7.13 babel-2.12.1 certifi-2023.5.7 charset-normalizer-3.1.0 commonmark-0.9.1 docutils-0.18.1 idna-3.4 imagesize-1.4.1 importlib-metadata-6.7.0 mock-1.0.1 packaging-23.1 pillow-9.5.0 pytz-2023.3 readthedocs-sphinx-ext-2.2.2 recommonmark-0.5.0 requests-2.31.0 snowballstemmer-2.2.0 sphinx-5.3.0 sphinx-rtd-theme-1.2.2 sphinxcontrib-applehelp-1.0.2 sphinxcontrib-devhelp-1.0.2 sphinxcontrib-htmlhelp-2.0.0 sphinxcontrib-jquery-4.1 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-1.0.3 sphinxcontrib-serializinghtml-1.1.5 typing-extensions-4.7.1 urllib3-2.0.3 zipp-3.15.0 [rtd-command-info] start-time: 2023-07-04T17:10:32.910964Z, end-time: 2023-07-04T17:10:32.998902Z, duration: 0, exit-code: 0 cat docs/conf.py import datetime import sys # Configuration file for the Sphinx documentation builder. # # For the full list of built-in configuration values, see the documentation: # https://www.sphinx-doc.org/en/master/usage/configuration.html # -- Project information ----------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information project = 'MicroOVN' author = 'Canonical Group Ltd' copyright = "%s, %s" % (datetime.date.today().year, author) # release = '1.0' # Open Graph configuration - defines what is displayed in the website preview ogp_site_url = "https://microovn.readthedocs-hosted.com/" ogp_site_name = "%project" ogp_image = "https://assets.ubuntu.com/v1/253da317-image-document-ubuntudocs.svg" # Update with the favicon for your product html_favicon = ".sphinx/_static/favicon.png" html_context = { # Change to the discourse instance you want to be able to link to # (use an empty value if you don't want to link) "discourse": "https://discourse.ubuntu.com", # Change to the GitHub info for your project "github_url": "https://github.com/canonical/microovn", # Change to the branch for this version of the documentation "github_version": "main", # Change to the folder that contains the documentation (usually "/" or # "/docs/") "github_folder": "/doc/", # Change to an empty value if your GitHub repo doesn't have issues enabled "github_issues": "" } # Used for related links - no need to change if 'discourse' in html_context: html_context['discourse_prefix'] = html_context['discourse'] + "/t/" # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration extensions = [ 'sphinx_design', 'sphinx_tabs.tabs', 'sphinx_reredirects', 'youtube-links', 'related-links', 'custom-rst-roles', 'terminal-output', 'sphinx_copybutton', 'sphinxext.opengraph', 'myst_parser' ] myst_enable_extensions = [ "substitution", "deflist" ] exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', '.sphinx'] rst_epilog = """ .. include:: /reuse/links.txt """ source_suffix = { '.rst': 'restructuredtext', '.md': 'markdown', } # Links to ignore when checking links linkcheck_ignore = [ 'http://127.0.0.1:8000' ] # -- Options for HTML output ------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output # Find the current builder builder = "dirhtml" if '-b' in sys.argv: builder = sys.argv[sys.argv.index('-b')+1] # Setting templates_path for epub makes the build fail if builder == "dirhtml" or builder == "html": templates_path = [".sphinx/_templates"] html_theme = 'furo' html_last_updated_fmt = "" html_permalinks_icon = "¶" html_theme_options = { "light_css_variables": { "color-sidebar-background-border": "none", "font-stack": "Ubuntu, -apple-system, Segoe UI, Roboto, Oxygen, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif", "font-stack--monospace": "Ubuntu Mono, Consolas, Monaco, Courier, monospace", "color-foreground-primary": "#111", "color-foreground-secondary": "var(--color-foreground-primary)", "color-foreground-muted": "#333", "color-background-secondary": "#FFF", "color-background-hover": "#f2f2f2", "color-brand-primary": "#111", "color-brand-content": "#06C", "color-api-background": "#cdcdcd", "color-inline-code-background": "rgba(0,0,0,.03)", "color-sidebar-link-text": "#111", "color-sidebar-item-background--current": "#ebebeb", "color-sidebar-item-background--hover": "#f2f2f2", "toc-font-size": "var(--font-size--small)", "color-admonition-title-background--note": "var(--color-background-primary)", "color-admonition-title-background--tip": "var(--color-background-primary)", "color-admonition-title-background--important": "var(--color-background-primary)", "color-admonition-title-background--caution": "var(--color-background-primary)", "color-admonition-title--note": "#24598F", "color-admonition-title--tip": "#24598F", "color-admonition-title--important": "#C7162B", "color-admonition-title--caution": "#F99B11", "color-highlighted-background": "#EbEbEb", "color-link-underline": "var(--color-background-primary)", "color-link-underline--hover": "var(--color-background-primary)", "color-version-popup": "#772953" }, "dark_css_variables": { "color-foreground-secondary": "var(--color-foreground-primary)", "color-foreground-muted": "#CDCDCD", "color-background-secondary": "var(--color-background-primary)", "color-background-hover": "#666", "color-brand-primary": "#fff", "color-brand-content": "#06C", "color-sidebar-link-text": "#f7f7f7", "color-sidebar-item-background--current": "#666", "color-sidebar-item-background--hover": "#333", "color-admonition-background": "transparent", "color-admonition-title-background--note": "var(--color-background-primary)", "color-admonition-title-background--tip": "var(--color-background-primary)", "color-admonition-title-background--important": "var(--color-background-primary)", "color-admonition-title-background--caution": "var(--color-background-primary)", "color-admonition-title--note": "#24598F", "color-admonition-title--tip": "#24598F", "color-admonition-title--important": "#C7162B", "color-admonition-title--caution": "#F99B11", "color-highlighted-background": "#666", "color-link-underline": "var(--color-background-primary)", "color-link-underline--hover": "var(--color-background-primary)", "color-version-popup": "#F29879" }, } html_static_path = ['.sphinx/_static'] html_css_files = [ 'custom.css', 'github_issue_links.css', ] html_js_files = [] if "github_issues" in html_context and html_context["github_issues"]: html_js_files.append('github_issue_links.js') # Set up redirects (https://documatt.gitlab.io/sphinx-reredirects/usage.html) # For example: "explanation/old-name.html": "../how-to/prettify.html", redirects = {} ########################################################################### # auto-created readthedocs.org specific configuration # ########################################################################### # # The following code was added during an automated build on readthedocs.org # It is auto created and injected for every build. The result is based on the # conf.py.tmpl file found in the readthedocs.org codebase: # https://github.com/rtfd/readthedocs.org/blob/main/readthedocs/doc_builder/templates/doc_builder/conf.py.tmpl # # Note: this file shouldn't rely on extra dependencies. import importlib import sys import os.path # Borrowed from six. PY3 = sys.version_info[0] == 3 string_types = str if PY3 else basestring from sphinx import version_info # Get suffix for proper linking to GitHub # This is deprecated in Sphinx 1.3+, # as each page can have its own suffix if globals().get('source_suffix', False): if isinstance(source_suffix, string_types): SUFFIX = source_suffix elif isinstance(source_suffix, (list, tuple)): # Sphinx >= 1.3 supports list/tuple to define multiple suffixes SUFFIX = source_suffix[0] elif isinstance(source_suffix, dict): # Sphinx >= 1.8 supports a mapping dictionary for multiple suffixes SUFFIX = list(source_suffix.keys())[0] # make a ``list()`` for py2/py3 compatibility else: # default to .rst SUFFIX = '.rst' else: SUFFIX = '.rst' # Add RTD Static Path. Add to the end because it overwrites previous files. if not 'html_static_path' in globals(): html_static_path = [] if os.path.exists('_static'): html_static_path.append('_static') # Add RTD Theme only if they aren't overriding it already using_rtd_theme = ( ( 'html_theme' in globals() and html_theme in ['default'] and # Allow people to bail with a hack of having an html_style 'html_style' not in globals() ) or 'html_theme' not in globals() ) if using_rtd_theme: html_theme = 'sphinx_rtd_theme' html_style = None html_theme_options = {} # This following legacy behavior will gradually be sliced out until its deprecated and removed. # Skipped for Sphinx 6+ # Skipped by internal Feature flag SKIP_SPHINX_HTML_THEME_PATH # Skipped by all new projects since SKIP_SPHINX_HTML_THEME_PATH's introduction (jan 2023) if ( using_rtd_theme and version_info < (6,0) and not False ): theme = importlib.import_module('sphinx_rtd_theme') if 'html_theme_path' in globals(): html_theme_path.append(theme.get_html_theme_path()) else: html_theme_path = [theme.get_html_theme_path()] # Define websupport2_base_url and websupport2_static_url if globals().get('websupport2_base_url', False): websupport2_base_url = 'https://readthedocs.com/websupport' websupport2_static_url = 'https://assets.readthedocs.com/' #Add project information to the template context. context = { 'using_theme': using_rtd_theme, 'html_theme': html_theme, 'current_version': "latest", 'version_slug': "latest", 'MEDIA_URL': "https://media.readthedocs.com/media/", 'STATIC_URL': "https://assets.readthedocs.com/", 'PRODUCTION_DOMAIN': "readthedocs.com", 'proxied_static_path': "/_/static/", 'versions': [ ], 'downloads': [ ], 'subprojects': [ ], 'slug': 'canonical-microovn', 'name': u'MicroOVN', 'rtd_language': u'en', 'programming_language': u'go', 'canonical_url': '', 'analytics_code': 'None', 'single_version': False, 'conf_py_path': '/docs/', 'api_host': 'https://readthedocs.com', 'github_user': 'canonical', 'proxied_api_host': '/_', 'github_repo': 'microovn', 'github_version': 'main', 'display_github': True, 'bitbucket_user': 'None', 'bitbucket_repo': 'None', 'bitbucket_version': 'main', 'display_bitbucket': False, 'gitlab_user': 'None', 'gitlab_repo': 'None', 'gitlab_version': 'main', 'display_gitlab': False, 'READTHEDOCS': True, 'using_theme': (html_theme == "default"), 'new_theme': (html_theme == "sphinx_rtd_theme"), 'source_suffix': SUFFIX, 'ad_free': False, 'docsearch_disabled': False, 'user_analytics_code': '', 'global_analytics_code': 'UA-17997319-2', 'commit': '03afdc44', } # For sphinx >=1.8 we can use html_baseurl to set the canonical URL. # https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-html_baseurl if version_info >= (1, 8): if not globals().get('html_baseurl'): html_baseurl = context['canonical_url'] context['canonical_url'] = None if 'html_context' in globals(): for key in context: if key not in html_context: html_context[key] = context[key] else: html_context = context # Add custom RTD extension if 'extensions' in globals(): # Insert at the beginning because it can interfere # with other extensions. # See https://github.com/rtfd/readthedocs.org/pull/4054 extensions.insert(0, "readthedocs_ext.readthedocs") else: extensions = ["readthedocs_ext.readthedocs"] # Add External version warning banner to the external version documentation if 'branch' == 'external': extensions.insert(1, "readthedocs_ext.external_version_warning") readthedocs_vcs_url = 'None' readthedocs_build_url = 'https://readthedocs.com/projects/canonical-microovn/builds/1577783/' project_language = 'en' # User's Sphinx configurations language_user = globals().get('language', None) latex_engine_user = globals().get('latex_engine', None) latex_elements_user = globals().get('latex_elements', None) # Remove this once xindy gets installed in Docker image and XINDYOPS # env variable is supported # https://github.com/rtfd/readthedocs-docker-images/pull/98 latex_use_xindy = False chinese = any([ language_user in ('zh_CN', 'zh_TW'), project_language in ('zh_CN', 'zh_TW'), ]) japanese = any([ language_user == 'ja', project_language == 'ja', ]) if chinese: latex_engine = latex_engine_user or 'xelatex' latex_elements_rtd = { 'preamble': '\\usepackage[UTF8]{ctex}\n', } latex_elements = latex_elements_user or latex_elements_rtd elif japanese: latex_engine = latex_engine_user or 'platex' # Make sure our build directory is always excluded exclude_patterns = globals().get('exclude_patterns', []) exclude_patterns.extend(['_build']) [rtd-command-info] start-time: 2023-07-04T17:10:33.849652Z, end-time: 2023-07-04T17:10:34.450164Z, duration: 0, exit-code: 2 python -m sphinx -T -E -b html -d _build/doctrees -D language=en . $READTHEDOCS_OUTPUT/html Running Sphinx v5.3.0 Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages/sphinx/registry.py", line 459, in load_extension mod = import_module(extname) File "/home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1006, in _gcd_import File "", line 983, in _find_and_load File "", line 965, in _find_and_load_unlocked ModuleNotFoundError: No module named 'sphinx_design' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages/sphinx/cmd/build.py", line 280, in build_main args.pdb) File "/home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages/sphinx/application.py", line 223, in __init__ self.setup_extension(extension) File "/home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages/sphinx/application.py", line 398, in setup_extension self.registry.load_extension(self, extname) File "/home/docs/checkouts/readthedocs.org/user_builds/canonical-microovn/envs/latest/lib/python3.7/site-packages/sphinx/registry.py", line 463, in load_extension err) from err sphinx.errors.ExtensionError: Could not import extension sphinx_design (exception: No module named 'sphinx_design') Extension error: Could not import extension sphinx_design (exception: No module named 'sphinx_design')