container-scheduler
===================
A scheduler for docker containers, made easy. Configure the desired schedule per each container and the library ensures
the container will be running at the correct timing.
Usage
-----
To start the scheduler, run the command below
.. code-block:: python
import container_scheduler
schedules = [
{"container": "container_name_1", "crontab": "*/1 * * * *"},
{"container": "container_name_2", "crontab": "0 4 * * *"}
]
container_scheduler.start(schedules)
The function ``start`` is synchronous and will not return until the scheduler is running. To stop it gracefully,
you can send a ``SIGTERM`` or a ``SIGKILL`` signal.
The library was originally developed to work in a docker container, acting as a scheduler container for other
containers (take a look at `docker-container-scheduler <https://github.com/yusefmaali/docker-container-scheduler>`_)
Meta
----
Yusef Maali - contact@yusefmaali.net
The scheduling is executed by the `schedule-cronjob <https://github.com/yusefmaali/schedule-cronjob>`_ library, a fork of the
excellent `schedule <https://github.com/dbader/schedule>`_ from Daniel Bader.
Distributed under the MIT license. See `LICENSE.txt <https://github.com/yusefmaali/container-scheduler/blob/master/LICENSE.txt>`_ for more information.
https://github.com/yusefmaali/container-scheduler
Raw data
{
"_id": null,
"home_page": "",
"name": "container-scheduler",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "docker,container,schedule,container scheduler,schedule container,docker container scheduler,periodic,scheduling,clockwork,cron,scheduler,job scheduling,cronjob,cronjob scheduling",
"author": "",
"author_email": "Yusef Maali <contact@yusefmaali.net>",
"download_url": "https://files.pythonhosted.org/packages/94/f9/d200c0d929a8fef53a483bd3c457143d77016096c23c0a9c683d097580bd/container-scheduler-1.0.0.tar.gz",
"platform": null,
"description": "container-scheduler\n===================\n\nA scheduler for docker containers, made easy. Configure the desired schedule per each container and the library ensures\nthe container will be running at the correct timing.\n\nUsage\n-----\n\nTo start the scheduler, run the command below\n\n.. code-block:: python\n\n import container_scheduler\n\n schedules = [\n {\"container\": \"container_name_1\", \"crontab\": \"*/1 * * * *\"},\n {\"container\": \"container_name_2\", \"crontab\": \"0 4 * * *\"}\n ]\n\n container_scheduler.start(schedules)\n\nThe function ``start`` is synchronous and will not return until the scheduler is running. To stop it gracefully,\nyou can send a ``SIGTERM`` or a ``SIGKILL`` signal.\n\nThe library was originally developed to work in a docker container, acting as a scheduler container for other\ncontainers (take a look at `docker-container-scheduler <https://github.com/yusefmaali/docker-container-scheduler>`_)\n\nMeta\n----\n\nYusef Maali - contact@yusefmaali.net\n\nThe scheduling is executed by the `schedule-cronjob <https://github.com/yusefmaali/schedule-cronjob>`_ library, a fork of the\nexcellent `schedule <https://github.com/dbader/schedule>`_ from Daniel Bader.\n\nDistributed under the MIT license. See `LICENSE.txt <https://github.com/yusefmaali/container-scheduler/blob/master/LICENSE.txt>`_ for more information.\n\nhttps://github.com/yusefmaali/container-scheduler\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A scheduler for docker containers, made easy",
"version": "1.0.0",
"project_urls": {
"changelog": "https://github.com/yusefmaali/container-scheduler/blob/master/CHANGELOG.rst",
"download": "https://github.com/yusefmaali/container-scheduler/tarball/1.0.0",
"homepage": "https://github.com/yusefmaali/container-scheduler",
"repository": "https://github.com/yusefmaali/container-scheduler"
},
"split_keywords": [
"docker",
"container",
"schedule",
"container scheduler",
"schedule container",
"docker container scheduler",
"periodic",
"scheduling",
"clockwork",
"cron",
"scheduler",
"job scheduling",
"cronjob",
"cronjob scheduling"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0da8ae42f8536a67754a406f711644f29fca3b2564c798f58352e6c5159defa6",
"md5": "5ec628cd8525ae8694150bc7dd9db781",
"sha256": "b733bdc506ae5ee777a2e119aee7d5cb2ce88e7f7923b4d14a2a845e087f0938"
},
"downloads": -1,
"filename": "container_scheduler-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5ec628cd8525ae8694150bc7dd9db781",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 4906,
"upload_time": "2023-08-18T01:20:47",
"upload_time_iso_8601": "2023-08-18T01:20:47.445417Z",
"url": "https://files.pythonhosted.org/packages/0d/a8/ae42f8536a67754a406f711644f29fca3b2564c798f58352e6c5159defa6/container_scheduler-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "94f9d200c0d929a8fef53a483bd3c457143d77016096c23c0a9c683d097580bd",
"md5": "27c2e76becdbf3a19bdec49490ddc43e",
"sha256": "8e8dc2b6caaaac1fea3173bd9a20ba7f6a76c058ae9683bb1f34a9667ebc694e"
},
"downloads": -1,
"filename": "container-scheduler-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "27c2e76becdbf3a19bdec49490ddc43e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 4171,
"upload_time": "2023-08-18T01:20:48",
"upload_time_iso_8601": "2023-08-18T01:20:48.940031Z",
"url": "https://files.pythonhosted.org/packages/94/f9/d200c0d929a8fef53a483bd3c457143d77016096c23c0a9c683d097580bd/container-scheduler-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-18 01:20:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "yusefmaali",
"github_project": "container-scheduler",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "container-scheduler"
}