diff options
author | Jessica Tallon <jessica@megworld.co.uk> | 2014-07-28 23:36:39 +0100 |
---|---|---|
committer | Jessica Tallon <jessica@megworld.co.uk> | 2014-07-30 21:53:52 +0100 |
commit | 5e5d445890c6c555dff48b1613c285da983d71c8 (patch) | |
tree | 6c04e0e8f2d455c3ebae77d3b6c65939dc388025 /mediagoblin/federation/task.py | |
parent | 138d934f014d2c9c54e247298318832e88dceadb (diff) | |
download | mediagoblin-5e5d445890c6c555dff48b1613c285da983d71c8.tar.lz mediagoblin-5e5d445890c6c555dff48b1613c285da983d71c8.tar.xz mediagoblin-5e5d445890c6c555dff48b1613c285da983d71c8.zip |
Fix #927 - Clean up federation code after Elrond's review
- Add json_error and use inplace of json_response where appropriate.
- Add garbage_collection to config spec file.
- Fix bugs in both garbage collection task and test
- Handle /api/whoami when no user logged in and a test for such a case.
- Validate ID is correct and user has comment privilege to comment.
Diffstat (limited to 'mediagoblin/federation/task.py')
-rwxr-xr-x | mediagoblin/federation/task.py | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/mediagoblin/federation/task.py b/mediagoblin/federation/task.py deleted file mode 100755 index 1d42e851..00000000 --- a/mediagoblin/federation/task.py +++ /dev/null @@ -1,49 +0,0 @@ -# GNU MediaGoblin -- federated, autonomous media hosting -# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -import celery -import datetime -import logging -import pytz - -from mediagoblin.db.models import MediaEntry - -_log = logging.getLogger(__name__) -logging.basicConfig() -_log.setLevel(logging.DEBUG) - -@celery.task() -def collect_garbage(): - """ - Garbage collection to clean up media - - This will look for all critera on models to clean - up. This is primerally written to clean up media that's - entered a erroneous state. - """ - _log.info("Garbage collection is running.") - now = datetime.datetime.now(pytz.UTC) - datetime.timedelta(days=1) - - garbage = MediaEntry.query.filter(MediaEntry.created > now) - garbage = garbage.filter(MediaEntry.state == "unprocessed") - - for entry in garbage.all(): - _log.info("Garbage media found with ID '{0}'".format(entry.id)) - entry.delete() - - - - |