digitalhub-runtime-python 0.16.0b2__tar.gz → 0.16.0b3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/PKG-INFO +2 -2
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_base/runtime_entity/builder.py +1 -1
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/parser.py +9 -1
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/python → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/_commons}/utils.py +42 -7
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/_base/builder.py +38 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/_base/entity.py +134 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/guardrail/builder.py +27 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/guardrail/entity.py +25 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/hydra/builder.py +31 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/hydra/entity.py +25 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/hydra/utils.py +3 -2
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/openinference/builder.py +27 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/openinference/entity.py +25 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/python/builder.py +24 -0
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/python/entity.py +25 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/_base/entity.py +1 -1
- digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/runtimes/__init__.py +3 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/pyproject.toml +2 -2
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/guardrail/builder.py +0 -95
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/guardrail/entity.py +0 -69
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/hydra/builder.py +0 -94
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/hydra/entity.py +0 -81
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/openinference/builder.py +0 -95
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/openinference/entity.py +0 -69
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/python/builder.py +0 -92
- digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/python/entity.py +0 -69
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.github/scripts/bump.sh +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.github/scripts/changelog.sh +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.github/scripts/cliff.toml +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.github/workflows/release.yml +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.github/workflows/run_local_test.yml +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.github/workflows/test_release.yml +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/.gitignore +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/AUTHORS +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/CONTRIBUTING +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/COPYRIGHT +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/LICENSE +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/README.md +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_base/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_base/runtime_entity/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/enums.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/enums.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/factory.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/modules/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/modules/_base.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/modules/_conda.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/modules/_pip.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/_commons/requirement_parser/modules/_pyproject.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/guardrail → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/_base}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/hydra → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/guardrail}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/guardrail/models.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/guardrail/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/guardrail/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/openinference → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/hydra}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/hydra/models.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/hydra/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/hydra/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/function/python → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/openinference}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/openinference/models.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/openinference/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/openinference/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/python}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/python/models.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/python/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/function/python/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/_base → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/guardrail_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/_base}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/_base/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/_base/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/_base/utils.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/guardrail_serve → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/guardrail_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/hydra_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/guardrail_serve}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_serve/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_serve/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_serve/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/guardrail_serve/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/hydra_job → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/hydra_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/hydra_subtask → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/hydra_job}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_job/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_job/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_job/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_job/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/openinference_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/hydra_subtask}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_subtask/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_subtask/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_subtask/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/hydra_subtask/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/openinference_serve → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/openinference_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/python_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/openinference_serve}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_serve/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_serve/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_serve/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/openinference_serve/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/python_job → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/python_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/run/python_serve → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/python_job}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_job/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_job/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_job/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_job/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/run/python_serve}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_serve/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_serve/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_serve/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/run/python_serve/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/guardrail_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/guardrail_serve → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/guardrail_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/hydra_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/guardrail_serve}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_serve/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_serve/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_serve/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/guardrail_serve/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/hydra_job → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/hydra_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/hydra_subtask → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/hydra_job}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_job/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_job/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_job/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_job/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/openinference_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/hydra_subtask}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_subtask/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_subtask/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_subtask/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/hydra_subtask/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/openinference_serve → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/openinference_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/python_build → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/openinference_serve}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_serve/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_serve/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_serve/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/openinference_serve/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/python_job → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/python_build}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_build/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_build/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_build/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_build/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/entities/task/python_serve → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/python_job}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_job/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_job/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_job/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_job/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2/digitalhub_runtime_python/runtimes → digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/task/python_serve}/__init__.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_serve/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_serve/entity.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_serve/spec.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/entities/task/python_serve/status.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/runtimes/builder.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/runtimes/hydra_runtime.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/runtimes/runtime.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/utils/configuration.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/utils/inputs.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/utils/outputs.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/digitalhub_runtime_python/utils/utils.py +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/function/function-python-git.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/function/function-python-local.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/function/function-python-zip.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/run/run-python+build:run.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/run/run-python+job:run.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/run/run-python+serve:run.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/task/task-python+build.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/task/task-python+job.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/entities/task/task-python+serve.json +0 -0
- {digitalhub_runtime_python-0.16.0b2 → digitalhub_runtime_python-0.16.0b3}/test/instances/test_validate.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
2
|
Name: digitalhub-runtime-python
|
|
3
|
-
Version: 0.16.
|
|
3
|
+
Version: 0.16.0b3
|
|
4
4
|
Summary: Python runtime for DHCore
|
|
5
5
|
Project-URL: Homepage, https://github.com/scc-digitalhub/digitalhub-sdk-runtime-python
|
|
6
6
|
Author-email: Fondazione Bruno Kessler <digitalhub@fbk.eu>, Matteo Martini <mmartini@fbk.eu>
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from digitalhub.entities._base.runtime_entity.builder import RuntimeEntityBuilder
|
|
8
7
|
from digitalhub.entities._commons.utils import map_actions
|
|
8
|
+
from digitalhub.entities._mixin.runtime_entity.builder import RuntimeEntityBuilder
|
|
9
9
|
|
|
10
10
|
from digitalhub_runtime_python.entities._commons.enums import Actions, EntityKinds
|
|
11
11
|
|
|
@@ -5,10 +5,13 @@ from __future__ import annotations
|
|
|
5
5
|
|
|
6
6
|
from pathlib import Path
|
|
7
7
|
|
|
8
|
+
from digitalhub.utils.logger.logger import get_logger
|
|
8
9
|
from pip._internal.operations import freeze
|
|
9
10
|
|
|
10
11
|
from digitalhub_runtime_python.entities._commons.requirement_parser.factory import RequirementParserFactory
|
|
11
12
|
|
|
13
|
+
logger = get_logger(__file__)
|
|
14
|
+
|
|
12
15
|
|
|
13
16
|
class RequirementParser:
|
|
14
17
|
"""
|
|
@@ -88,7 +91,12 @@ class RequirementParser:
|
|
|
88
91
|
normalized_name = req.lower().replace("_", "-")
|
|
89
92
|
if normalized_name in installed_map:
|
|
90
93
|
# Use the installed version
|
|
91
|
-
|
|
94
|
+
installed_requirement = installed_map[normalized_name]
|
|
95
|
+
logger.warning(
|
|
96
|
+
f"Warning: {req} version unspecified, using version {installed_requirement} inferred "
|
|
97
|
+
"from local environment. To override set an explicit version."
|
|
98
|
+
)
|
|
99
|
+
result.append(installed_requirement)
|
|
92
100
|
else:
|
|
93
101
|
# Package not found in environment, keep without version
|
|
94
102
|
result.append(req)
|
|
@@ -11,7 +11,8 @@ from digitalhub.entities._commons.utils import build_zip_path
|
|
|
11
11
|
from digitalhub.stores.data.api import get_store
|
|
12
12
|
from digitalhub.utils.exceptions import EntityError
|
|
13
13
|
from digitalhub.utils.file_utils import eval_py_type, eval_zip_type
|
|
14
|
-
from digitalhub.utils.generic_utils import create_archive, encode_string, read_source
|
|
14
|
+
from digitalhub.utils.generic_utils import create_archive, decode_base64_string, encode_string, read_source
|
|
15
|
+
from digitalhub.utils.io_utils import write_text
|
|
15
16
|
from digitalhub.utils.uri_utils import has_local_scheme
|
|
16
17
|
|
|
17
18
|
from digitalhub_runtime_python.entities.function.python.models import Lang
|
|
@@ -20,6 +21,38 @@ if typing.TYPE_CHECKING:
|
|
|
20
21
|
from digitalhub_runtime_python.entities.function.python.entity import FunctionPython
|
|
21
22
|
|
|
22
23
|
|
|
24
|
+
class _LocalSourceExport:
|
|
25
|
+
def __init__(self, source: dict, root: Path) -> None:
|
|
26
|
+
self.source = source
|
|
27
|
+
self.root = root
|
|
28
|
+
self.base64 = None
|
|
29
|
+
|
|
30
|
+
def __enter__(self) -> None:
|
|
31
|
+
# Strip base64 from source at following conditions:
|
|
32
|
+
# - source is local path
|
|
33
|
+
# - base64 is not None
|
|
34
|
+
source_path = self.source.get("source")
|
|
35
|
+
if source_path is None or not has_local_scheme(source_path):
|
|
36
|
+
return
|
|
37
|
+
|
|
38
|
+
# Check base64. If it is set, decode it in a local file
|
|
39
|
+
# save in variable to restore on object after export
|
|
40
|
+
self.base64 = self.source.pop("base64", None)
|
|
41
|
+
if self.base64 is not None:
|
|
42
|
+
# Write local file
|
|
43
|
+
write_text(self.root / source_path, decode_base64_string(self.base64))
|
|
44
|
+
return
|
|
45
|
+
|
|
46
|
+
def __exit__(self, exc_type, exc_value, traceback) -> None:
|
|
47
|
+
# Restore base64 after export, including when export raises an exception.
|
|
48
|
+
if self.base64 is not None:
|
|
49
|
+
self.source["base64"] = self.base64
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
def export_local_source(source: dict, root: Path) -> _LocalSourceExport:
|
|
53
|
+
return _LocalSourceExport(source, root)
|
|
54
|
+
|
|
55
|
+
|
|
23
56
|
def source_check(**kwargs) -> dict:
|
|
24
57
|
"""
|
|
25
58
|
Check source code.
|
|
@@ -43,6 +76,7 @@ def source_check(**kwargs) -> dict:
|
|
|
43
76
|
lang = kwargs.pop("lang", None)
|
|
44
77
|
|
|
45
78
|
if source is not None:
|
|
79
|
+
source = source.copy()
|
|
46
80
|
code_src = source.pop("source", None)
|
|
47
81
|
code = source.pop("code", None)
|
|
48
82
|
base64 = source.pop("base64", None)
|
|
@@ -101,8 +135,7 @@ def _check_params(
|
|
|
101
135
|
if init_function is not None:
|
|
102
136
|
source["init_function"] = init_function
|
|
103
137
|
|
|
104
|
-
if lang is None
|
|
105
|
-
source["lang"] = Lang.PYTHON.value
|
|
138
|
+
source["lang"] = lang if lang is not None else Lang.PYTHON.value
|
|
106
139
|
|
|
107
140
|
if code_src is None and code is None and base64 is None:
|
|
108
141
|
raise EntityError("Source must be provided.")
|
|
@@ -148,10 +181,12 @@ def source_post_check(exec: FunctionPython) -> FunctionPython:
|
|
|
148
181
|
# If source is a folder, zip it and upload it
|
|
149
182
|
if not path_src.is_file():
|
|
150
183
|
archive_path = create_archive(path_src)
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
184
|
+
try:
|
|
185
|
+
dst = build_zip_path(exec, archive_path.name)
|
|
186
|
+
get_store(dst).upload(str(archive_path), dst)
|
|
187
|
+
exec.spec.source["source"] = dst
|
|
188
|
+
finally:
|
|
189
|
+
archive_path.unlink(missing_ok=True)
|
|
155
190
|
|
|
156
191
|
# If source is a file, read it and encode it in base64
|
|
157
192
|
elif eval_py_type(code_src):
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/_base/builder.py
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from digitalhub.entities.function._base.builder import FunctionBuilder
|
|
8
|
+
|
|
9
|
+
from digitalhub_runtime_python.entities._base.runtime_entity.builder import RuntimeEntityBuilder
|
|
10
|
+
from digitalhub_runtime_python.entities._commons.utils import source_check, source_post_check
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class FunctionBaseBuilder(FunctionBuilder, RuntimeEntityBuilder):
|
|
14
|
+
"""
|
|
15
|
+
Base builder for runtime Python functions.
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
def _prepare_kwargs(self, kwargs: dict) -> dict:
|
|
19
|
+
return source_check(**kwargs)
|
|
20
|
+
|
|
21
|
+
def _prepare_source(self, source: dict) -> dict:
|
|
22
|
+
return source_check(source=source)["source"]
|
|
23
|
+
|
|
24
|
+
def build(self, *args, **kwargs):
|
|
25
|
+
kwargs = self._prepare_kwargs(kwargs)
|
|
26
|
+
return source_post_check(super().build(*args, **kwargs))
|
|
27
|
+
|
|
28
|
+
def from_dict(self, obj: dict):
|
|
29
|
+
return source_post_check(super().from_dict(obj))
|
|
30
|
+
|
|
31
|
+
def _parse_dict(self, obj: dict) -> dict:
|
|
32
|
+
if spec_dict := obj.get("spec", {}):
|
|
33
|
+
# Check source
|
|
34
|
+
source = spec_dict.get("source", {})
|
|
35
|
+
if source:
|
|
36
|
+
spec_dict["source"] = self._prepare_source(source)
|
|
37
|
+
|
|
38
|
+
return super()._parse_dict(obj)
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/_base/entity.py
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from digitalhub.entities.function._base.entity import Function
|
|
8
|
+
from digitalhub.utils.generic_utils import decode_base64_string
|
|
9
|
+
from digitalhub.utils.io_utils import write_text
|
|
10
|
+
|
|
11
|
+
from digitalhub_runtime_python.entities._commons.enums import Actions
|
|
12
|
+
from digitalhub_runtime_python.entities._commons.requirement_parser.parser import RequirementParser
|
|
13
|
+
from digitalhub_runtime_python.entities._commons.utils import export_local_source
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class FunctionBaseFunction(Function):
|
|
17
|
+
"""
|
|
18
|
+
Base class for runtime Python functions.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
def _post_create_hook_before_save(self) -> None:
|
|
22
|
+
"""
|
|
23
|
+
Parse function requirements before saving the entity.
|
|
24
|
+
|
|
25
|
+
Returns
|
|
26
|
+
-------
|
|
27
|
+
None
|
|
28
|
+
This method updates the function requirements in place.
|
|
29
|
+
"""
|
|
30
|
+
self.spec.requirements = RequirementParser().parse(self.spec.requirements)
|
|
31
|
+
|
|
32
|
+
def export(self) -> str:
|
|
33
|
+
"""
|
|
34
|
+
Export the function to the context folder.
|
|
35
|
+
|
|
36
|
+
Returns
|
|
37
|
+
-------
|
|
38
|
+
str
|
|
39
|
+
Exported filepath.
|
|
40
|
+
"""
|
|
41
|
+
with export_local_source(self.spec.source, self._context().root):
|
|
42
|
+
config = getattr(self.spec, "config", None)
|
|
43
|
+
# Check base64. If it is set, decode it in a local file
|
|
44
|
+
# save in variable to restore on object after export
|
|
45
|
+
base64 = None
|
|
46
|
+
if config is not None:
|
|
47
|
+
base64 = config.pop("base64", None)
|
|
48
|
+
if base64 is not None:
|
|
49
|
+
# Write local file
|
|
50
|
+
config_pth = self._context().root / "config.yaml"
|
|
51
|
+
write_text(config_pth, decode_base64_string(base64))
|
|
52
|
+
|
|
53
|
+
try:
|
|
54
|
+
return super().export()
|
|
55
|
+
finally:
|
|
56
|
+
if config is not None and base64 is not None:
|
|
57
|
+
config["base64"] = base64
|
|
58
|
+
|
|
59
|
+
def build(
|
|
60
|
+
self,
|
|
61
|
+
wait: bool = True,
|
|
62
|
+
log_info: bool = True,
|
|
63
|
+
extensions: list[dict] | None = None,
|
|
64
|
+
**kwargs,
|
|
65
|
+
):
|
|
66
|
+
"""
|
|
67
|
+
Build the function using the build action.
|
|
68
|
+
|
|
69
|
+
Parameters
|
|
70
|
+
----------
|
|
71
|
+
wait : bool
|
|
72
|
+
Whether to wait for the build to complete.
|
|
73
|
+
log_info : bool
|
|
74
|
+
Whether to log information while waiting.
|
|
75
|
+
extensions : list[dict] | None
|
|
76
|
+
List of extensions to apply.
|
|
77
|
+
**kwargs : dict
|
|
78
|
+
Keyword arguments passed to the run builder.
|
|
79
|
+
|
|
80
|
+
Returns
|
|
81
|
+
-------
|
|
82
|
+
Run
|
|
83
|
+
Build run instance.
|
|
84
|
+
"""
|
|
85
|
+
return super().run(
|
|
86
|
+
Actions.BUILD.value,
|
|
87
|
+
wait=wait,
|
|
88
|
+
log_info=log_info,
|
|
89
|
+
extensions=extensions,
|
|
90
|
+
**kwargs,
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
def run(
|
|
94
|
+
self,
|
|
95
|
+
action: str,
|
|
96
|
+
wait: bool = False,
|
|
97
|
+
log_info: bool = True,
|
|
98
|
+
extensions: list[dict] | None = None,
|
|
99
|
+
auto_build: bool = True,
|
|
100
|
+
**kwargs,
|
|
101
|
+
):
|
|
102
|
+
"""
|
|
103
|
+
Run the function, building it first when no image is available.
|
|
104
|
+
|
|
105
|
+
Parameters
|
|
106
|
+
----------
|
|
107
|
+
action : str
|
|
108
|
+
Action to execute.
|
|
109
|
+
wait : bool
|
|
110
|
+
Whether to wait for execution to complete.
|
|
111
|
+
log_info : bool
|
|
112
|
+
Whether to log information while waiting.
|
|
113
|
+
extensions : list[dict] | None
|
|
114
|
+
List of extensions to apply.
|
|
115
|
+
auto_build : bool
|
|
116
|
+
Whether to build the function when ``spec.image`` is ``None``.
|
|
117
|
+
**kwargs : dict
|
|
118
|
+
Keyword arguments passed to the run builder.
|
|
119
|
+
|
|
120
|
+
Returns
|
|
121
|
+
-------
|
|
122
|
+
Run
|
|
123
|
+
Run instance.
|
|
124
|
+
"""
|
|
125
|
+
if auto_build and self.spec.image is None:
|
|
126
|
+
self.build(wait=True, log_info=log_info)
|
|
127
|
+
|
|
128
|
+
return super().run(
|
|
129
|
+
action,
|
|
130
|
+
wait=wait,
|
|
131
|
+
log_info=log_info,
|
|
132
|
+
extensions=extensions,
|
|
133
|
+
**kwargs,
|
|
134
|
+
)
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/guardrail/builder.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from digitalhub_runtime_python.entities._base.runtime_entity.builder import RuntimeEntityBuilderGuardrail
|
|
8
|
+
from digitalhub_runtime_python.entities._commons.enums import EntityKinds
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.builder import FunctionBaseBuilder
|
|
10
|
+
from digitalhub_runtime_python.entities.function.guardrail.entity import FunctionGuardrail
|
|
11
|
+
from digitalhub_runtime_python.entities.function.guardrail.spec import (
|
|
12
|
+
FunctionSpecGuardrail,
|
|
13
|
+
FunctionValidatorGuardrail,
|
|
14
|
+
)
|
|
15
|
+
from digitalhub_runtime_python.entities.function.guardrail.status import FunctionStatusGuardrail
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class FunctionGuardrailBuilder(FunctionBaseBuilder, RuntimeEntityBuilderGuardrail):
|
|
19
|
+
"""
|
|
20
|
+
FunctionGuardrail builder.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
ENTITY_CLASS = FunctionGuardrail
|
|
24
|
+
ENTITY_SPEC_CLASS = FunctionSpecGuardrail
|
|
25
|
+
ENTITY_SPEC_VALIDATOR = FunctionValidatorGuardrail
|
|
26
|
+
ENTITY_STATUS_CLASS = FunctionStatusGuardrail
|
|
27
|
+
ENTITY_KIND = EntityKinds.FUNCTION_GUARDRAIL.value
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/guardrail/entity.py
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
import typing
|
|
8
|
+
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.entity import FunctionBaseFunction
|
|
10
|
+
|
|
11
|
+
if typing.TYPE_CHECKING:
|
|
12
|
+
from digitalhub_runtime_python.entities.function.guardrail.spec import FunctionSpecGuardrail
|
|
13
|
+
from digitalhub_runtime_python.entities.function.guardrail.status import FunctionStatusGuardrail
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class FunctionGuardrail(FunctionBaseFunction):
|
|
17
|
+
"""
|
|
18
|
+
FunctionGuardrail class.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
def __init__(self, *args, **kwargs) -> None:
|
|
22
|
+
super().__init__(*args, **kwargs)
|
|
23
|
+
|
|
24
|
+
self.spec: FunctionSpecGuardrail
|
|
25
|
+
self.status: FunctionStatusGuardrail
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/hydra/builder.py
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from digitalhub_runtime_python.entities._base.runtime_entity.builder import RuntimeEntityBuilderHydra
|
|
8
|
+
from digitalhub_runtime_python.entities._commons.enums import EntityKinds
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.builder import FunctionBaseBuilder
|
|
10
|
+
from digitalhub_runtime_python.entities.function.hydra.entity import FunctionHydra
|
|
11
|
+
from digitalhub_runtime_python.entities.function.hydra.spec import FunctionSpecHydra, FunctionValidatorHydra
|
|
12
|
+
from digitalhub_runtime_python.entities.function.hydra.status import FunctionStatusHydra
|
|
13
|
+
from digitalhub_runtime_python.entities.function.hydra.utils import config_check, source_check
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class FunctionHydraBuilder(FunctionBaseBuilder, RuntimeEntityBuilderHydra):
|
|
17
|
+
"""
|
|
18
|
+
FunctionHydra builder.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
ENTITY_CLASS = FunctionHydra
|
|
22
|
+
ENTITY_SPEC_CLASS = FunctionSpecHydra
|
|
23
|
+
ENTITY_SPEC_VALIDATOR = FunctionValidatorHydra
|
|
24
|
+
ENTITY_STATUS_CLASS = FunctionStatusHydra
|
|
25
|
+
ENTITY_KIND = EntityKinds.FUNCTION_HYDRA.value
|
|
26
|
+
|
|
27
|
+
def _prepare_kwargs(self, kwargs: dict) -> dict:
|
|
28
|
+
return config_check(**source_check(**kwargs))
|
|
29
|
+
|
|
30
|
+
def _prepare_source(self, source: dict) -> dict:
|
|
31
|
+
return source_check(source=source)["source"]
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/hydra/entity.py
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
import typing
|
|
8
|
+
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.entity import FunctionBaseFunction
|
|
10
|
+
|
|
11
|
+
if typing.TYPE_CHECKING:
|
|
12
|
+
from digitalhub_runtime_python.entities.function.hydra.spec import FunctionSpecHydra
|
|
13
|
+
from digitalhub_runtime_python.entities.function.hydra.status import FunctionStatusHydra
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class FunctionHydra(FunctionBaseFunction):
|
|
17
|
+
"""
|
|
18
|
+
FunctionHydra class.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
def __init__(self, *args, **kwargs) -> None:
|
|
22
|
+
super().__init__(*args, **kwargs)
|
|
23
|
+
|
|
24
|
+
self.spec: FunctionSpecHydra
|
|
25
|
+
self.status: FunctionStatusHydra
|
|
@@ -37,6 +37,7 @@ def source_check(**kwargs) -> dict:
|
|
|
37
37
|
lang = kwargs.pop("lang", None)
|
|
38
38
|
|
|
39
39
|
if source is not None:
|
|
40
|
+
source = source.copy()
|
|
40
41
|
code_src = source.pop("source", None)
|
|
41
42
|
code = source.pop("code", None)
|
|
42
43
|
base64 = source.pop("base64", None)
|
|
@@ -103,8 +104,7 @@ def _check_params(
|
|
|
103
104
|
if complete_function is not None:
|
|
104
105
|
source["complete_function"] = complete_function
|
|
105
106
|
|
|
106
|
-
if lang is None
|
|
107
|
-
source["lang"] = Lang.PYTHON.value
|
|
107
|
+
source["lang"] = lang if lang is not None else Lang.PYTHON.value
|
|
108
108
|
|
|
109
109
|
if code_src is None and code is None and base64 is None:
|
|
110
110
|
raise EntityError("Source must be provided.")
|
|
@@ -143,6 +143,7 @@ def config_check(**kwargs) -> dict:
|
|
|
143
143
|
config_path = kwargs.pop("config_path", None)
|
|
144
144
|
|
|
145
145
|
if config is not None:
|
|
146
|
+
config = config.copy()
|
|
146
147
|
config_src = config.pop("source", None)
|
|
147
148
|
config_base64 = config.pop("base64", None)
|
|
148
149
|
config_content = None
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from digitalhub_runtime_python.entities._base.runtime_entity.builder import RuntimeEntityBuilderOpeninference
|
|
8
|
+
from digitalhub_runtime_python.entities._commons.enums import EntityKinds
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.builder import FunctionBaseBuilder
|
|
10
|
+
from digitalhub_runtime_python.entities.function.openinference.entity import FunctionOpeninference
|
|
11
|
+
from digitalhub_runtime_python.entities.function.openinference.spec import (
|
|
12
|
+
FunctionSpecOpeninference,
|
|
13
|
+
FunctionValidatorOpeninference,
|
|
14
|
+
)
|
|
15
|
+
from digitalhub_runtime_python.entities.function.openinference.status import FunctionStatusOpeninference
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class FunctionOpeninferenceBuilder(FunctionBaseBuilder, RuntimeEntityBuilderOpeninference):
|
|
19
|
+
"""
|
|
20
|
+
FunctionOpeninference builder.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
ENTITY_CLASS = FunctionOpeninference
|
|
24
|
+
ENTITY_SPEC_CLASS = FunctionSpecOpeninference
|
|
25
|
+
ENTITY_SPEC_VALIDATOR = FunctionValidatorOpeninference
|
|
26
|
+
ENTITY_STATUS_CLASS = FunctionStatusOpeninference
|
|
27
|
+
ENTITY_KIND = EntityKinds.FUNCTION_OPENINFERENCE.value
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
import typing
|
|
8
|
+
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.entity import FunctionBaseFunction
|
|
10
|
+
|
|
11
|
+
if typing.TYPE_CHECKING:
|
|
12
|
+
from digitalhub_runtime_python.entities.function.openinference.spec import FunctionSpecOpeninference
|
|
13
|
+
from digitalhub_runtime_python.entities.function.openinference.status import FunctionStatusOpeninference
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class FunctionOpeninference(FunctionBaseFunction):
|
|
17
|
+
"""
|
|
18
|
+
FunctionOpeninference class.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
def __init__(self, *args, **kwargs) -> None:
|
|
22
|
+
super().__init__(*args, **kwargs)
|
|
23
|
+
|
|
24
|
+
self.spec: FunctionSpecOpeninference
|
|
25
|
+
self.status: FunctionStatusOpeninference
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/python/builder.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from digitalhub_runtime_python.entities._base.runtime_entity.builder import RuntimeEntityBuilderPython
|
|
8
|
+
from digitalhub_runtime_python.entities._commons.enums import EntityKinds
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.builder import FunctionBaseBuilder
|
|
10
|
+
from digitalhub_runtime_python.entities.function.python.entity import FunctionPython
|
|
11
|
+
from digitalhub_runtime_python.entities.function.python.spec import FunctionSpecPython, FunctionValidatorPython
|
|
12
|
+
from digitalhub_runtime_python.entities.function.python.status import FunctionStatusPython
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class FunctionPythonBuilder(FunctionBaseBuilder, RuntimeEntityBuilderPython):
|
|
16
|
+
"""
|
|
17
|
+
FunctionPython builder.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
ENTITY_CLASS = FunctionPython
|
|
21
|
+
ENTITY_SPEC_CLASS = FunctionSpecPython
|
|
22
|
+
ENTITY_SPEC_VALIDATOR = FunctionValidatorPython
|
|
23
|
+
ENTITY_STATUS_CLASS = FunctionStatusPython
|
|
24
|
+
ENTITY_KIND = EntityKinds.FUNCTION_PYTHON.value
|
digitalhub_runtime_python-0.16.0b3/digitalhub_runtime_python/entities/function/python/entity.py
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
import typing
|
|
8
|
+
|
|
9
|
+
from digitalhub_runtime_python.entities.function._base.entity import FunctionBaseFunction
|
|
10
|
+
|
|
11
|
+
if typing.TYPE_CHECKING:
|
|
12
|
+
from digitalhub_runtime_python.entities.function.python.spec import FunctionSpecPython
|
|
13
|
+
from digitalhub_runtime_python.entities.function.python.status import FunctionStatusPython
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class FunctionPython(FunctionBaseFunction):
|
|
17
|
+
"""
|
|
18
|
+
FunctionPython class.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
def __init__(self, *args, **kwargs) -> None:
|
|
22
|
+
super().__init__(*args, **kwargs)
|
|
23
|
+
|
|
24
|
+
self.spec: FunctionSpecPython
|
|
25
|
+
self.status: FunctionStatusPython
|
|
@@ -18,7 +18,7 @@ from digitalhub_runtime_python.entities._commons.enums import Actions
|
|
|
18
18
|
from digitalhub_runtime_python.entities.run._base.utils import get_getters
|
|
19
19
|
|
|
20
20
|
if typing.TYPE_CHECKING:
|
|
21
|
-
from digitalhub.entities.
|
|
21
|
+
from digitalhub.entities._mixin.material.mixin import MaterialEntity
|
|
22
22
|
|
|
23
23
|
from digitalhub_runtime_python.entities.run._base.spec import RunSpecBaseRun
|
|
24
24
|
from digitalhub_runtime_python.entities.run._base.status import RunStatusBaseRun
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "digitalhub-runtime-python"
|
|
7
|
-
version = "0.16.
|
|
7
|
+
version = "0.16.0b3"
|
|
8
8
|
description = "Python runtime for DHCore"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [
|
|
@@ -54,7 +54,7 @@ docstring-code-line-length = 120
|
|
|
54
54
|
convention = "numpy"
|
|
55
55
|
|
|
56
56
|
[tool.bumpver]
|
|
57
|
-
current_version = "0.16.
|
|
57
|
+
current_version = "0.16.0b3"
|
|
58
58
|
version_pattern = "MAJOR.MINOR.PATCH[PYTAGNUM]"
|
|
59
59
|
commit_message = "Bump version {old_version} -> {new_version}"
|
|
60
60
|
commit = false
|