taskmaestro 0.1.0__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.
- taskmaestro-0.1.0/.github/workflows/ci.yml +40 -0
- taskmaestro-0.1.0/.github/workflows/publish.yml +46 -0
- taskmaestro-0.1.0/.gitignore +15 -0
- taskmaestro-0.1.0/LICENSE +674 -0
- taskmaestro-0.1.0/PKG-INFO +358 -0
- taskmaestro-0.1.0/README.md +328 -0
- taskmaestro-0.1.0/examples/image_processing/inner_workflow.yaml +18 -0
- taskmaestro-0.1.0/examples/image_processing/input.yaml +6 -0
- taskmaestro-0.1.0/examples/image_processing/pipeline.py +377 -0
- taskmaestro-0.1.0/examples/image_processing/workflow.yaml +23 -0
- taskmaestro-0.1.0/examples/resinsight/input.yaml +26 -0
- taskmaestro-0.1.0/examples/resinsight/pipeline.py +449 -0
- taskmaestro-0.1.0/examples/resinsight/workflow.yaml +55 -0
- taskmaestro-0.1.0/examples/text_analysis/input.yaml +17 -0
- taskmaestro-0.1.0/examples/text_analysis/pipeline.py +532 -0
- taskmaestro-0.1.0/examples/text_analysis/workflow.yaml +39 -0
- taskmaestro-0.1.0/pyproject.toml +67 -0
- taskmaestro-0.1.0/taskmaestro/__init__.py +57 -0
- taskmaestro-0.1.0/taskmaestro/context.py +37 -0
- taskmaestro-0.1.0/taskmaestro/exceptions.py +37 -0
- taskmaestro-0.1.0/taskmaestro/hooks/__init__.py +15 -0
- taskmaestro-0.1.0/taskmaestro/hooks/base.py +57 -0
- taskmaestro-0.1.0/taskmaestro/hooks/logging.py +44 -0
- taskmaestro-0.1.0/taskmaestro/hooks/persistence.py +24 -0
- taskmaestro-0.1.0/taskmaestro/hooks/timing.py +46 -0
- taskmaestro-0.1.0/taskmaestro/job.py +116 -0
- taskmaestro-0.1.0/taskmaestro/object_model.py +19 -0
- taskmaestro-0.1.0/taskmaestro/py.typed +0 -0
- taskmaestro-0.1.0/taskmaestro/runner.py +201 -0
- taskmaestro-0.1.0/taskmaestro/task.py +77 -0
- taskmaestro-0.1.0/taskmaestro/visualization.py +223 -0
- taskmaestro-0.1.0/taskmaestro/workflow.py +484 -0
- taskmaestro-0.1.0/taskmaestro/workflow_task.py +94 -0
- taskmaestro-0.1.0/taskmaestro/yaml_config.py +455 -0
- taskmaestro-0.1.0/taskmaestro.png +0 -0
- taskmaestro-0.1.0/tests/__init__.py +0 -0
- taskmaestro-0.1.0/tests/conftest.py +164 -0
- taskmaestro-0.1.0/tests/test_context.py +55 -0
- taskmaestro-0.1.0/tests/test_exceptions.py +43 -0
- taskmaestro-0.1.0/tests/test_hooks.py +218 -0
- taskmaestro-0.1.0/tests/test_job.py +133 -0
- taskmaestro-0.1.0/tests/test_object_model.py +65 -0
- taskmaestro-0.1.0/tests/test_runner.py +432 -0
- taskmaestro-0.1.0/tests/test_task.py +223 -0
- taskmaestro-0.1.0/tests/test_visualization.py +464 -0
- taskmaestro-0.1.0/tests/test_workflow.py +767 -0
- taskmaestro-0.1.0/tests/test_workflow_task.py +451 -0
- taskmaestro-0.1.0/tests/test_yaml_config.py +1445 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
ci:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
strategy:
|
|
12
|
+
fail-fast: false
|
|
13
|
+
matrix:
|
|
14
|
+
python-version: ["3.12", "3.13"]
|
|
15
|
+
|
|
16
|
+
steps:
|
|
17
|
+
- uses: actions/checkout@v4
|
|
18
|
+
|
|
19
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
20
|
+
uses: actions/setup-python@v5
|
|
21
|
+
with:
|
|
22
|
+
python-version: ${{ matrix.python-version }}
|
|
23
|
+
|
|
24
|
+
- name: Install dependencies
|
|
25
|
+
run: pip install -e ".[dev]"
|
|
26
|
+
|
|
27
|
+
- name: Ruff check
|
|
28
|
+
if: matrix.python-version == '3.12'
|
|
29
|
+
run: ruff check taskmaestro/ tests/
|
|
30
|
+
|
|
31
|
+
- name: Ruff format check
|
|
32
|
+
if: matrix.python-version == '3.12'
|
|
33
|
+
run: ruff format --check taskmaestro/ tests/
|
|
34
|
+
|
|
35
|
+
- name: Mypy type check
|
|
36
|
+
if: matrix.python-version == '3.12'
|
|
37
|
+
run: mypy taskmaestro
|
|
38
|
+
|
|
39
|
+
- name: Run tests with coverage
|
|
40
|
+
run: pytest --cov=taskmaestro --cov-report=term-missing
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags: ["v*"]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
build:
|
|
9
|
+
name: Build distributions
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
|
|
14
|
+
- name: Set up Python
|
|
15
|
+
uses: actions/setup-python@v5
|
|
16
|
+
with:
|
|
17
|
+
python-version: "3.12"
|
|
18
|
+
|
|
19
|
+
- name: Install build
|
|
20
|
+
run: pip install build
|
|
21
|
+
|
|
22
|
+
- name: Build sdist and wheel
|
|
23
|
+
run: python -m build
|
|
24
|
+
|
|
25
|
+
- name: Upload dist artifact
|
|
26
|
+
uses: actions/upload-artifact@v4
|
|
27
|
+
with:
|
|
28
|
+
name: dist
|
|
29
|
+
path: dist/
|
|
30
|
+
|
|
31
|
+
publish:
|
|
32
|
+
name: Publish to PyPI
|
|
33
|
+
needs: build
|
|
34
|
+
runs-on: ubuntu-latest
|
|
35
|
+
environment: pypi
|
|
36
|
+
permissions:
|
|
37
|
+
id-token: write
|
|
38
|
+
steps:
|
|
39
|
+
- name: Download dist artifact
|
|
40
|
+
uses: actions/download-artifact@v4
|
|
41
|
+
with:
|
|
42
|
+
name: dist
|
|
43
|
+
path: dist/
|
|
44
|
+
|
|
45
|
+
- name: Publish via trusted publishing
|
|
46
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|