{ "info": { "author": "Marco Acierno", "author_email": "marcoaciernoemail@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Django", "Framework :: Django :: 1.10", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Django Schedulermanager\n=======================\n\nCreates two commands ``schedulejob`` and ``unschedulejob`` that allows\nyou to schedule (and unschedule) background jobs.\n\nIf you have a brunch of jobs to start with your backend (e.g, if you\nhave to update your social feed every hour) you can just write the code\nof the job, mark it with the ``schedulable`` decorator and the job will\nbe schedulable with the ``schedulejob`` command.\n\nRight now the library uses ``django-rq`` + ``rq-scheduler``, but the\ndependency on ``django-rq`` is not needed and will be removed soon.\n\nHow to use\n----------\n\n1. Install the library using ``pip install django_schedulermanager``\n2. Add ``django_schedulermanager.apps.DjangoSchedulerManagerConfig`` to\n your INSTALLED\\_APPS\n3. Write your job code in a module named 'jobs' (Remember to insert the\n app in the ``INSTALLED_APPS`` list)\n4. Import the ``schedulable`` annotation:\n ``from django_schedulermanager.decorators import schedulable``\n5. Mark your function with ``schedulable``. You can pass to the\n decorator the following parameters:\n\n - interval: The interval of the function. Required.\n - scheduled\\_time: When the function should start the first time.\n Required. It's a function.\n - repeat: Not required, by default None which means 'repeat always'\n - id: The ID of the job. It will also be the name of the job that\n you have to pass when using ``(un)schedulejob``. Not required, by\n default None which means 'use the name of the function'\n - queue: The queue to use. By default 'default'\n\nNow you can schedule and unschedule your jobs using\n``python manage.py schedulejob `` and\n``python manage.py unschedulejob ``! Call those in your init script\nand your jobs should schedule (and unschedule) automatically\n\nSee also ``test-project`` directory to see an example, if you want to\ntest the project, clone the repository and run the command\n``make testproject``, it will copy the ``django_schedulermanager``\nfolder (the library code) in the ``test-project`` folder\n\nTODO\n----\n\n- [ ] Remove dependency on ``django-rq``\n- [ ] If present, read 'queue' from ``@job`` annotation\n- [ ] Add ``unschedulejob all`` to unschedule all the jobs\n- [ ] Add a command to remove all the scheduled jobs that don't have a\n function in the jobs.py files", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/marcoacierno/django-schedulermanager/", "keywords": "django_schedulermanager", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "django_schedulermanager", "package_url": "https://pypi.org/project/django_schedulermanager/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django_schedulermanager/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/marcoacierno/django-schedulermanager/" }, "release_url": "https://pypi.org/project/django_schedulermanager/1.0.1/", "requires_dist": null, "requires_python": null, "summary": "A package that allows you to schedule and unschedule jobs", "version": "1.0.1" }, "last_serial": 2280841, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "720852a71100919b834f4a37394d21e4", "sha256": "1c3aa2957492926ec0f789e64f91deec1bca1673b94d1ccb54e8f871db0ea260" }, "downloads": -1, "filename": "django_schedulermanager-1.0.tar.gz", "has_sig": false, "md5_digest": "720852a71100919b834f4a37394d21e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4785, "upload_time": "2016-08-14T15:21:09", "url": "https://files.pythonhosted.org/packages/58/4c/fa0602905ae72b14389bfb8d8724317d27c00f814ba5c1eab181f17f9654/django_schedulermanager-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "7ce5bdf329dc6a56477913556605307d", "sha256": "3889fd4af6ead8d9b925977a8f40580702a09d72bcc4a56e5b3f33fdd4304133" }, "downloads": -1, "filename": "django_schedulermanager-1.0.1.tar.gz", "has_sig": false, "md5_digest": "7ce5bdf329dc6a56477913556605307d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4613, "upload_time": "2016-08-14T16:29:11", "url": "https://files.pythonhosted.org/packages/ad/a5/448ff27910e8ff542adf67acfa68a30b02f242d7f450733842b2760e401d/django_schedulermanager-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7ce5bdf329dc6a56477913556605307d", "sha256": "3889fd4af6ead8d9b925977a8f40580702a09d72bcc4a56e5b3f33fdd4304133" }, "downloads": -1, "filename": "django_schedulermanager-1.0.1.tar.gz", "has_sig": false, "md5_digest": "7ce5bdf329dc6a56477913556605307d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4613, "upload_time": "2016-08-14T16:29:11", "url": "https://files.pythonhosted.org/packages/ad/a5/448ff27910e8ff542adf67acfa68a30b02f242d7f450733842b2760e401d/django_schedulermanager-1.0.1.tar.gz" } ] }