Since sqlalchemy is providing our database abstraction and we have
moved away from Mongo as the underlying database, it is now time to
simplify things and rip out mongo. This provides the bulk of the
changes, and can stand on its own. There are some followup tasks
that can be done, such as removing now unneeded abstraction layers,
e.g. db.sql.fake.py
log("ascii %s" % unicode_string) tries to convert unicode
to ascii, which might fail.
Better use log(u"unicode format %s" % unicode_string) and
let the logging framework handle the conversion. This works
much better and the exceptions still happening aren't
stopping the main app.
Also remove one useless import.
All gmg's subcommands used to have a -cf option to set the
config file. Instead make this a gmg global option.
This means:
bin/gmg migrate -cf mediagoblin_2.ini
gets
bin/gmg -cf mediagoblin_2.ini migrate
Many (all?) gmg subcommands take a -cf option to change the
used config file. This options used to be created in each
subcommand's parse_setup. Add a helper function and use it
around.
* Removed trailing whitespace
* Line length < 80 where possible
* Honor conventions on number of blank lines
* Honor conventions about spaces around :, =
* It's now possible to import/export your environment from/to a tarball.
./bin/gmg env_export [ -c mediagoblin_local.ini ] test.tar
and
./bin/gmg env_import [ -c mediagoblin_local.ini ] test.tar