Beispiel #1
0
def enqueue_events_for_all_sites():
    '''Loop through sites and enqueue events that are not already queued'''
    with frappe.init_site():
        jobs_per_site = get_jobs()
        sites = get_sites()

    for site in sites:
        try:
            enqueue_events_for_site(site=site, queued_jobs=jobs_per_site[site])
        except:
            # it should try to enqueue other sites
            print(frappe.get_traceback())
Beispiel #2
0
def enqueue_events_for_all_sites():
	'''Loop through sites and enqueue events that are not already queued'''
	with frappe.init_site():
		jobs_per_site = get_jobs()
		sites = get_sites()

	for site in sites:
		try:
			enqueue_events_for_site(site=site, queued_jobs=jobs_per_site[site])
		except:
			# it should try to enqueue other sites
			print frappe.get_traceback()
Beispiel #3
0
def trigger(site, event, queued_jobs=(), now=False):
    """trigger method in hooks.scheduler_events"""
    queue = 'long' if event.endswith('_long') else 'short'
    timeout = queue_timeout[queue]
    if not queued_jobs and not now:
        queued_jobs = get_jobs(site=site, queue=queue)

    for handler in frappe.get_hooks("scheduler_events").get(event, []):
        if not now:
            if handler not in queued_jobs:
                enqueue(handler, queue, timeout, event)
        else:
            scheduler_task(site=site, event=event, handler=handler, now=True)

    if frappe.flags.in_test:
        frappe.flags.ran_schedulers.append(event)
def trigger(site, event, queued_jobs=(), now=False):
	"""trigger method in hooks.scheduler_events"""
	queue = 'long' if event.endswith('_long') else 'short'
	timeout = queue_timeout[queue]
	if not queued_jobs and not now:
		queued_jobs = get_jobs(site=site, queue=queue)

	for handler in frappe.get_hooks("scheduler_events").get(event, []):
		if not now:
			if handler not in queued_jobs:
				enqueue(handler, queue, timeout, event)
		else:
			scheduler_task(site=site, event=event, handler=handler, now=True)

	if frappe.flags.in_test:
		frappe.flags.ran_schedulers.append(event)