..
Copyright (C) 2024 CERN.
Invenio-Jobs is free software; you can redistribute it and/or modify it
under the terms of the MIT License; see LICENSE file for more details.
==============
Invenio-Jobs
==============
.. image:: https://github.com/inveniosoftware/invenio-jobs/workflows/CI/badge.svg
:target: https://github.com/inveniosoftware/invenio-jobs/actions?query=workflow%3ACI
.. image:: https://img.shields.io/github/tag/inveniosoftware/invenio-jobs.svg
:target: https://github.com/inveniosoftware/invenio-jobs/releases
.. image:: https://img.shields.io/pypi/dm/invenio-jobs.svg
:target: https://pypi.python.org/pypi/invenio-jobs
.. image:: https://img.shields.io/github/license/inveniosoftware/invenio-jobs.svg
:target: https://github.com/inveniosoftware/invenio-jobs/blob/master/LICENSE
InvenioRDM module for jobs management
Usage
=====
This module adds a custom scheduler to schedule jobs that exist in the local database.
To use this scheduler, the following command can be ran locally:
.. code-block:: console
$ celery -A invenio_app.celery beat -l ERROR --scheduler invenio_jobs.services.scheduler:RunScheduler -s /var/run/celery-schedule --pidfile /var/run/celerybeat.pid
More Help
---------
Further documentation is available on
https://invenio-jobs.readthedocs.io/
..
Copyright (C) 2024 CERN.
Copyright (C) 2024-2025 Graz University of Technology.
Invenio-Jobs is free software; you can redistribute it and/or modify it
under the terms of the MIT License; see LICENSE file for more details.
Changes
=======
Version v4.3.1 (released 2025-07-21)
- fix: serialisation of since datetime
Version v4.3.0 (released 2025-07-17)
- tasks: adds sentry id to job message
- i18n: pulled translations
- errors: deprecate TaskExecutionError
- i18n: run js extract msgs
- i18n: add translations for logs display messages
- fix: improve key generation for message lines
- style: remove unused import
- refactor: fix potential memory leak in RunsLogs
- fix: fix linting errors
- fix: run auto linter
- refactor: clean up JobRunsHeader component
- ci: add JS testing workflow and update gitignore
Version v4.2.0 (released 2025-07-14)
- chores: replaced importlib_xyz with importlib
- i18n: push translations
- i18n: update frontend package path in workflow
- i18n: include additional .po files in MANIFEST.in
- i18n: update action texts to use lazy_gettext
- i18n: test sv language
- i18n: run js compile catalog
- i18n: run js extract msgs
- i18n: Remove unused translation files
- i18n: refactor compile catalog
- i18n: run py extract msgs
- fix: update transifex config
- workflow: add i18n pull and push translation jobs
- templates: job-details: Use invenio_url_for
- templates: job-details: Fix back button not navigating to job search
Version v4.1.0 (released 2025-07-02)
- admin: remove flag to always show the admin panel
- services: simplify search filtering logic
- fix: LegacyAPIWarning
- fix: SADeprecationWarning
Version v4.0.0 (released 2025-06-03)
- setup: bump major dependencies
- fix: ChangedInMarshmallow4Warning
Version v3.2.0 (released 2025-05-20)
- logging: add log deletion task
Version v3.1.2 (released 2025-05-14)
- logs: fix minor bug
Version v3.1.1 (released 2025-04-30)
- logging: fix celery signal
Version v3.1.0 (released 2025-04-28)
- Add custom logging handler using contextvars and OpenSearch
- Define JobLogEntrySchema and LogContextSchema
- Support search_after pagination in log search API
- Fetch logs incrementally from UI using search_after cursor
- Add React log viewer with fade-in and scroll support
- WARNING: It's required to add the job logs index template for this feature to work correctly
Version v3.0.2 (released 2025-03-24)
- scheduler: (fix) add newly created run object to db session (sqlalchemy v2 compatibility)
Version v3.0.1 (released 2025-03-10)
- ui: rename job run button label (ux improvement)
Version v3.0.0 (released 2025-02-13)
- Promote to stable release.
Version v3.0.0.dev2 (released 2025-01-23)
Version v3.0.0.dev1 (released 2024-12-12)
- fix: alembic problem
- setup: change to reusable workflows
- setup: bump major dependencies
- tasks: use utcnow
Version v2.0.0 (released 2024-10-14)
- job types: refactor public method name (breaking change)
Version v1.1.0 (released 2024-10-10)
- webpack: bump react-searchkit
Version v1.0.0 (released 2024-09-27)
- db: change tables names
- global: add jobs registry
- interface: add job types
Version v0.5.1 (released 2024-09-19)
- fix: add compatibility layer to move to flask>=3
Version v0.5.0 (released 2024-08-22)
- bump invenio-users-resources
Version v0.4.0 (released 2024-08-22)
- package: bump react-invenio-forms (#52)
Version v0.3.4 (released 2024-08-08)
- fix: pass args to task via run
Version v0.3.3 (released 2024-08-08)
- fix: utils: only eval strings
Version 0.3.2 (released 2024-07-24)
- UI: fix schedule save
- UI: fix default queue; don't error on empty args
Version 0.3.1 (released 2024-07-11)
- services: skip index rebuilding
Version 0.3.0 (released 2024-06-20)
- UI: Added create, edit and schedule options
- fix: only show stop button when task is running
- bug: fix display of durations
- global: support Jinja templating for job args
- config: rename enabled flag
- config: disable jobs view by default
Version 0.2.0 (released 2024-06-05)
- translations: added translations folder
- scheduler: filter jobs with a schedule
- service: pass run queue to task
Version 0.1.0 (released 2024-06-04)
- Initial public release.
Raw data
{
"_id": null,
"home_page": "https://github.com/inveniosoftware/invenio-jobs",
"name": "invenio-jobs",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "invenio rdm celery jobs",
"author": "CERN",
"author_email": "info@inveniosoftware.org",
"download_url": "https://files.pythonhosted.org/packages/7f/91/075d3eb7cfc8915a6b2611f3a33dcbc18b1850c091ddb7118ebb16831666/invenio_jobs-4.3.1.tar.gz",
"platform": "any",
"description": "..\n Copyright (C) 2024 CERN.\n\n Invenio-Jobs is free software; you can redistribute it and/or modify it\n under the terms of the MIT License; see LICENSE file for more details.\n\n==============\n Invenio-Jobs\n==============\n\n.. image:: https://github.com/inveniosoftware/invenio-jobs/workflows/CI/badge.svg\n :target: https://github.com/inveniosoftware/invenio-jobs/actions?query=workflow%3ACI\n\n.. image:: https://img.shields.io/github/tag/inveniosoftware/invenio-jobs.svg\n :target: https://github.com/inveniosoftware/invenio-jobs/releases\n\n.. image:: https://img.shields.io/pypi/dm/invenio-jobs.svg\n :target: https://pypi.python.org/pypi/invenio-jobs\n\n.. image:: https://img.shields.io/github/license/inveniosoftware/invenio-jobs.svg\n :target: https://github.com/inveniosoftware/invenio-jobs/blob/master/LICENSE\n\nInvenioRDM module for jobs management\n\nUsage\n=====\n\nThis module adds a custom scheduler to schedule jobs that exist in the local database.\n\nTo use this scheduler, the following command can be ran locally:\n\n.. code-block:: console\n\n $ celery -A invenio_app.celery beat -l ERROR --scheduler invenio_jobs.services.scheduler:RunScheduler -s /var/run/celery-schedule --pidfile /var/run/celerybeat.pid\n\n\nMore Help\n---------\n\nFurther documentation is available on\nhttps://invenio-jobs.readthedocs.io/\n\n..\n Copyright (C) 2024 CERN.\n Copyright (C) 2024-2025 Graz University of Technology.\n\n Invenio-Jobs is free software; you can redistribute it and/or modify it\n under the terms of the MIT License; see LICENSE file for more details.\n\nChanges\n=======\n\nVersion v4.3.1 (released 2025-07-21)\n\n- fix: serialisation of since datetime\n\nVersion v4.3.0 (released 2025-07-17)\n\n- tasks: adds sentry id to job message\n- i18n: pulled translations\n- errors: deprecate TaskExecutionError\n- i18n: run js extract msgs\n- i18n: add translations for logs display messages\n- fix: improve key generation for message lines\n- style: remove unused import\n- refactor: fix potential memory leak in RunsLogs\n- fix: fix linting errors\n- fix: run auto linter\n- refactor: clean up JobRunsHeader component\n- ci: add JS testing workflow and update gitignore\n\nVersion v4.2.0 (released 2025-07-14)\n\n- chores: replaced importlib_xyz with importlib\n- i18n: push translations\n- i18n: update frontend package path in workflow\n- i18n: include additional .po files in MANIFEST.in\n- i18n: update action texts to use lazy_gettext\n- i18n: test sv language\n- i18n: run js compile catalog\n- i18n: run js extract msgs\n- i18n: Remove unused translation files\n- i18n: refactor compile catalog\n- i18n: run py extract msgs\n- fix: update transifex config\n- workflow: add i18n pull and push translation jobs\n- templates: job-details: Use invenio_url_for\n- templates: job-details: Fix back button not navigating to job search\n\nVersion v4.1.0 (released 2025-07-02)\n\n- admin: remove flag to always show the admin panel\n- services: simplify search filtering logic\n- fix: LegacyAPIWarning\n- fix: SADeprecationWarning\n\nVersion v4.0.0 (released 2025-06-03)\n\n- setup: bump major dependencies\n- fix: ChangedInMarshmallow4Warning\n\nVersion v3.2.0 (released 2025-05-20)\n\n- logging: add log deletion task\n\nVersion v3.1.2 (released 2025-05-14)\n\n- logs: fix minor bug\n\nVersion v3.1.1 (released 2025-04-30)\n\n- logging: fix celery signal\n\nVersion v3.1.0 (released 2025-04-28)\n\n- Add custom logging handler using contextvars and OpenSearch\n- Define JobLogEntrySchema and LogContextSchema\n- Support search_after pagination in log search API\n- Fetch logs incrementally from UI using search_after cursor\n- Add React log viewer with fade-in and scroll support\n- WARNING: It's required to add the job logs index template for this feature to work correctly\n\nVersion v3.0.2 (released 2025-03-24)\n\n- scheduler: (fix) add newly created run object to db session (sqlalchemy v2 compatibility)\n\nVersion v3.0.1 (released 2025-03-10)\n\n- ui: rename job run button label (ux improvement)\n\nVersion v3.0.0 (released 2025-02-13)\n\n- Promote to stable release.\n\nVersion v3.0.0.dev2 (released 2025-01-23)\n\nVersion v3.0.0.dev1 (released 2024-12-12)\n\n- fix: alembic problem\n- setup: change to reusable workflows\n- setup: bump major dependencies\n- tasks: use utcnow\n\nVersion v2.0.0 (released 2024-10-14)\n\n- job types: refactor public method name (breaking change)\n\nVersion v1.1.0 (released 2024-10-10)\n\n- webpack: bump react-searchkit\n\nVersion v1.0.0 (released 2024-09-27)\n\n- db: change tables names\n- global: add jobs registry\n- interface: add job types\n\nVersion v0.5.1 (released 2024-09-19)\n\n- fix: add compatibility layer to move to flask>=3\n\nVersion v0.5.0 (released 2024-08-22)\n\n- bump invenio-users-resources\n\nVersion v0.4.0 (released 2024-08-22)\n\n- package: bump react-invenio-forms (#52)\n\nVersion v0.3.4 (released 2024-08-08)\n\n- fix: pass args to task via run\n\nVersion v0.3.3 (released 2024-08-08)\n\n- fix: utils: only eval strings\n\nVersion 0.3.2 (released 2024-07-24)\n\n- UI: fix schedule save\n- UI: fix default queue; don't error on empty args\n\nVersion 0.3.1 (released 2024-07-11)\n\n- services: skip index rebuilding\n\nVersion 0.3.0 (released 2024-06-20)\n\n- UI: Added create, edit and schedule options\n- fix: only show stop button when task is running\n- bug: fix display of durations\n- global: support Jinja templating for job args\n- config: rename enabled flag\n- config: disable jobs view by default\n\nVersion 0.2.0 (released 2024-06-05)\n\n- translations: added translations folder\n- scheduler: filter jobs with a schedule\n- service: pass run queue to task\n\nVersion 0.1.0 (released 2024-06-04)\n\n- Initial public release.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "InvenioRDM module for jobs management",
"version": "4.3.1",
"project_urls": {
"Homepage": "https://github.com/inveniosoftware/invenio-jobs"
},
"split_keywords": [
"invenio",
"rdm",
"celery",
"jobs"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f4ebf54d5cb08ad5e666af7a699d280e9c842c4d42b2c0fd0c3711398a7fa4e1",
"md5": "7b8d677473f117e8453b0acb0e424f7a",
"sha256": "397fa79dee0654c6074b74b2bcfc6bfe6868fb4fbc72e355c865e8f2da3ef9c2"
},
"downloads": -1,
"filename": "invenio_jobs-4.3.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7b8d677473f117e8453b0acb0e424f7a",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.7",
"size": 200978,
"upload_time": "2025-07-21T14:34:51",
"upload_time_iso_8601": "2025-07-21T14:34:51.013627Z",
"url": "https://files.pythonhosted.org/packages/f4/eb/f54d5cb08ad5e666af7a699d280e9c842c4d42b2c0fd0c3711398a7fa4e1/invenio_jobs-4.3.1-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "7f91075d3eb7cfc8915a6b2611f3a33dcbc18b1850c091ddb7118ebb16831666",
"md5": "4cef891ed23fb6e606c3275952c0868f",
"sha256": "134e8c64614c7e65b76175cab6f3c1c233ce559db11b9e00b81934318293aad4"
},
"downloads": -1,
"filename": "invenio_jobs-4.3.1.tar.gz",
"has_sig": false,
"md5_digest": "4cef891ed23fb6e606c3275952c0868f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 80793,
"upload_time": "2025-07-21T14:34:52",
"upload_time_iso_8601": "2025-07-21T14:34:52.496868Z",
"url": "https://files.pythonhosted.org/packages/7f/91/075d3eb7cfc8915a6b2611f3a33dcbc18b1850c091ddb7118ebb16831666/invenio_jobs-4.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-21 14:34:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "inveniosoftware",
"github_project": "invenio-jobs",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "invenio-jobs"
}