Enforce Spellchecker in CI
[docs.git] / docs / conf.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 # SPDX-License-Identifier: EPL-1.0
4 ##############################################################################
5 # Copyright (c) 2018 The Linux Foundation and others.
6 #
7 # All rights reserved. This program and the accompanying materials
8 # are made available under the terms of the Eclipse Public License v1.0
9 # which accompanies this distribution, and is available at
10 # http://www.eclipse.org/legal/epl-v10.html
11 ##############################################################################
12
13 from docs_conf.conf import *
14
15 # Append to intersphinx_mapping
16 intersphinx_mapping['aaa'] = ('https://docs.opendaylight.org/projects/aaa/en/latest/', None)
17 intersphinx_mapping['controller'] = ('https://docs.opendaylight.org/projects/controller/en/latest/', None)
18 intersphinx_mapping['infrautils'] = ('https://docs.opendaylight.org/projects/infrautils/en/latest/', None)
19 intersphinx_mapping['mdsal'] = ('https://docs.opendaylight.org/projects/mdsal/en/latest/', None)
20 intersphinx_mapping['netconf'] = ('https://docs.opendaylight.org/projects/netconf/en/latest/', None)
21 intersphinx_mapping['odl-integration-test'] = ('https://docs.opendaylight.org/projects/integration-test/en/latest/', None)
22 intersphinx_mapping['odl-integration-packaging'] = ('https://docs.opendaylight.org/projects/integration-packaging/en/latest/', None)
23 intersphinx_mapping['odl-releng-builder'] = ('https://docs.opendaylight.org/projects/releng-builder/en/latest/', None)
24 intersphinx_mapping['opflex'] = ('https://docs.opendaylight.org/projects/opflex/en/latest/', None)
25
26 # Projects that have stable/branches
27 intersphinx_mapping['bgpcep'] = ('https://docs.opendaylight.org/projects/bgpcep/en/latest/', None)
28 intersphinx_mapping['daexim'] = ('https://docs.opendaylight.org/projects/daexim/en/latest/', None)
29 intersphinx_mapping['genius'] = ('https://docs.opendaylight.org/projects/genius/en/latest/', None)
30 intersphinx_mapping['integration-distribution'] = ('https://docs.opendaylight.org/projects/integration-distribution/en/latest/', None)
31 intersphinx_mapping['jsonrpc'] = ('https://docs.opendaylight.org/projects/jsonrpc/en/latest/', None)
32 intersphinx_mapping['lispflowmapping'] = ('https://docs.opendaylight.org/projects/lispflowmapping/en/latest/', None)
33 intersphinx_mapping['openflowplugin'] = ('https://docs.opendaylight.org/projects/openflowplugin/en/latest/', None)
34 intersphinx_mapping['ovsdb'] = ('https://docs.opendaylight.org/projects/ovsdb/en/latest/', None)
35 intersphinx_mapping['transportpce'] = ('https://docs.opendaylight.org/projects/transportpce/en/latest/', None)
36
37 # OpenDaylight Documentation Releases
38 intersphinx_mapping['odl-phosphorus'] = ('https://docs.opendaylight.org/en/latest/', None)
39 intersphinx_mapping['odl-silicon'] = ('https://docs.opendaylight.org/en/stable-silicon/', None)
40 intersphinx_mapping['odl-aluminium'] = ('https://docs.opendaylight.org/en/stable-aluminium/', None)
41 intersphinx_mapping['odl-magnesium'] = ('https://docs.opendaylight.org/en/stable-magnesium/', None)
42 intersphinx_mapping['odl-sodium'] = ('https://docs.opendaylight.org/en/stable-sodium/', None)
43 intersphinx_mapping['odl-neon'] = ('https://docs.opendaylight.org/en/stable-neon/', None)
44 intersphinx_mapping['odl-fluorine'] = ('https://docs.opendaylight.org/en/stable-fluorine/', None)
45 intersphinx_mapping['odl-oxygen'] = ('https://docs.opendaylight.org/en/stable-oxygen/', None)
46 intersphinx_mapping['odl-nitrogen'] = ('https://docs.opendaylight.org/en/stable-nitrogen/', None)
47 intersphinx_mapping['odl-carbon'] = ('https://docs.opendaylight.org/en/stable-carbon/', None)
48
49 linkcheck_ignore = [
50     'http://localhost',
51     # Ignore ssh:// links from linkcheck
52     'ssh:',
53     # Ignore jenkins because it's often slow to respond.
54     'https://jenkins.opendaylight.org/releng',
55     'https://jenkins.opendaylight.org/sandbox',
56     # The '#' in the path makes sphinx think it's an anchor
57     'https://git.opendaylight.org/gerrit/#/admin/projects/releng/builder',
58     'https://git.opendaylight.org/gerrit/#/c/',
59     'https://git.opendaylight.org/gerrit/gitweb',
60     # URL returns a 403 Forbidden
61     'https://www.osgi.org',
62     # Ignore anchors on github.com because linkcheck fails on them
63     '^https?://github.com/.*#',
64     # Ignore webchat anchors because '#' is not an anchor for this app
65     'https://webchat.freenode.net/#',
66     # Ignore google docs anchors
67     'https://docs.google.com/presentation/d/1bnwj8CrFGo5KekONYSeIHySdkoXZiewJxkHcZjXnzkQ/edit#slide=id.g17d8ae4d92_0_137',
68     # Ignore local static contents
69     '../_static/OpenDaylight-Technical-Charter-LFN-Projects-LLC-FINAL.pdf',
70     # Ignore IETF URLs often not reachable from Jenkins minions
71     # because of hosting connectivity issues
72     '^https?://tools.ietf.org/html/.*',
73     # pending release -- to remove once published
74     'https://www.opendaylight.org/current-release-silicon',
75 ]
76 linkcheck_timeout = 300
77
78 nitpicky = True
79 release = version
80
81 spelling_warning=True
82
83 html_context = {
84     'version_status': 'supported',
85 }
86
87 def setup(app):
88     app.add_css_file("css/ribbon.css")