import sys
import os
+# project information
project = 'Ceph'
copyright = ('2016, Ceph authors and contributors. '
'Licensed under Creative Commons Attribution Share Alike 3.0 '
'(CC-BY-SA-3.0)')
version = 'dev'
release = 'dev'
+pygments_style = 'sphinx'
+
+# HTML output options
+html_theme = 'ceph'
+html_theme_path = ['_themes']
+html_title = "Ceph Documentation"
+html_logo = 'logo.png'
+html_favicon = 'favicon.ico'
+html_show_sphinx = False
+html_static_path = ["_static"]
+html_sidebars = {
+ '**': ['smarttoc.html', 'searchbox.html']
+ }
+html_css_files = ['css/custom.css']
+
+# general configuration
templates_path = ['_templates']
source_suffix = '.rst'
-master_doc = 'index'
exclude_patterns = ['**/.#*',
'**/*~',
'start/quick-common.rst',
'start/*',
'releases/*']
else:
+ master_doc = 'index'
exclude_patterns += ['man_index.rst']
-pygments_style = 'sphinx'
+build_with_rtd = os.environ.get('READTHEDOCS') == 'True'
+
+if build_with_rtd:
+ exclude_patterns += ['**/api/*',
+ '**/api.rst']
-html_theme = 'ceph'
-html_theme_path = ['_themes']
-html_title = "Ceph Documentation"
-html_logo = 'logo.png'
-html_favicon = 'favicon.ico'
-html_show_sphinx = False
-html_static_path = ["_static"]
-html_sidebars = {
- '**': ['smarttoc.html', 'searchbox.html'],
- }
-html_css_files = [
- 'css/custom.css',
-]
sys.path.insert(0, os.path.abspath('_ext'))
extensions = [
'engine': 'ditaa'
}
-build_with_rtd = os.environ.get('READTHEDOCS') == 'True'
if build_with_rtd:
extensions += ['sphinx_search.extension']
-# sphinx.ext.todo
+# sphinx.ext.todo options
todo_include_todos = True
-# sphinx_substitution_extensions
+# sphinx_substitution_extensions options
# TODO: read from doc/releases/releases.yml
rst_prolog = """
.. |stable-release| replace:: octopus
)
)
+# breath options
breathe_default_project = "Ceph"
# see $(top_srcdir)/Doxyfile
'PREDEFINED': 'CEPH_RADOS_API= '
}
+# edit_on_github options
# the docs are rendered with github links pointing to master. the javascript
# snippet in _static/ceph.js rewrites the edit links when a page is loaded, to
# point to the correct branch.
return process
-# handles edit-on-github and old version warning display
-def setup(app):
- app.add_js_file('js/ceph.js')
- if ditaa is None:
- # add "ditaa" as an alias of "diagram"
- from plantweb.directive import DiagramDirective
- app.add_directive('ditaa', DiagramDirective)
- app.connect('builder-inited',
- generate_state_diagram(['src/osd/PeeringState.h',
- 'src/osd/PeeringState.cc'],
- 'doc/dev/peering_graph.generated.dot'))
-
-
# mocking ceph_module offered by ceph-mgr. `ceph_module` is required by
# mgr.mgr_module
class Dummy(object):
return mock
+# autodoc options
sys.modules['ceph_module'] = Mock()
if build_with_rtd:
- exclude_patterns += ['**/api/*',
- '**/api.rst']
autodoc_mock_imports = ['cephfs',
'rados',
'rbd',
pybind = os.path.join(top_level, 'src', c)
if pybind not in sys.path:
sys.path.insert(0, pybind)
+
+
+# handles edit-on-github and old version warning display
+def setup(app):
+ app.add_js_file('js/ceph.js')
+ if ditaa is None:
+ # add "ditaa" as an alias of "diagram"
+ from plantweb.directive import DiagramDirective
+ app.add_directive('ditaa', DiagramDirective)
+ app.connect('builder-inited',
+ generate_state_diagram(['src/osd/PeeringState.h',
+ 'src/osd/PeeringState.cc'],
+ 'doc/dev/peering_graph.generated.dot'))