Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ahmetkotan/celeryman
Celery Async Task Management App for Django
https://github.com/ahmetkotan/celeryman
async celery django python
Last synced: 3 days ago
JSON representation
Celery Async Task Management App for Django
- Host: GitHub
- URL: https://github.com/ahmetkotan/celeryman
- Owner: ahmetkotan
- License: mit
- Created: 2018-10-18T10:58:15.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-01-06T22:27:46.000Z (almost 3 years ago)
- Last Synced: 2024-10-14T00:50:01.272Z (28 days ago)
- Topics: async, celery, django, python
- Language: Python
- Size: 10.7 KB
- Stars: 36
- Watchers: 2
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
=====================================================================
Celeryman
=====================================================================
Celeryman is a management application for celery async tasks on django.
It can manage created async tasks or you can create async task with ManagedTask or CeleryTask models.Task cannot be created with the same arguments at the same time.
Installation
============
on Pypi
::
pip install celeryman
on Github
::
git clone [email protected]:ahmetkotan/celeryman.git
cd celeryman
python setup.py installSettings
============
After celery integration is completed, just add the celeryman app to `INSTALLED_APPS`.
::INSTALLED_APPS = [
...
'celeryman',
...
]About
=====
When celery service is run, Celeryman will discover tasks and save to database as CeleryTask object.
If you create async task with `apply_async()`, `delay()` etc. methods, Celeryman will create ManagedTask object when task is start.
::
timer_task.apply_async((10,))Usage
=====
Async task with ManagedTask and CeleryTask model.
::
m = ManagedTask.objects.create(task_name='timer_task', celery_task_args=[10])
m.set_task_args([10]) # if you don't use celery_task_args when created object, you can set with this method.
m.start()
m.stop()Or use
::
c = CeleryTask.objects.get(task_name='timer_task')
c.set_task_args([10])
managed_task = c.start()
managed_task.stop()Admin Panel
===========
To usable the async tasks:
/admin/celeryman/celerytask/To view the created async tasks and to create new async task:
/admin/celeryman/managedtask/