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.24.tar.gz (27.1 kB view details)

Uploaded Source

Built Distribution

django_i3tasks-0.0.24-py3-none-any.whl (31.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for django_i3tasks-0.0.24.tar.gz
Algorithm Hash digest
SHA256 216781701e67fcd7ea44ec742a76ad3826b044a04ba02aeb7cc89632c6092da0
MD5 76873869f4f48871a0a748267f863b29
BLAKE2b-256 c6c319db0a49d897054ee0ad6d5bcd16a1585e40aba44ba391f8f7c149623b92

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for django_i3tasks-0.0.24-py3-none-any.whl
Algorithm Hash digest
SHA256 5de0bd08f167deb92a2991ff47f224e19e82a8e609f2735a7ba5fdca3c52a5ac
MD5 8df493ac83d3e13acf41437287f523b5
BLAKE2b-256 9d0eac59766cc2401f97e1d82d8ea5af07730b5308c0a439d788a667fc3d724f

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