0e998768b9ba187e073c078970ee114f50303cec
[mygpo.git] / mygpo / admin / tasks.py
blob0e998768b9ba187e073c078970ee114f50303cec
1 from collections import Counter
3 from mygpo.cel import celery
4 from mygpo.maintenance.merge import PodcastMerger
5 from mygpo.db.couchdb.podcast import podcasts_by_id
7 from celery.utils.log import get_task_logger
8 logger = get_task_logger(__name__)
11 @celery.task
12 def merge_podcasts(podcast_ids, num_groups):
13 """ Task to merge some podcasts"""
15 logger.info('merging podcast ids %s', podcast_ids)
17 podcasts = podcasts_by_id(podcast_ids)
19 logger.info('merging podcasts %s', podcasts)
21 actions = Counter()
23 pm = PodcastMerger(podcasts, actions, num_groups)
24 podcast = pm.merge()
26 logger.info('merging result: %s', actions)
28 return actions, podcast