예제 #1
0
    def handle(self, task_name, **options):
        kronos.load()

        for task in kronos.tasks:
            if task.__name__ == task_name:
                return task()

        raise CommandError("Task '%s' not found" % task_name)
예제 #2
0
    def handle(self, task_name, **options):
        kronos.load()

        for task in kronos.tasks:
            if task.__name__ == task_name:
                return task()

        raise CommandError('Task \'%s\' not found' % task_name)
예제 #3
0
    def handle(self, task_name, **options):
        kronos.load()

        for task in kronos.tasks:
            if task.__name__ == task_name:
                kronos.Task.objects.create(name=task_name)

                return task()

        raise CommandError('Task \'%s\' not found' % task_name)
예제 #4
0
    def handle(self, task_name, **options):
        kronos.load()

        for task in kronos.tasks:
            if task['name'] == task_name:
                if not task['django_command']:
                    return task['fn']()
                else:
                    raise CommandError('This is a django command. You have '
                        'to run it via python manage.py {0}'
                        .format(task_name))
        raise CommandError('Task \'%s\' not found' % task_name)
예제 #5
0
    def handle(self, task_name, **options):
        kronos.load()

        for task in kronos.registry:
            if task.name == task_name:
                if task.function:
                    return task.function()
                else:
                    raise CommandError('This is a django command. You have '
                        'to run it via python manage.py {0}'
                        .format(task_name))
        raise CommandError('Task \'%s\' not found' % task_name)
예제 #6
0
파일: runtask.py 프로젝트: dev3320770/ETS
    def handle(self, *args, **options):
        kronos.load()

        task_name = options.get('task')

        for task in kronos.registry:
            if task.name == task_name:
                if task.function:
                    return task.function()
                else:
                    raise CommandError(
                        'This is a django command. You have '
                        'to run it via python manage.py {0}'.format(task_name))
        raise CommandError('Task \'%s\' not found' % task_name)
예제 #7
0
    def handle(self, *args, **options):
        kronos.load()

        print('* List of tasks registered in Kronos *')

        print('>> Kronos tasks')
        for task in kronos.registry:
            if task.function:
                print('    >> {0}'.format(task.name))

        print('>> Django tasks')
        for task in kronos.registry:
            if not task.function:
                print('    >> {0}'.format(task.name))
예제 #8
0
    def handle(self, *args, **options):
        kronos.load()

        print('* List of tasks registered in Kronos *')

        print('>> Kronos tasks')
        for task in kronos.tasks:
            if not task['django_command']:
                print('    >> {0}'.format(task['name']))

        print('>> Django tasks')
        for task in kronos.tasks:
            if task['django_command']:
                print('    >> {0}'.format(task['name']))
예제 #9
0
    def handle(self, *args, **options):
        kronos.load()

        print("* List of tasks registered in Kronos *")

        print(">> Kronos tasks")
        for task in kronos.tasks:
            if not task["django_command"]:
                print("    >> {0}".format(task["name"]))

        print(">> Django tasks")
        for task in kronos.tasks:
            if task["django_command"]:
                print("    >> {0}".format(task["name"]))
예제 #10
0
    def handle(self, task_name, **options):
        kronos.load()

        for task in kronos.tasks:
            if task.__name__ == task_name:
                if task.seconds_interval is not None and task.seconds_interval < 60:
                    results = []
                    counter = int(60/task.seconds_interval)

                    for i in xrange(counter):
                        results.append(task())

                        if i < counter:
                            sleep(task.seconds_interval)

                    return str(results)
                else:
                    return task()

        raise CommandError('Task \'%s\' not found' % task_name)
예제 #11
0
from django.core.management import call_command

from subprocess import PIPE
from StringIO import StringIO

from nose.tools import *

from kronos import tasks, load
from kronos.utils import read_crontab, write_crontab, delete_crontab

from mock import Mock, patch

import project.cron
import project.app

load()

@patch('subprocess.Popen')
def test_read_crontab(mock):
    """Test reading from the crontab."""
    mock.return_value = Mock(
        stdout = StringIO('crontab: installing new crontab'),
        stderr = StringIO('')
    )

    read_crontab()

    mock.assert_called_with(
        args = 'crontab -l',
        shell = True,
        stdout = PIPE,
예제 #12
0
파일: tests.py 프로젝트: dev3320770/ETS
 def setUp(self):
     load()
     crontab.remove_all()
예제 #13
0
 def setUp(self):
     load()
예제 #14
0
 def setUp(self):
     load()
예제 #15
0
    def handle(self, *args, **options):
        kronos.load()

        print('* List of tasks registered in Kronos *')
        for task in kronos.tasks:
            print('>> {0}'.format(task.__name__))
예제 #16
0
 def setUp(self):
     load()
     crontab.remove_all()
예제 #17
0
from django.core.management import call_command

from subprocess import PIPE
from StringIO import StringIO

from nose.tools import *

from kronos import tasks, load
from kronos.utils import read_crontab, write_crontab, delete_crontab

from mock import Mock, patch

import project.cron
import project.app

load()


@patch('subprocess.Popen')
def test_read_crontab(mock):
    """Test reading from the crontab."""
    mock.return_value = Mock(
        stdout=StringIO('crontab: installing new crontab'),
        stderr=StringIO(''))

    read_crontab()

    mock.assert_called_with(args='crontab -l',
                            shell=True,
                            stdout=PIPE,
                            stderr=PIPE)