Projet

Général

Profil

0001-management-command-for-announces-send-10805.patch

Serghei Mihai, 11 juillet 2016 11:16

Télécharger (2,63 ko)

Voir les différences:

Subject: [PATCH] management command for announces send (#10805)

Ran as cron job every 5 minutes
 corbo/management/__init__.py                |  0
 corbo/management/commands/__init__.py       |  0
 corbo/management/commands/send_announces.py | 28 ++++++++++++++++++++++++++++
 debian/corbo.cron.d                         |  3 +++
 4 files changed, 31 insertions(+)
 create mode 100644 corbo/management/__init__.py
 create mode 100644 corbo/management/commands/__init__.py
 create mode 100644 corbo/management/commands/send_announces.py
 create mode 100644 debian/corbo.cron.d
corbo/management/commands/send_announces.py
1
# corbo - Announces Manager
2
# Copyright (C) 2016 Entr'ouvert
3
#
4
# This program is free software: you can redistribute it and/or modify it
5
# under the terms of the GNU Affero General Public License as published
6
# by the Free Software Foundation, either version 3 of the License, or
7
# (at your option) any later version.
8
#
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
# GNU Affero General Public License for more details.
13
#
14
# You should have received a copy of the GNU Affero General Public License
15
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
16

  
17
from django.utils import timezone
18
from django.core.management.base import BaseCommand, CommandError
19

  
20
from corbo.models import Broadcast
21

  
22
class Command(BaseCommand):
23

  
24
    def handle(self, *args, **kwargs):
25
        to_deliver = Broadcast.objects.filter(announce__publication_time__lte=timezone.now(),
26
                                deliver_time__isnull=True)
27
        for broadcast in to_deliver:
28
            broadcast.send()
debian/corbo.cron.d
1
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
2

  
3
*/5 * * * * corbo corbo-manage tenant_command send_announces --all-tenants
0
-