From 3c62f730a1f7cbcc0bc497d335e185c45db0d832 Mon Sep 17 00:00:00 2001 From: Julia Kreger Date: Wed, 16 Dec 2015 10:31:37 -0500 Subject: [PATCH] Initial support for Reno Since everyone is going to reno, why not bifrost as well. Adds basic substrate for reno, which may be incorrect, however that can be addressed as time goes on. Change-Id: I36caf7682de56917be90bed14e290c5509c7fa86 --- .gitignore | 3 + ...nitial-release-notes-937001279bbb52cd.yaml | 6 ++ releasenotes/source/conf.py | 76 +++++++++++++++++++ releasenotes/source/index.rst | 6 ++ test-requirements.txt | 1 + tox.ini | 3 + 6 files changed, 95 insertions(+) create mode 100644 releasenotes/notes/initial-release-notes-937001279bbb52cd.yaml create mode 100755 releasenotes/source/conf.py create mode 100644 releasenotes/source/index.rst diff --git a/.gitignore b/.gitignore index e516fbcfd..bde48daa6 100644 --- a/.gitignore +++ b/.gitignore @@ -55,3 +55,6 @@ ChangeLog # test-bifrost log output logs + +#Files created by release notes generation +releasenotes/build diff --git a/releasenotes/notes/initial-release-notes-937001279bbb52cd.yaml b/releasenotes/notes/initial-release-notes-937001279bbb52cd.yaml new file mode 100644 index 000000000..f6191aa52 --- /dev/null +++ b/releasenotes/notes/initial-release-notes-937001279bbb52cd.yaml @@ -0,0 +1,6 @@ +--- +prelude: > + Starting with bifrost 0.1.x, release note generation + is via the reno utility. +feature: + - Bifrost has adopted reno for release note management. diff --git a/releasenotes/source/conf.py b/releasenotes/source/conf.py new file mode 100755 index 000000000..5d677a44f --- /dev/null +++ b/releasenotes/source/conf.py @@ -0,0 +1,76 @@ +# -*- coding: utf-8 -*- +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import sys + +sys.path.insert(0, os.path.abspath('../..')) +# -- General configuration ---------------------------------------------------- + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +extensions = [ + 'sphinx.ext.autodoc', + # 'sphinx.ext.intersphinx', + 'oslosphinx', + 'reno.sphinxext', +] + +# autodoc generation is a bit aggressive and a nuisance when doing heavy +# text edit cycles. +# execute "export SPHINX_DEBUG=1" in your terminal to disable + +# The suffix of source filenames. +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'bifrost' +copyright = u'2015, Ironic Developers' + +# If true, '()' will be appended to :func: etc. cross-reference text. +add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +add_module_names = True + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# -- Options for HTML output -------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. Major themes that come with +# Sphinx are currently 'default' and 'sphinxdoc'. +# html_theme_path = ["."] +# html_theme = '_theme' +# html_static_path = ['static'] + +# Output file base name for HTML help builder. +htmlhelp_basename = 'BifrostReleaseNotesdoc' + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, documentclass +# [howto/manual]). +latex_documents = [ + ('index', + 'BifrostReleaesNotes.tex', + u'Bifrost Release Notes Documentation', + u'Ironic Developers', 'manual'), +] + +# Example configuration for intersphinx: refer to the Python standard library. +# intersphinx_mapping = {'http://docs.python.org/': None} diff --git a/releasenotes/source/index.rst b/releasenotes/source/index.rst new file mode 100644 index 000000000..f47c00d38 --- /dev/null +++ b/releasenotes/source/index.rst @@ -0,0 +1,6 @@ +====================== + Bifrost Release Notes +====================== + +.. toctree:: + :maxdepth: 1 diff --git a/test-requirements.txt b/test-requirements.txt index 0c885d394..e5d4165a1 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -7,6 +7,7 @@ hacking<0.11,>=0.10.0 coverage>=3.6 discover python-subunit>=0.0.18 +reno>=0.1.1 # Apache2 sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 oslosphinx>=2.5.0 # Apache-2.0 oslotest>=1.10.0 # Apache-2.0 diff --git a/tox.ini b/tox.ini index 23027aa5d..5dbe678f5 100644 --- a/tox.ini +++ b/tox.ini @@ -27,6 +27,9 @@ commands = python setup.py build_sphinx [testenv:debug] commands = oslo_debug_helper {posargs} +[testenv:releasenotes] +commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html + [flake8] # E123, E125 skipped as they are invalid PEP-8.