Upload
ericholscher
View
3.130
Download
1
Embed Size (px)
DESCRIPTION
This talk goes over the infrastruct
Citation preview
Read the Docs
Eric Holscherhttp://ericholscher.com
OSCON 2011
Thursday, July 28, 2011
What this talk is
» Talk about the history of Read the Docs
» Technology Involved
» Interesting outcomes of openness
Thursday, July 28, 2011
Who am I
» I come from Django
» Work at Urban Airship
» Like automating systems
Thursday, July 28, 2011
Why I’m here
» Feedback
» Ideas
» Hopefully you’ll learn something too!
» Shameless self-promotion
Thursday, July 28, 2011
The story
Thursday, July 28, 2011
2010 Django Dash
Thursday, July 28, 2011
Charles LeiferBobby Grace (Design)
Me
Thursday, July 28, 2011
Doc Hosting Sucks
» packages.python.org
» Github Pages
» Your own janky cronjobs
Thursday, July 28, 2011
`
Thursday, July 28, 2011
Sphinx
» Standard documentation tool for python
» Uses reStructured Text
Thursday, July 28, 2011
Thursday, July 28, 2011
Had a workable site in 48 hours
Thursday, July 28, 2011
Fully Open Source
Thursday, July 28, 2011
Fully Open Source
» github.com/rtfd/readthedocs.org
» github.com/ericholscher/chef-django-example
» ericholscher.com/tag/chef-series/
Thursday, July 28, 2011
Thursday, July 28, 2011
Officially Hosted
» Celery
» Fabric
» Nose, py.test
» Virtualenv, Pip
» Django CMS
» Django Grapelli/Floppyforms/Sentry
» Lots more
Thursday, July 28, 2011
What makes it tick
Thursday, July 28, 2011
Features
Thursday, July 28, 2011
Git, Hg, Bzr, Svn
Thursday, July 28, 2011
Post commit hooks
Thursday, July 28, 2011
Custom Theme
Thursday, July 28, 2011
Full-text search
Thursday, July 28, 2011
Tags & Branches = Versions
Thursday, July 28, 2011
PDF Generation
Thursday, July 28, 2011
Virtualenvs
Thursday, July 28, 2011
rtfd.org
Thursday, July 28, 2011
Tech
Thursday, July 28, 2011
Subdomains
Thursday, July 28, 2011
CNAME Support
Thursday, July 28, 2011
Cname Support
» Request for docs.fabfile.org
» docs.fabfile.org -> fabric.readthedocs.org
» In middleware, resolve CNAME and determine docs to serve.
» Cache it.
Thursday, July 28, 2011
Architecture +-----------+ | | +-----| Varnish |------+ | +-----------+ | | | +---------+ +---------+ +-------------+ | | | | +--------------+ | |-----| Nginx | | Nginx |----| | | File | +---------+ +---------+ | File | | System | | | | System | +-------------+ +---------+ +--------+ +---------+ +--------------+ | | | | | | | | | | | +---------|Gunicorn |--|Postgres|--|Gunicorn |--------+ | | +---------+ +--------+ +---------+ | | | | | | | | +------------------+ | | | | | +---------------------| Build Server |-------------------+ | | +------------------+
Thursday, July 28, 2011
Haystack & Solr
Thursday, July 28, 2011
Chef
Thursday, July 28, 2011
Nagios & Munin
Thursday, July 28, 2011
Upstart
Thursday, July 28, 2011
REST API
Thursday, July 28, 2011
CoffeeScript
Thursday, July 28, 2011
CLI
Thursday, July 28, 2011
Lessons
Thursday, July 28, 2011
Think about your URLs.Really hard.
Thursday, July 28, 2011
Lay your project out sanely
Thursday, July 28, 2011
Write tests!
Thursday, July 28, 2011
Build around a standard tool
Thursday, July 28, 2011
Passing data through systems is hard
Thursday, July 28, 2011
Serving static files is annoying
Thursday, July 28, 2011
Log. Everything.
Thursday, July 28, 2011
Promote (Hi!)
Thursday, July 28, 2011
Find a designer!
Thursday, July 28, 2011
Follow the Unix Philosophy
Thursday, July 28, 2011
Have a mission
Thursday, July 28, 2011
Open Source Outcomes
Thursday, July 28, 2011
Patches
Thursday, July 28, 2011
Known architecture information
Thursday, July 28, 2011
Slow LorisThursday, July 28, 2011
Trust
Thursday, July 28, 2011
People Writing Docs
Thursday, July 28, 2011
DEMO
Thursday, July 28, 2011
Questions?
» readthedocs.org / rtfd.org
» #readthedocs on Freenode
» github.com/rtfd/readthedocs.org
Thursday, July 28, 2011