diff --git a/doc/source/user/packagers.rst b/doc/source/user/packagers.rst index 74af8ac1..2e705b05 100644 --- a/doc/source/user/packagers.rst +++ b/doc/source/user/packagers.rst @@ -103,3 +103,20 @@ skipped. Similarly setting ``SKIP_WRITE_GIT_CHANGELOG`` will cause logic around generating ``ChangeLog`` file using *git* information to be skipped. + +.. _packaging-releasenotes: + +Release Notes +------------- + +*pbr* generates a release notes file, typically called ``RELEASENOTES.rst``, +if `reno`_ is present and configured. You may wish to disable this +functionality. If that is the case setting ``SKIP_GENERATE_RENO`` + +:: + + export SKIP_GENERATE_RENO + +will disable this feature. + +.. _reno: https://docs.openstack.org/reno/latest/ diff --git a/doc/source/user/using.rst b/doc/source/user/using.rst index 0104640c..2e58fee4 100644 --- a/doc/source/user/using.rst +++ b/doc/source/user/using.rst @@ -230,6 +230,13 @@ The ``pbr`` section controls *pbr*-specific options and behaviours. This can also be configured using the ``SKIP_GENERATE_AUTHORS`` environment variable, as described :ref:`here ` +``skip_reno`` + If enabled, *pbr* will not generate a ``RELEASENOTES.txt`` file if `reno`_ is + present and configured. + + This can also be configured using the ``SKIP_GENERATE_RENO`` environment + variable, as described :ref:`here `. + ``autodoc_tree_index_modules`` A boolean option controlling whether *pbr* should generate an index of modules using ``sphinx-apidoc``. By default, all files except ``setup.py`` @@ -487,3 +494,4 @@ this file. .. _setuptools: http://www.sphinx-doc.org/en/stable/setuptools.html .. _sphinxcontrib-apidoc: https://pypi.org/project/sphinxcontrib-apidoc/ +.. _reno: https://docs.openstack.org/reno/latest/ diff --git a/pbr/packaging.py b/pbr/packaging.py index d8d37372..77a4b226 100644 --- a/pbr/packaging.py +++ b/pbr/packaging.py @@ -577,6 +577,13 @@ class LocalSDist(sdist.sdist): if hasattr(self, '_has_reno'): return self._has_reno + option_dict = self.distribution.get_option_dict('pbr') + should_skip = options.get_boolean_option(option_dict, 'skip_reno', + 'SKIP_GENERATE_RENO') + if should_skip: + self._has_reno = False + return False + try: # versions of reno witout this module will not have the required # feature, hence the import