Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Continuous integration, Documentation and Travis CI

Continuous integration, Documentation and Travis CI

Building docs on travis ci

Matthias Bussonnier

March 07, 2017

More Decks by Matthias Bussonnier

Other Decks in Programming


  1. Continuous integration, Documentation and Travis CI The Docathon Team, Matthias

    Bussonnier March 6, 2017
  2. ME Carreau Mbussonn [email protected] Physicist Bipophysics Software (Terribheu Freignch Akheucent)

  3. Travis CI

  4. What is Travis-CI • CI stand for “Continuous Integration” •

    Can run unit-test in isolation and complain if test fail • But Travis can run almost arbitrary code ... let’s use it for documentation
  5. Why for Documentation ? • Documentation is never complete, and

    evolve with your project • Your project is (likely) already setup for Travis • One less thing to think about, or configure, keep credential.
  6. .travis.yml

  7. How ? GhPages • Commits lands on the repository. •

    Travis builds and checks the docs. • If branch is “master”, push to GitHub Pages (for example) If Master branch
  8. The tricky part • Give Credential to Travis to push

    back to GitHub • Well, obviously not in plaintext. • If you committed once as plaintext: Change it. • Use “$ travis encrypt” to encrypt ssh keys. • Don’t “echo ENCRYPTED_VARIABLE”
  9. More details • Hands on tomorrow at The Hacker Within:

    • http://www.thehackerwithin.org/berkeley/ • Every* Tuesday from 4pm to 4:30pm, Here
  10. Let’s use Magic • You likely don’t want to know

    how ssh/GitHub Api... etc. So let’s use DocTr (DOCumentation, TRavis) • Sets up credential for you • Tells you what to copy-past in travis.yml • Find the documentation folder • Push on GitHub
  11. https://github.com/drdoctr/doctr • $ pip install doctr • $ doctr configure

    • And follow instruction • Push a commit
  12. Go to https://<org>.github.io/project/docs/

  13. None
  14. ( Quick the attendees are hungry ) Questions ?