Permalink
Browse files

Merge pull request #43 from mzdaniel/docs

Add more documents from the wiki
  • Loading branch information...
2 parents faf38f4 + ace5fd7 commit e673c6863758c3d1f9829d6d981aeb30a455087d @paulproteus paulproteus committed Jun 27, 2012
View
40 docs/contributor/chat_on_irc.rst
@@ -0,0 +1,40 @@
+===================
+Chat with us on IRC
+===================
+
+You can usually find us on #openhatch on irc.freenode.net
+
+If you don't know how to use IRC, you can just click on `this link to a web
+chat interface <http://webchat.freenode.net/?channels=#openhatch>`_.
+
+Are you trying to figure out who everybody is? Many of the people are part of
+the `OpenHatch project <http://openhatch.org/+projects/OpenHatch>`_.
+
+
+Quick start
+===========
+
+::
+
+ /server irc.freenode.net
+
+ /join #openhatch
+
+ /nick newnickname
+
+ /me waves hello
+
+ # The /me is an action message.
+ # Type /me 'does anything'
+ # Example: /me waves hello
+ # What it looks like: * bossmom waves hello
+
+
+More details: http://www.ircbeginner.com/ircinfo/ircc-commands.html
+
+
+See also
+========
+
+`Getting started - laptop setup <https://openhatch.org/wiki/Open_Source_Comes_to_Campus/UMD/Laptop_setup>`_
+
View
14 docs/contributor/index.rst
@@ -5,13 +5,13 @@ Contributor process
* Code style
.. toctree::
- :maxdepth: 2
+ :maxdepth: 2
- about_our_community
- getting_started
- handling_patches
- login_team
- login_team_agreement
+ about_our_community
+ chat_on_irc
+ getting_started
+ handling_patches
+ login_team
+ login_team_agreement
-* Chat with us on IRC
* Merging patches
View
49 docs/internals/backup.rst
@@ -0,0 +1,49 @@
+========================
+Backups of the live site
+========================
+
+
+Overview
+========
+
+We have a free, donated account from rsync.net that lets us store 50GB of data
+there.
+
+We use duplicity (as per the rsync.net `official document`_). We do full backups
+weekly and incrementals daily. We encrypt these backups.
+
+The only server essential to continued operation of the site is
+linode.openhatch.org. The other servers do unimportant things that do not keep
+state. It would be convenient to have backups for them, but it is not
+essential, so for now I suggest we simply skip it.
+
+.. _official document: http://www.rsync.net/resources/howto/duplicity.html
+
+
+Details
+=======
+
+We use this script to run backups. It runs via root's crontab, and emails the
+results to Asheesh daily.
+
+* do_backup.sh: `in git`_
+
+.. _in git: https://github.com/openhatch/oh-restore/blob/master/do_backup.sh
+
+
+Restoring
+=========
+
+duplicity has a built-in "verify" feature, which checksums the data, but that
+doesn't help us ensure that our backup was complete.
+
+Therefore, weekly, we automatically restore and test the virtual machine, via a
+Jenkins job. http://openhatch.org/bugs/issue530 describes that.
+
+
+More info about encryption
+==========================
+
+This backup is encrypted with a GPG key that has been emailed to hello
+@openhatch.org on Thu, Jan 26.
+
View
51 docs/internals/bug_tracker_architecture.rst
@@ -0,0 +1,51 @@
+====================================
+Bug tracker import code/architecture
+====================================
+
+
+About this page
+===============
+
+This page covers the **architecture** of our bug tracker import code. There are
+other wiki pages covering the :doc:`/internals/index` and our bug tracker
+import code.
+
+
+One file per style of bug tracker
+=================================
+
+Each *style* (like "Bugzilla", "Roundup", and so forth) of bug tracker has its
+code in mysite/customs/bugtrackers/*style*.py. We write tests in
+mysite/customs/tests.py for each bug tracker type.
+
+The Roundup code is instructive. Look at that in your favorite editor. You'll
+see *class RoundupTracker*. Take a look -- the class's __init__() is built so
+that an instance has enough data that a call to grab() will start downloading
+bug data.
+
+The rest of that file is trivial subclasses that pre-fill the data to
+__init__(). We have one subclass per bug tracker we pull data from.
+
+
+Then, once a day
+================
+
+We have a cron job on the server that calls the code in
+*mysite/customs/management/commands/customs_daily_tasks.py* every night.
+
+
+How to add a new bug tracker
+============================
+
+That means that if you want to add code pull data from a bug tracker we already
+support, you just have to write a very simple subclass. For Roundup, for
+example, add a few lines to the end of mysite/customs/bugtrackers/roundup.py.
+Then submit a patch.
+
+If you want to write support for an entirely new type of bug tracker, you'll
+have to write a new class. Before we merge it, we'll need some tests, but we
+can help you write the tests. Submit your patches as you go, and we can
+review/merge quickly!
+
+(Wondering how to submit a patch? Read :doc:`/contributor/handling_patches`.)
+
View
20 docs/internals/index.rst
@@ -7,8 +7,20 @@ Internals
* Automated testing
.. toctree::
- :maxdepth: 2
+ :maxdepth: 2
- monitoring
- continuous_integration
- emergency_operations
+ monitoring
+ continuous_integration
+ backup
+ emergency_operations
+
+
+Bug tracker import code
+=======================
+
+.. toctree::
+ :maxdepth: 2
+
+ bug_tracker_architecture
+
+* a step-by-step guide on adding a bug tracker

0 comments on commit e673c68

Please sign in to comment.