Google App Engine project bootstrap
Google App Engine is excellent technology but there is a gap.
If you are missing
- use of pip with Google App Engine,
- cooperation of appengine and virtualenv,
- possibility to add any module to your python path,
then this barebone could be at least an inspiration for you.
How to use (fill) the gap?
> workon <myvirtualenv> > pip install gap > gap start-project <applicationid> > cd <applicationid> > appcfg update src
- Install Google Appengine SDK
- Create a virtualenv for you project
- if necessary easy_install pip
- run pip install gap
- Go to directory where you want to create your GAE project.
- run gap start-project <projectname> # <projectname> will be used as applicationId
- Add your dependencies to requirements.gip (format is the same as pip requirements file) and run bin/gip install -r requirements.gip
- or install any packages using bin/gip same way as you are used to do it with pip.
- To create a new module in your application run gap start-app <module_name>
- Libraries installed using gip are accessible in dev_server as well as on GAE servers.
See Gap documentation on github for more informations.
Any ideas, thoughts, fixes (specially corrections of my English :) are welcome!
Of course … This code is published in hope that someone will find it useful but it is provided as-is and I can take no responsibility for improper as well as proper use.
- gip 1. some packages caused gip not to work properly 2. -v option shows a lot of debug informations
- minor fixes in documentation
- invalid import in new poject’s views.py
- mainly enhancements in test suite 1. executable flag on run_test 2. added base class for testing views 3. support for rednose in tests (rednose seems not compatible with multiprocess plugin) 4. Test* classes not imported in utils.__init__ (forced test requirements even when running gap project) 5. test requirements ignored by gip (not usefull on production)
- fixed link in changelog
- extended Route class which can better handle ending slash
- documentation (see
doc/index.rstor on github)
Version 0.4.3, 0.4.5
- fixed missing README.rst in MANIFEST.in (sorry)
- changes added to package description
- tests in project template (application tests)
- bin/ipython in project runs ipython (if installed) with gae testbed stubs
- new apps have model template file now
- better template loaders to allow install 3rd party modules
- default 404 page now shows list of routes
- gap tests can be run from setup.py test
- settings can have defaults in config.py (refer to project’s config.py:DEFAULT_SETTINGS)
- added some tests
- added baseTest classes (many thanks to Lukas Lukovsky)
- added gap.conf.settings (highly cached db stored settings)
- minor fixes in setup.py
Major rewrite to enable installation using pip and project creation a-la django.
- first version of setup.py