From 7798f911ab31622efd6517585057c657454cebb0 Mon Sep 17 00:00:00 2001 From: Will Kahn-Greene Date: Fri, 20 Apr 2012 22:10:21 -0400 Subject: [PATCH] Documentation updates and fixes * Nixed some of the mongodb references--pretty sure we're done with that. * Fixed some awkward language. * Fixed : :: stuff. Sphinx lets you do :: so you don't need the additional colon. * Turned a paragraph into a .. note:: section. That makes it easier to notice and read. --- docs/source/codebase.rst | 9 +++----- docs/source/deploying.rst | 41 ++++++++++++++++++++----------------- docs/source/media-types.rst | 30 ++++++++++++++++++--------- 3 files changed, 45 insertions(+), 35 deletions(-) diff --git a/docs/source/codebase.rst b/docs/source/codebase.rst index e784c9e5..6de71f07 100644 --- a/docs/source/codebase.rst +++ b/docs/source/codebase.rst @@ -55,8 +55,9 @@ Software Stack * Data storage - * `MongoDB `_: the document database backend - for storage + * `SQLAlchemy `_: SQL ORM and database + interaction library for Python. Currently we support sqlite and + postgress as backends. * Web application @@ -84,10 +85,6 @@ Software Stack ORM for MongoDB we're using which will make it easier to define structures and all that (will be swapped out soon...) - * `SQLAlchemy `_: SQL ORM and database - interaction library for Python. We'll be moving to this in the - upcoming move to SQL. - * `Babel `_: Used to extract and compile translations. diff --git a/docs/source/deploying.rst b/docs/source/deploying.rst index ef1de621..ed74b441 100644 --- a/docs/source/deploying.rst +++ b/docs/source/deploying.rst @@ -48,13 +48,13 @@ MediaGoblin has the following core dependencies: - `virtualenv `_ On a DEB-based system (e.g Debian, gNewSense, Trisquel, Ubuntu, and -derivatives) issue the following command: :: +derivatives) issue the following command:: sudo apt-get install git-core python python-dev python-lxml \ python-imaging python-virtualenv On a RPM-based system (e.g. Fedora, RedHat, and derivatives) issue the -following command: :: +following command:: yum install python-paste-deploy python-paste-script \ git-core python python-devel python-lxml python-imaging \ @@ -65,12 +65,14 @@ Configure PostgreSQL .. note:: - MediaGoblin currently supports PostgreSQL and SQLite. The default is a - local SQLite database. This will "just work" for small deployments. If - you don't want/need postgres, ignore all the postgres related parts. For - medium to large deployments we recommend PostgreSQL. + MediaGoblin currently supports PostgreSQL and SQLite. The default is a + local SQLite database. This will "just work" for small deployments. -These are the packages needed for Debian Wheezy (testing): :: + For medium to large deployments we recommend PostgreSQL. + + If you don't want/need postgres, skip this section. + +These are the packages needed for Debian Wheezy (testing):: sudo apt-get install postgresql postgresql-client @@ -82,17 +84,17 @@ restricted database user for our MediaGoblin instance. In this example, the database user will be ``mediagoblin`` and the database name will be ``mediagoblin`` too. -To create our new user, run: :: +To create our new user, run:: sudo -u postgres createuser mediagoblin -then answer NO to *all* the questions: :: +then answer NO to *all* the questions:: Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) n Shall the new role be allowed to create more new roles? (y/n) n -then create the database all our MediaGoblin data should be stored in: :: +then create the database all our MediaGoblin data should be stored in:: sudo -u postgres createdb -E UNICODE -O mediagoblin mediagoblin @@ -117,11 +119,11 @@ Configure MongoDB If this is a fresh setup and you have already set up PostgreSQL, you will not need this step. -First, install MongoDB. On a DEB-based system run: :: +First, install MongoDB. On a DEB-based system run:: sudo apt-get install mongodb -on a RPM-based system, run: :: +on a RPM-based system, run:: yum install mongodb-server @@ -167,7 +169,7 @@ assumes your local git repository will be located at Substitute your prefer ed local deployment path as needed. This document assumes that all operations are performed as this -user. To drop privileges to this user, run the following command: :: +user. To drop privileges to this user, run the following command:: su - [mediagoblin] @@ -179,7 +181,7 @@ Install MediaGoblin and Virtualenv .. note:: - As of |version|, MediaGoblin has a rapid development pace. As a result + MediaGoblin is still developing rapidly. As a result the following instructions recommend installing from the ``master`` branch of the git repository. Eventually production deployments will want to transition to running from more consistent releases. @@ -194,7 +196,7 @@ Clone the MediaGoblin repository:: git clone git://gitorious.org/mediagoblin/mediagoblin.git -And setup the in-package virtualenv:: +And set up the in-package virtualenv:: cd mediagoblin (virtualenv --system-site-packages . || virtualenv .) && ./bin/python setup.py develop @@ -219,7 +221,7 @@ flup:: ./bin/easy_install flup This concludes the initial configuration of the development -environment. In the future, if at any point you want update your +environment. In the future, you want update your codebase, you should also run:: ./bin/python setup.py develop --upgrade && ./bin/gmg migrate. @@ -230,18 +232,19 @@ Deploy MediaGoblin Services Configure MediaGoblin to use the PostgreSQL database ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Edit the ``[mediagoblin]`` section in your ``mediagoblin_local.ini`` and -put in: :: +If you are using postgres, edit the ``[mediagoblin]`` section in your +``mediagoblin_local.ini`` and put in:: sql_engine = postgresql:///mediagoblin if you are running the MediaGoblin application as the same 'user' as the database owner. + Update database data structures ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Before you start using the database, you need to run: :: +Before you start using the database, you need to run:: ./bin/gmg dbupdate diff --git a/docs/source/media-types.rst b/docs/source/media-types.rst index 647f2b42..1cf7f30c 100644 --- a/docs/source/media-types.rst +++ b/docs/source/media-types.rst @@ -18,7 +18,8 @@ Enabling Media Types ==================== In the future, there will be all sorts of media types you can enable, -but in the meanwhile there's only one additional media type: video. +but in the meanwhile there are two additional media type: video and +ascii art. First, you should probably read ":doc:`configuration`" to make sure you know how to modify the mediagoblin config file. @@ -30,21 +31,27 @@ To enable video, first install gstreamer and the python-gstreamer bindings (as well as whatever gstremaer extensions you want, good/bad/ugly). On Debianoid systems:: - sudo apt-get install python-gst0.10 gstreamer0.10-plugins-{base,bad,good,ugly} gstreamer0.10-ffmpeg + sudo apt-get install python-gst0.10 gstreamer0.10-plugins-{base,bad,good,ugly} \ + gstreamer0.10-ffmpeg Next, modify (and possibly copy over from ``mediagoblin.ini``) your -``mediagoblin_local.ini``. Uncomment this line in the ``[mediagoblin]`` -section:: +``mediagoblin_local.ini``. In the ``[mediagoblin]`` section, add +``mediagoblin.media_types.video`` to the ``media_types`` list. + +For example, if your system supported image and video media types, then +the list would look like this:: media_types = mediagoblin.media_types.image, mediagoblin.media_types.video Now you should be able to submit videos, and mediagoblin should transcode them. -Note that you almost certainly want to separate Celery from the normal -paste process or your users will probably find that their connections -time out as the video transcodes. To set that up, check out the -":doc:`production-deployments`" section of this manual. +.. note:: + + You almost certainly want to separate Celery from the normal + paste process or your users will probably find that their connections + time out as the video transcodes. To set that up, check out the + ":doc:`production-deployments`" section of this manual. Ascii art @@ -58,8 +65,11 @@ library, which is necessary for creating thumbnails of ascii art:: Next, modify (and possibly copy over from ``mediagoblin.ini``) your -``mediagoblin_local.ini``. Uncomment or add to the media_types line -'mediagoblin.media_types.ascii' like so:: +``mediagoblin_local.ini``. In the ``[mediagoblin]`` section, add +``mediagoblin.media_types.ascii`` to the ``media_types`` list. + +For example, if your system supported image and ascii art media types, then +the list would look like this:: media_types = mediagoblin.media_types.image, mediagoblin.media_types.ascii -- 2.25.1