Building Sphinx documentation and deploying build artifacts using Bitbucket Pipelines?


I just received an invite for the Bitbucket Pipelines beta, psyched to try it out. I'm attempting to build Sphinx docs (and possibly MkDocs) documentation and then deploy the build artifacts generated from make html and make latexpdf (in the case of Sphinx).

I know services such as ReadTheDocs are available, however, in this use case I need the documentation generated by Sphinx or MkDocs to remain private.

Can anyone offer any guidance as to accomplish any of the following:

  • Commit build artifacts as a release in source repo (3rd best, tied with downloading build artifacts)
  • Provide a method of downloading the build artifacts as a zip/tar.gz (3rd best, tied with downloading build artifacts)
  • Deploy the HTML (and PDF, when using Sphinx) to Bitbucket Aerobatic (2nd best option)
  • Deploy the HTML (and PDF, when using Sphinx) to CentOS server via SSH/FTP (best option)

Here's the Bitbucket Pipelines file I quickly mashed up, however, I just found a few Docker images for Sphinx that will likely be a much better option to cut down on pipelines processing time (as this build took over 1 hour since Latexpdf is so large).


# You can use a Docker image from Docker Hub or your own container
# registry for your build environment.
image: python:2.7
    - step:
        script: # Modify the commands below to build your repository.
          - apt-get -qq update
          - apt-get install -y texlive-full
          - pip install -r requirements.txt
          - make html
          - make latexpdf


2 answers

The build succeeds and I know the artifacts are inside the container at: 

Build finished. The HTML pages are in build/html.


pdflatex finished; the PDF files are in build/latex.


0 votes

I just wrote up this guide on setting up ssh public-key authentication for use inside Pipelines. It seems like it might help with your preferred option.

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Mar 14, 2019 in Bitbucket Pipelines

Building a Bitbucket Pipe as a casual coder :  #!/bin/bash source "$(dirname "$0")/" enable_debug extra_args="" if [[ "${DEBUG}" == "true" ]]; then extra_args="--verbose" fi # mandatory variables R...

274 views 0 12
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you