I’ve realized that unfortunately you’re not going to be able to use
databases either. I’ve just remembered that AppEngine doesn’t allow you
write to the file system, so even if you do have an sqlite database, and
sqlite jdbc drivers or whatever, you won’t be able to alter your
I’ve not tried out Genki’s adapter, although i’ve talked with him
about it once.
My strong preference and recommendation is to use Ryan B.'s
appengine-apis and his dm-appengine adapter (
http://code.google.com/p/appengine-jruby/ they’re both available as gems
well currently named ‘appengine-apis’ and ‘dm-appengine’). Genki’s
is an 0.9.x adapter, and there are a number of changes that adapters
go through to work with 0.10. Ryan’s adapter is an 0.10 adapter.
DataMapper 0.10 is very soon to drop (i’m hoping next week, but it
Ryan, additionally, is a member of google’s appengine team, so i take
code to be a bit more on the authoritative side. The appengine-apis
a thin ruby wrapper to the Java Appengine APIs in such a way that you
test against them, and run them on the local dev server and the like.
Ryan’s dm-appengine is an abstraction layer on top of his api wrapper,
means that you can additionally test your code locally w/ his appengine
adapter, and again, run them against the jetty dev server that google
provides in the sdk. As far as i am aware genki doesn’t provide any
promises that his adapter will run locally.
I should add that there’s more info/work on this coming down the pipe.
been talking with a Ryan and another googler (John Woodell) and we’ve
some ideas as to how to make setup and deployment w/ appengine a little
more ruby like. Only thing is, that i’m waiting on dm 0.10 and the
Jars gems that we depend on to be released before i can write a tutorial
that can be used by anyone.
I personally use the appengine-apis gem and the dm-appengine adapter,
with a lib that i put together called reggae (Ruby Enabled GooGle App
http://github.com/knowtheory/reggae ). Reggae actually wraps all the
of the java sdk that the appengine-apis need to use, and provides access
the jetty dev server, and (soon) the upload and app configuration tools
google includes in the sdk.
Eventually the goal is to have something as stupid simple as
merb-gen app your-app-name
reggae upload your-app-name
[enter your account and password]
(most likely there will be an “edit your config.ru to provide metadata”
inbetween those two steps)
Hope that helps!