diff options
author | Christopher Allan Webber <cwebber@dustycloud.org> | 2011-05-07 13:58:36 -0500 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2011-05-07 13:58:36 -0500 |
commit | 7a5ddb45dcf55c6d651b4a32dc1924e54b77c0f0 (patch) | |
tree | 8f1039b7be2b475fbc36121fed0feb27d8ab8a19 /docs | |
parent | 27057b42fb68e3f640a1788d6de36649af6455f7 (diff) | |
download | mediagoblin-7a5ddb45dcf55c6d651b4a32dc1924e54b77c0f0.tar.lz mediagoblin-7a5ddb45dcf55c6d651b4a32dc1924e54b77c0f0.tar.xz mediagoblin-7a5ddb45dcf55c6d651b4a32dc1924e54b77c0f0.zip |
Reversing buildout and virtualenv instructions because I think
virtualenv is easier if you don't know how this stuff works, and it
works.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/hackinghowto.rst | 132 |
1 files changed, 68 insertions, 64 deletions
diff --git a/docs/hackinghowto.rst b/docs/hackinghowto.rst index 73522ec6..d829b1c0 100644 --- a/docs/hackinghowto.rst +++ b/docs/hackinghowto.rst @@ -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: -1. :ref:`virtualenv <hacking-with-virtualenv>` OR -2. :ref:`buildout and bootstrap <hacking-with-buildout>` +1. :ref:`buildout and bootstrap <hacking-with-buildout>` (easier) OR +2. :ref:`virtualenv <hacking-with-virtualenv>` (more flexible, but harder) Pick one---don't do both! @@ -63,6 +63,72 @@ requirements:: 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: How to set up and maintain an environment for hacking with virtualenv @@ -146,68 +212,6 @@ To do this, do:: 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 ================== |