Ecotrust / madrona

A software framework for effective place-based decision making
Other
52 stars 9 forks source link

packaging #301

Closed perrygeo closed 12 years ago

perrygeo commented 12 years ago

Packaging MarineMap so it could be installed via pip or easy_install would solve a few problems for us.

implemented in a short time it could save everyone a lot of time in the long run when reinstalling the tool. We wouldn't be able to automate the installation of mapnik or geodjango, but it's a step in the right direction. For situation #2 to be improved there would also have to be some way to "upgrade" and installation in a way that installs any missing dependencies, but doesn't require installing from the ground up.

The biggest advantage of having this would be for automated testing in combination with migrations (Issue 304). We could potentially install marinemap within a virtualenv, run migrations, then run tests for each revision. That should eliminate all the hudson test errors.

Google Code Info: Issue #: 305 Author: underbluewaters Created On: 2010-03-18T18:23:25.000Z Closed On: 2010-04-20T20:23:43.000Z

perrygeo commented 12 years ago

Google Code Info: Author: underbluewaters Created On: 2010-03-18T19:30:55.000Z

perrygeo commented 12 years ago

Google Code Info: Author: underbluewaters Created On: 2010-03-18T19:31:18.000Z

perrygeo commented 12 years ago

Spruced up the setup.py file so MM is now packagable. Its not on PyPi yet but theres no technical reason why it couldnt be.

Dependencies are best handled through pip requirement files. Added marinemap_requirements.txt which allows us to specify almost all requirements and their versions and pip can automatically update them (even those coming from svn/hg)

marinemap itself can be installed by 'pip -e svn:http://marinemap.googlecode.com/svn/trunk#egg=marinemap' or through 'setup.py develop'

The migrations unfortunately do not currently play much of a role in testing since south overwrites syncdb and causes all sorts of testing chaos. So unit testing can in no way rely on migrations (tests will create a db that matches the current models).

However, pip can easily install particular revisions of MM or its dependencies into a seperate virtualenv which will be helpful for any future testing enhancements.

Google Code Info: Author: perrygeo...@gmail.com Created On: 2010-04-20T20:23:43.000Z