Reversing buildout and virtualenv instructions because I think

virtualenv is easier if you don't know how this stuff works, and it
works.
This commit is contained in:
Christopher Allan Webber 2011-05-07 13:58:36 -05:00
parent 27057b42fb
commit 7a5ddb45dc

View File

@ -28,8 +28,8 @@ Third you'll need to :ref:`get the requirements
Fourth, you'll need to build a development environment. For this step, there are two options: Fourth, you'll need to build a development environment. For this step, there are two options:
1. :ref:`virtualenv <hacking-with-virtualenv>` OR 1. :ref:`buildout and bootstrap <hacking-with-buildout>` (easier) OR
2. :ref:`buildout and bootstrap <hacking-with-buildout>` 2. :ref:`virtualenv <hacking-with-virtualenv>` (more flexible, but harder)
Pick one---don't do both! Pick one---don't do both!
@ -63,6 +63,72 @@ requirements::
up requirements, let us know! up requirements, let us know!
.. _hacking-with-buildout:
How to set up and maintain an environment for hacking with buildout
===================================================================
.. Note::
Either follow the instructions in this section OR follow the ones
in :ref:`hacking-with-virtualenv`. But don't do both!
**Requirements**
No additional requirements.
**Create a development environment**
After installing the requirements, follow these steps:
1. Clone the repository::
git clone http://git.gitorious.org/mediagoblin/mediagoblin.git
2. Bootstrap and run buildout::
cd mediagoblin
python bootstrap.py && ./bin/buildout
That's it! Using this method, buildout should create a ``user_dev``
directory, in which certain things will be stored (media, beaker
session stuff, etc). You can change this, but for development
purposes this default should be fine.
**Updating for dependency changes**
While hacking on GNU MediaGoblin over time, you'll eventually have to
update your development environment because the dependencies have
changed. To do that, run::
./bin/buildout
**Updating for code changes**
You don't need to do anything---code changes are automatically
available.
**Deleting your buildout**
At some point, you may want to delete your buildout. Perhaps it's to
start over. Perhaps it's to test building development environments
with buildout.
To do this, do::
rm -rf bin develop-eggs eggs mediagoblin.egg-info parts user_dev
Usually buildout works pretty great and is super easy, but if you get
problems with python-dateutil conflicts on your system, you may need
to use virtualenv instead.
.. _hacking-with-virtualenv: .. _hacking-with-virtualenv:
How to set up and maintain an environment for hacking with virtualenv How to set up and maintain an environment for hacking with virtualenv
@ -146,68 +212,6 @@ To do this, do::
rmvirtualenv mediagoblin rmvirtualenv mediagoblin
.. _hacking-with-buildout:
How to set up and maintain an environment for hacking with buildout
===================================================================
.. Note::
Either follow the instructions in this section OR follow the ones
in :ref:`hacking-with-virtualenv`. But don't do both!
**Requirements**
No additional requirements.
**Create a development environment**
After installing the requirements, follow these steps:
1. Clone the repository::
git clone http://git.gitorious.org/mediagoblin/mediagoblin.git
2. Bootstrap and run buildout::
cd mediagoblin
python bootstrap.py && ./bin/buildout
That's it! Using this method, buildout should create a ``user_dev``
directory, in which certain things will be stored (media, beaker
session stuff, etc). You can change this, but for development
purposes this default should be fine.
**Updating for dependency changes**
While hacking on GNU MediaGoblin over time, you'll eventually have to
update your development environment because the dependencies have
changed. To do that, run::
./bin/buildout
**Updating for code changes**
You don't need to do anything---code changes are automatically
available.
**Deleting your buildout**
At some point, you may want to delete your buildout. Perhaps it's to
start over. Perhaps it's to test building development environments
with buildout.
To do this, do::
rm -rf bin develop-eggs eggs mediagoblin.egg-info parts user_dev
Running the server Running the server
================== ==================