Skip to main content

Django app for manage async tasks by http requests

Project description

django-i3tasks

Django app for manage async tasks by http requests

to install pip install django-i3tasks

Quick start

  1. Add "polls" to your INSTALLED_APPS setting like this::

    INSTALLED_APPS = [ ..., "django_i3tasks", ]

  2. Include the polls URLconf in your project urls.py like this::

    from django.urls import path
    
    from django_i3tasks import views as i3tasks_views
    
    path("i3/tasks-beat", i3tasks_views.BeatTaskView.as_view()),
    path("i3/tasks-beat/", i3tasks_views.BeatTaskView.as_view()),
    path("i3/tasks-push", i3tasks_views.PushedTaskView.as_view()),
    path("i3/tasks-push/", i3tasks_views.PushedTaskView.as_view()),
    
  3. Run python manage.py migrate to create the models.

  4. local example settings

    
    from django_i3tasks.types import I3TasksSettings, Queue, Schedule
    
    PUBSUB_CONFIG = {
        "EMULATOR": True,
        # "EMULATOR": False,
        "HOST": "pwd-pub-sub-emu:9085",
    
        # "NAMESPACE": "creators-area-back",
        # "DEFAULT_TOPIC_QUEUE_NAME": "default",
        # "DEFAULT_TOPIC_SUBSCRIPTION_NAME": "default",
        # "PUSH_ENDPOINT": "http://pwd-backend:9577/i3/tasks-push/",
    
        "PROJECT_ID": "i3idea",
        "CREDENTIALS": False,
        # "PROJECT_ID": 'hoopygang-158809',
        # "CREDENTIALS": "/app/service_accounts/creators-area-backend-pubsub.json"
    }
    
    I3TASKS = I3TasksSettings(
        namespace=f"tasks.{SHORT_PROJECT_NAME}",
        default_queue=Queue(
            queue_name="default",
            subscription_name="default",
            push_endpoint="http://pwd-backend:9577/i3/tasks-push/",
        ),
        other_queues=(
    
        ),
        schedules=(
            Schedule(
                module_name='django_i3tasks.tasks',
                func_name='test_task',
                cron='* * * * *',
                args=[],
                kwargs={},
            ),
        )
    )
    
  5. production example settings

    
    from django_i3tasks.types import I3TasksSettings, Queue, Schedule
    
    PUBSUB_CONFIG = {
        # "EMULATOR": True,
        "EMULATOR": False,
        # "HOST": "pwd-pub-sub-emu:9085",
    
        # "NAMESPACE": "creators-area-back",
        # "DEFAULT_TOPIC_QUEUE_NAME": "default",
        # "DEFAULT_TOPIC_SUBSCRIPTION_NAME": "default",
        # "PUSH_ENDPOINT": "http://pwd-backend:9577/i3/tasks-push/",
    
        "PROJECT_ID": "i3idea",
        # "CREDENTIALS": True,
        # "PROJECT_ID": 'hoopygang-158809',
        "CREDENTIALS": "/app/conf/pwd-backend-pubsub.json"
    }
    
    I3TASKS = I3TasksSettings(
        namespace=f"tasks.{SHORT_PROJECT_NAME}",
        default_queue=Queue(
            queue_name="default",
            subscription_name="default",
            push_endpoint="https://prowodo-back-tasks-tqhjqw4diq-no.a.run.app/i3/tasks-push/",
        ),
        other_queues=(
    
        ),
        schedules=(
            Schedule(
                module_name='django_i3tasks.tasks',
                func_name='test_task',
                cron='* * * * *',
                args=[],
                kwargs={},
            ),
        )
    )
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_i3tasks-0.0.19.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

django_i3tasks-0.0.19-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file django_i3tasks-0.0.19.tar.gz.

File metadata

  • Download URL: django_i3tasks-0.0.19.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.6

File hashes

Hashes for django_i3tasks-0.0.19.tar.gz
Algorithm Hash digest
SHA256 e2ff95033d739e86d471f596fbfdfe6463095821c0967372b1d8a06b7f5a4f37
MD5 695f43bf44f634cd441acde97bc19443
BLAKE2b-256 71ddb1e39938294eb80210cf28d0c1d1d54abbc90362bc9f1a4b2e561f75aba1

See more details on using hashes here.

File details

Details for the file django_i3tasks-0.0.19-py3-none-any.whl.

File metadata

File hashes

Hashes for django_i3tasks-0.0.19-py3-none-any.whl
Algorithm Hash digest
SHA256 85152f511572c3532f1470945a7ba30548d21f4afe884fdc25cf03cb76c82fb8
MD5 6a0bad440337845ffd2e0bda0e68807e
BLAKE2b-256 d438ae7397d10665044ef10007d0a9f997b10efbcf779dfe40d60fbf228e737a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page