Files @ cbf524e4c1a3
Branch filter:

Location: kallithea/.coveragerc

domruf
utils: remove Session after we are done using it in set_app_settings

When the Kallithea WSGI application or celeryd is started, TurboGears
app_config.make_base_app calls Kallithea app_cfg.setup_configuration which runs
utils.set_app_settings. That function will read settings from the database and
store them in the global config. It uses a database session which is created on
demand, but this session was not dismissed but left around for the next thing
that asked for a database session. MySQL will by default close connections
after 1 hour, so when celery tried to run a task after 1 hour of inactivity, it
could fail because of the closed connection.

utils.set_app_settings must thus remove the Session after use, just like
auth.set_available_permissions do.

This will thus fix for example some MySQL connection problems seen with Celery.
[run]
omit =
    # the bin scripts are not part of the Kallithea web app
    kallithea/bin/*
    # we ship with no active extensions
    kallithea/config/rcextensions/*
    # dbmigrate and paster_commands are not part of the Kallithea web app
    kallithea/lib/dbmigrate/*
    kallithea/lib/paster_commands/*
    # the tests themselves should not be part of the coverage report
    kallithea/tests/*
    # the scm hooks are not run in the kallithea process
    kallithea/config/post_receive_tmpl.py
    kallithea/config/pre_receive_tmpl.py