Bitbucket is a code hosting site with unlimited public and private repositories. We're also free for small teams!

Close

Sphinx-PyPI-upload

ATTENTION: This is a temporary fork of Jannis Leidel's Sphinx-PyPI-upload. See http://pypi.python.org/pypi/Sphinx-PyPI-upload for details about the original project.

This package contains a setuptools command for uploading Sphinx documentation to the Python Package Index (PyPI) at the dedicated URL packages.python.org.

The upload_sphinx command

upload_sphinx will create the necessary zip file out of an arbitrary documentation directory and posts it to the correct URL.

It's also loosely based on Sphinx' own setuptools command build_sphinx which allows to easily build documentation from the command line.

The upload_sphinx command has the following options:

  • --repository (-r): url of repository [default: http://pypi.python.org/pypi]
  • --show-response: display full response text from server
  • --upload-dir: directory to upload

Example

Assuming there is an Example package with Sphinx documentation to be uploaded to http://packages.python.org, with the following structure:

Example/
|-- example.py
|-- setup.cfg
|-- setup.py
|-- docs
|   |-- build
|   |   `-- html
|   |-- conf.py
|   |-- index.txt
|   `-- tips_tricks.txt

As with any other setuptools based command, you can define useful defaults in the setup.cfg of your Python package. The following snippet shows how to set the option defaults of the build_sphinx and upload_sphinx setup.py commands:

[build_sphinx]
source-dir = docs/
build-dir  = docs/build
all_files  = 1

[upload_sphinx]
upload-dir = docs/build/html

To build and upload the Sphinx documentation you are now able to run:

$ python setup.py build_sphinx
$ python setup.py upload_sphinx

Alternatively, you can of course just pass the appropriate options directly to the commands:

$ python setup.py build_sphinx --source-dir=docs/ --build-dir=docs/build --all-files
$ python setup.y upload_sphinx --upload-dir=docs/build/html

Recent activity

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.