This commit is part of a series to retire the Packaging Deb
project. Step 2 is to remove all content from the project
repos, replacing it with a README notification where to find
ongoing work, and how to recover the repo if needed at some
future point (as in
https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project).
Change-Id: Idad8685a3349aadc9b5287a17ac35bb1f888bcba
This commit 6fdf4e1086 have changed
the default binded ip, it binds one random interface on the system
instead of all. Break breaks all gate that expect the default to at
least listen on localhost.
This change restore the previous default.
Change-Id: I6323e66ea98d15c52b07c8e737fdd6f30aef0238
Allow the user to specify 'api_doc_dir' in the build_sphinx section of
their setup.cfg to control where the auto-generated API documentation is
written.
Change-Id: I2bd5652bb59cbd9c939931ba2e7db1b37d2b30bb
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Upstream Sphinx now has some new expectations that are no longer being
met by some of our tests because we mock the constructor for the
application class. Fix the test to ensure the application instance has
the needed attributes.
Change-Id: Iad009ce74301c9ffd49ff2b2bab4afd9b7dd1388
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
The packaged WSGI server currently only accepts a custom port.
This patch adds a new option to accept a custom interface. This is
useful in some cloud environments where there are restrictions on
which IP addresses are available to mount a server.
Change-Id: Iddf10bc422ae607b2d6bf2304dd032d7471ec458
Currently if an index is specified by either -i, --index-url or
--extra-index-url, the following error may be encountered when
setup is run.
Invalid requirement, parse error at "u'-i https'"
This patch ignores those lines in a requirements.txt file durning
parsing.
Closes-Bug: #1394999
Change-Id: Ie03f54ca7a7edad7a26fa1721f7b26532b65e760
As noted by stephenfin, Sphinx 1.6 provides its own code to build doc with
multiple builders. The one provided by pbr so far for Sphinx < 1.6 is not even
compatible with 1.6. This patch fixes that by running the native Sphinx code
for Sphinx > 1.6 and falling back to the old code for older Sphinx versions.
Closes-Bug: #1691129
Change-Id: I5224235b1056a248b246c54e2d99eea94d53c4eb
In a previous commit [0] there was an additional character
escaping added at the end that was not added to the list
in the comment for the function. This change adds the missing
character to the list of escaped characters from the previous
change.
[0] https://review.openstack.org/#/c/439897/
Change-Id: I6e83a10ee51f1f18176bf2d17a0092d5a3cc4dd4
Sphinx 1.6 will support the definition of multiple builders in a
setup.cfg file like so:
[build_sphinx]
builder = html man
Once we support this version of Sphinx, we should stop carrying the
custom versions of this tooling we use.
Upstreaming things FTW.
Change-Id: Ibf2a003229a4585df96b09da7ca547e201c5aef5
codesearch.o.o shows a single, long-dead project using this [1]. Let's
just remove it and push people to set 'builders' instead in they really
want LaTeX.
[1] http://codesearch.openstack.org/?q=build_sphinx_latex
Change-Id: I820d9c540ae81717d7b33bbb4d2a4031b529b52c
From pretty much the beginning [1], pbr has defaulted to building both
man page and html output, but has failed to document it anywhere. People
tend to copy-paste their 'setup.py' and 'conf.py', or rely on the
'cookiecutter' project, with very little understanding of what's going
on under the hood (and why would you care - it's docs :)). This means
that the vast majority of folks using 'pbr' (basically everyone in
OpenStack) have been unwittingly building "man pages" as part of their
doc builds for no good reason, which has also led to a lot of confusion
when this magic behavior is the cause of bugs [2][3].
There's no good reason that pbr should default to building both man
pages and html output. For folks that want this functionality, we should
document it so they can use it. For everyone else though, let's do the
sane thing and output html like the standard 'build_sphinx' plugin.
[1] https://github.com/openstack-dev/pbr/commit/5b8b7f1d
[2] https://bugs.launchpad.net/pbr/+bug/1681983
[3] https://bugs.launchpad.net/oslotest/+bug/1379998
Change-Id: I579134a2b7980669180c1666503b848835cc2957
Closes-Bug: #1681983
pbr currently hard-codes the list of warnings that are to be ignored.
Many OpenStack projects use remote images to add project "badges" based
on tags defined in the governance repository. Ignore the warning caused
by using remote images so we can unbreak documentation builds using
those badges.
Change-Id: If47e3ca6519cc9f70d62cd887707321fe9199f81
Addresses-Bug: #1682467
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This was briefly detailed before, but the variant of 'build_sphinx'
provided by 'pbr' does a lot for us that should be documented somewhere.
Change-Id: I0b1877c565d7771e7f0dfdf9198ff41bcd051dec
Include the ChangeLog content in the published documentation to make it
possible to read without downloading the source. Add a link to the new
page to the readme for discoverability.
Change-Id: I3cc06846b6d84f5b175a33a48838c8a6a5e1771d
Closes-Bug: #1681725
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This change adds new handling when building a Changelog file
for specific characters that cause documentation building
warnings/errors to be emitted when sphinx tries to generate
a Changelog html page. The changes include:
- Escaping any '*' in a commit, which sphinx will interpret as the
start of a new line and throw a warning.
- Escaping any '_' in a commit, which in certain cases, sphinx will
interpret as an invalid link and create an error.
- Escaping any '`' in a commit, which in certain cases will
cause sphinx to interpet as a literal, and throw a warning.
After this change, any entries in the changelog that contain
the above "invalid" syntax no longer generate sphinx
warnings/errors and the offending entries now generate correctly.
Change-Id: I672ef4c56486e59a384849a4b182d11129726ae9
Currently sphinx config is initialized using sphinx.config,
however in recent versions of Sphinx, plugin specific parameters
as man_pages for man builder has been moved to the extension
and is not initialized from sphinx.config but using sphinx.application.
This is making man_pages to be empty when using sphinx 1.5 and man
builder is not properly called.
This patch initializes sphinx config using sphinx.application which
works fine with both old and new Sphinx versions.
Closes-Bug: #1674795
Depends-On: I7bde8fc1f2a7db5bd73635aa197377bf5ac614d2
Change-Id: Ib7c1a6fe8fbb5acfcfcfac61d0b53f080ff2b1e4
Avoid cyclic dependencies between pbr and oslosphinx. So if oslosphinx is not
available, continue to be able to generate the documentation.
Change-Id: I4c1f8ea5cded268388dab29931055223f8999c8a
When using --coverage, also generate a machine-readable XML coverage
report. This is useful to build tooling around automated tracking of
coverage results.
Change-Id: Idd54ecc627896cc5eab4903658f10a344bdb1778
The older hacking library has a cap on pbr <2.0, with the recent 2.0.0
release of PBR it's causing failures in the pep8 job. hacking isn't
kept in sync via the typical proposal-bot updates. Do it manually to
clear the gate issue.
Change-Id: I752f518611add90dd391982cb7dade9b599ff9d3
Related-Bug: #1668848
skipsdist is used to "avoid expensive sdist" but prevents the software
package from being installed in the virtualenv. We currently have this
enabled, but then skip the step by including the current package in the
requirements section, which mitigates the entire thing.
Stop setting skipsdist to True, allowing us to remove '.' from
requirements and use tox the way it's meant to be used.
Change-Id: I543f0c6679c39c7ae438fd1e5fca7175b92ed193
This legacy option provided the ability to fail on doc warnings.
However, this functionality is broken in recent releases and now exists
in Sphinx itself (since 1.5.0). Rather that fixing it and causing a
whole load of doc build errors introduced in the time since this option
was broken, remove it, preferring the new Sphinx option instead.
This allows us to remove a lot of test code which is essentially testing
Sphinx functionality only now, based on the assumption that Sphinx do
adequate testing themselves.
Change-Id: Ia4b6adefcd437cb1ceb4558b004c17359df2486d
Clarify what tools provide what sections in 'setup.cfg', thus explaining
why, for example, I couldn't find any references to '[build_sphinx]' in
either the pbr or setuptools source.
Comments are not a section, so this little bit of info is moved to a
'note'.
Change-Id: Icfb58195c58813e98ab48943119f53c7711331ec