dirac-cwl 1.0.2__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.
- dirac_cwl-1.0.2/.github/workflows/deployment.yml +72 -0
- dirac_cwl-1.0.2/.github/workflows/generate-schemas.yml +123 -0
- dirac_cwl-1.0.2/.github/workflows/main.yml +49 -0
- dirac_cwl-1.0.2/.gitignore +178 -0
- dirac_cwl-1.0.2/.pre-commit-config.yaml +32 -0
- dirac_cwl-1.0.2/CHANGELOG.md +144 -0
- dirac_cwl-1.0.2/LICENSE +674 -0
- dirac_cwl-1.0.2/PKG-INFO +285 -0
- dirac_cwl-1.0.2/README.md +252 -0
- dirac_cwl-1.0.2/docs/SCHEMA_GENERATION.md +279 -0
- dirac_cwl-1.0.2/environment.yaml +19 -0
- dirac_cwl-1.0.2/pixi.lock +5710 -0
- dirac_cwl-1.0.2/public/CWLDiracX.png +0 -0
- dirac_cwl-1.0.2/pyproject.toml +169 -0
- dirac_cwl-1.0.2/scripts/generate_schemas.py +352 -0
- dirac_cwl-1.0.2/setup.cfg +4 -0
- dirac_cwl-1.0.2/src/dirac_cwl/__init__.py +28 -0
- dirac_cwl-1.0.2/src/dirac_cwl/commands/__init__.py +5 -0
- dirac_cwl-1.0.2/src/dirac_cwl/commands/core.py +37 -0
- dirac_cwl-1.0.2/src/dirac_cwl/commands/download_config.py +22 -0
- dirac_cwl-1.0.2/src/dirac_cwl/commands/group_outputs.py +32 -0
- dirac_cwl-1.0.2/src/dirac_cwl/core/__init__.py +1 -0
- dirac_cwl-1.0.2/src/dirac_cwl/core/exceptions.py +5 -0
- dirac_cwl-1.0.2/src/dirac_cwl/core/utility.py +41 -0
- dirac_cwl-1.0.2/src/dirac_cwl/data_management_mocks/data_manager.py +99 -0
- dirac_cwl-1.0.2/src/dirac_cwl/data_management_mocks/file_catalog.py +132 -0
- dirac_cwl-1.0.2/src/dirac_cwl/data_management_mocks/sandbox.py +89 -0
- dirac_cwl-1.0.2/src/dirac_cwl/execution_hooks/__init__.py +40 -0
- dirac_cwl-1.0.2/src/dirac_cwl/execution_hooks/core.py +342 -0
- dirac_cwl-1.0.2/src/dirac_cwl/execution_hooks/plugins/__init__.py +16 -0
- dirac_cwl-1.0.2/src/dirac_cwl/execution_hooks/plugins/core.py +58 -0
- dirac_cwl-1.0.2/src/dirac_cwl/execution_hooks/registry.py +209 -0
- dirac_cwl-1.0.2/src/dirac_cwl/job/__init__.py +249 -0
- dirac_cwl-1.0.2/src/dirac_cwl/job/job_wrapper.py +375 -0
- dirac_cwl-1.0.2/src/dirac_cwl/job/job_wrapper_template.py +56 -0
- dirac_cwl-1.0.2/src/dirac_cwl/job/submission_clients.py +166 -0
- dirac_cwl-1.0.2/src/dirac_cwl/modules/crypto.py +96 -0
- dirac_cwl-1.0.2/src/dirac_cwl/modules/pi_gather.py +41 -0
- dirac_cwl-1.0.2/src/dirac_cwl/modules/pi_simulate.py +33 -0
- dirac_cwl-1.0.2/src/dirac_cwl/production/__init__.py +200 -0
- dirac_cwl-1.0.2/src/dirac_cwl/submission_models.py +157 -0
- dirac_cwl-1.0.2/src/dirac_cwl/transformation/__init__.py +203 -0
- dirac_cwl-1.0.2/src/dirac_cwl.egg-info/PKG-INFO +285 -0
- dirac_cwl-1.0.2/src/dirac_cwl.egg-info/SOURCES.txt +90 -0
- dirac_cwl-1.0.2/src/dirac_cwl.egg-info/dependency_links.txt +1 -0
- dirac_cwl-1.0.2/src/dirac_cwl.egg-info/entry_points.txt +8 -0
- dirac_cwl-1.0.2/src/dirac_cwl.egg-info/requires.txt +17 -0
- dirac_cwl-1.0.2/src/dirac_cwl.egg-info/top_level.txt +1 -0
- dirac_cwl-1.0.2/test/__init__.py +1 -0
- dirac_cwl-1.0.2/test/conftest.py +51 -0
- dirac_cwl-1.0.2/test/schemas/dirac-metadata.json +425 -0
- dirac_cwl-1.0.2/test/schemas/plugins-summary.json +20 -0
- dirac_cwl-1.0.2/test/test_execution_hooks_core.py +272 -0
- dirac_cwl-1.0.2/test/test_execution_hooks_registry.py +311 -0
- dirac_cwl-1.0.2/test/test_integration.py +244 -0
- dirac_cwl-1.0.2/test/test_job_submission_clients.py +104 -0
- dirac_cwl-1.0.2/test/test_job_wrapper.py +125 -0
- dirac_cwl-1.0.2/test/test_plugins_core.py +199 -0
- dirac_cwl-1.0.2/test/test_plugins_lhcb.py +356 -0
- dirac_cwl-1.0.2/test/test_submission_models.py +198 -0
- dirac_cwl-1.0.2/test/test_workflows.py +608 -0
- dirac_cwl-1.0.2/test/workflows/README.md +65 -0
- dirac_cwl-1.0.2/test/workflows/bad_references/reference_circular1.cwl +23 -0
- dirac_cwl-1.0.2/test/workflows/bad_references/reference_circular2.cwl +23 -0
- dirac_cwl-1.0.2/test/workflows/bad_references/reference_doesnotexists.cwl +23 -0
- dirac_cwl-1.0.2/test/workflows/bad_references/reference_itself.cwl +23 -0
- dirac_cwl-1.0.2/test/workflows/crypto/base64.cwl +22 -0
- dirac_cwl-1.0.2/test/workflows/crypto/caesar.cwl +27 -0
- dirac_cwl-1.0.2/test/workflows/crypto/description.cwl +61 -0
- dirac_cwl-1.0.2/test/workflows/crypto/md5.cwl +22 -0
- dirac_cwl-1.0.2/test/workflows/crypto/rot13.cwl +22 -0
- dirac_cwl-1.0.2/test/workflows/crypto/type_dependencies/job/inputs-crypto_complete.yaml +2 -0
- dirac_cwl-1.0.2/test/workflows/helloworld/description_basic.cwl +10 -0
- dirac_cwl-1.0.2/test/workflows/helloworld/description_with_inputs.cwl +14 -0
- dirac_cwl-1.0.2/test/workflows/helloworld/type_dependencies/job/inputs-helloworld_with_inputs1.yaml +1 -0
- dirac_cwl-1.0.2/test/workflows/helloworld/type_dependencies/job/inputs-helloworld_with_inputs2.yaml +1 -0
- dirac_cwl-1.0.2/test/workflows/helloworld/type_dependencies/job/inputs-helloworld_with_inputs3.yaml +1 -0
- dirac_cwl-1.0.2/test/workflows/malformed_description/description_malformed_class.cwl +8 -0
- dirac_cwl-1.0.2/test/workflows/malformed_description/description_malformed_command.cwl +8 -0
- dirac_cwl-1.0.2/test/workflows/parallel/description.cwl +43 -0
- dirac_cwl-1.0.2/test/workflows/parallel/sleep.cwl +16 -0
- dirac_cwl-1.0.2/test/workflows/pi/description.cwl +43 -0
- dirac_cwl-1.0.2/test/workflows/pi/pigather.cwl +24 -0
- dirac_cwl-1.0.2/test/workflows/pi/pisimulate.cwl +25 -0
- dirac_cwl-1.0.2/test/workflows/pi/type_dependencies/job/inputs-pi_complete.yaml +1 -0
- dirac_cwl-1.0.2/test/workflows/pi/type_dependencies/job/inputs-pi_gather.yaml +11 -0
- dirac_cwl-1.0.2/test/workflows/pi/type_dependencies/job/inputs-pi_gather_catalog.yaml +11 -0
- dirac_cwl-1.0.2/test/workflows/pi/type_dependencies/transformation/metadata-pi_gather.yaml +9 -0
- dirac_cwl-1.0.2/test/workflows/pi/type_dependencies/transformation/metadata-pi_simulate.yaml +4 -0
- dirac_cwl-1.0.2/test/workflows/test_meta/test_meta.cwl +28 -0
- dirac_cwl-1.0.2/test/workflows/test_outputs/test_outputs.cwl +27 -0
- dirac_cwl-1.0.2/test/workflows/test_outputs/test_outputs_sandbox.cwl +26 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
name: Deployment
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches-ignore:
|
|
6
|
+
- dependabot/**
|
|
7
|
+
- release-please-**
|
|
8
|
+
pull_request:
|
|
9
|
+
branches-ignore:
|
|
10
|
+
- release-please-**
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
ci:
|
|
14
|
+
name: CI
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
steps:
|
|
17
|
+
- uses: actions/checkout@v4
|
|
18
|
+
- uses: actions/setup-python@v5
|
|
19
|
+
with:
|
|
20
|
+
python-version: '3.11'
|
|
21
|
+
- name: Installing dependencies
|
|
22
|
+
run: |
|
|
23
|
+
python -m pip install \
|
|
24
|
+
build \
|
|
25
|
+
readme_renderer[md] \
|
|
26
|
+
setuptools_scm
|
|
27
|
+
- name: Validate README for PyPI
|
|
28
|
+
run: |
|
|
29
|
+
python -m readme_renderer README.md -o /tmp/README.html
|
|
30
|
+
- name: Build distributions
|
|
31
|
+
run: |
|
|
32
|
+
python -m build --outdir $PWD/dist .
|
|
33
|
+
|
|
34
|
+
release-please:
|
|
35
|
+
runs-on: ubuntu-latest
|
|
36
|
+
if: ${{ github.event_name == 'push' && github.repository == 'DIRACGrid/dirac-cwl' }}
|
|
37
|
+
outputs:
|
|
38
|
+
release_created: ${{ steps.release.outputs.release_created }}
|
|
39
|
+
permissions:
|
|
40
|
+
contents: write
|
|
41
|
+
pull-requests: write
|
|
42
|
+
steps:
|
|
43
|
+
- uses: googleapis/release-please-action@v4
|
|
44
|
+
id: release
|
|
45
|
+
with:
|
|
46
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
47
|
+
release-type: simple
|
|
48
|
+
|
|
49
|
+
deploy-pypi:
|
|
50
|
+
name: PyPI deployment
|
|
51
|
+
runs-on: ubuntu-latest
|
|
52
|
+
needs: release-please
|
|
53
|
+
if: ${{ github.event_name == 'push' && github.repository == 'DIRACGrid/dirac-cwl' && needs.release-please.outputs.release_created == 'true' }}
|
|
54
|
+
permissions:
|
|
55
|
+
id-token: write # Required for trusted publishing on PyPI
|
|
56
|
+
steps:
|
|
57
|
+
- uses: actions/checkout@v4
|
|
58
|
+
with:
|
|
59
|
+
fetch-depth: 0 # Required for setuptools_scm to find tags
|
|
60
|
+
- uses: actions/setup-python@v5
|
|
61
|
+
with:
|
|
62
|
+
python-version: '3.11'
|
|
63
|
+
- name: Installing dependencies
|
|
64
|
+
run: |
|
|
65
|
+
python -m pip install \
|
|
66
|
+
build \
|
|
67
|
+
setuptools_scm
|
|
68
|
+
- name: Build distributions
|
|
69
|
+
run: |
|
|
70
|
+
python -m build --outdir $PWD/dist .
|
|
71
|
+
- name: Publish package on PyPI
|
|
72
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
name: Build & Publish Schemas to Pages
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: ["main"] # publish "main" to Pages
|
|
6
|
+
paths:
|
|
7
|
+
- "src/dirac_cwl/metadata/**"
|
|
8
|
+
- "src/dirac_cwl/submission_models.py"
|
|
9
|
+
- "scripts/generate_schemas.py"
|
|
10
|
+
- "pyproject.toml"
|
|
11
|
+
pull_request:
|
|
12
|
+
branches: ["main"] # PR preview sites
|
|
13
|
+
paths:
|
|
14
|
+
- "src/dirac_cwl/metadata/**"
|
|
15
|
+
- "src/dirac_cwl/submission_models.py"
|
|
16
|
+
- "scripts/generate_schemas.py"
|
|
17
|
+
- "pyproject.toml"
|
|
18
|
+
workflow_dispatch:
|
|
19
|
+
|
|
20
|
+
permissions:
|
|
21
|
+
contents: read
|
|
22
|
+
pages: write
|
|
23
|
+
id-token: write
|
|
24
|
+
|
|
25
|
+
concurrency:
|
|
26
|
+
group: "pages"
|
|
27
|
+
cancel-in-progress: false
|
|
28
|
+
|
|
29
|
+
jobs:
|
|
30
|
+
# Build once and upload the Pages artifact
|
|
31
|
+
build:
|
|
32
|
+
runs-on: ubuntu-latest
|
|
33
|
+
steps:
|
|
34
|
+
- name: Checkout
|
|
35
|
+
uses: actions/checkout@v4
|
|
36
|
+
|
|
37
|
+
- name: Setup Pages
|
|
38
|
+
uses: actions/configure-pages@v5
|
|
39
|
+
|
|
40
|
+
- name: Install Pixi
|
|
41
|
+
uses: prefix-dev/setup-pixi@v0.8.1
|
|
42
|
+
with:
|
|
43
|
+
cache: true
|
|
44
|
+
|
|
45
|
+
# Build schemas using your Pixi tasks (keeps CI == local)
|
|
46
|
+
- name: Build & validate schemas
|
|
47
|
+
run: |
|
|
48
|
+
pixi run schemas # builds JSON+YAML into generated_schemas/
|
|
49
|
+
pixi run validate-schemas # sanity check
|
|
50
|
+
shell: pixi run bash -e {0}
|
|
51
|
+
|
|
52
|
+
# Test that the generated schemas work in practice
|
|
53
|
+
- name: Run schema tests
|
|
54
|
+
run: |
|
|
55
|
+
pixi run test-schemas
|
|
56
|
+
shell: pixi run bash -e {0}
|
|
57
|
+
|
|
58
|
+
# Prepare the static site payload
|
|
59
|
+
- name: Prepare site folder
|
|
60
|
+
run: |
|
|
61
|
+
mkdir -p site/schemas
|
|
62
|
+
cp -r generated_schemas/* site/schemas/
|
|
63
|
+
|
|
64
|
+
# copies used by tests (optional)
|
|
65
|
+
mkdir -p site/test-schemas
|
|
66
|
+
cp -r test/workflows/test_meta/schemas/* site/test-schemas/ || true
|
|
67
|
+
|
|
68
|
+
# simple index
|
|
69
|
+
cat > site/index.html <<'HTML'
|
|
70
|
+
<!doctype html>
|
|
71
|
+
<meta charset="utf-8">
|
|
72
|
+
<title>dirac_cwl schemas</title>
|
|
73
|
+
<h1>dirac_cwl schemas</h1>
|
|
74
|
+
<ul>
|
|
75
|
+
<li><a href="schemas/">schemas/</a> (from generated_schemas/)</li>
|
|
76
|
+
<li><a href="test-schemas/">test-schemas/</a> (copies used in tests)</li>
|
|
77
|
+
</ul>
|
|
78
|
+
<p>Build: ${GITHUB_SHA}</p>
|
|
79
|
+
HTML
|
|
80
|
+
|
|
81
|
+
# Optional: versioned paths
|
|
82
|
+
mkdir -p site/by-branch/${GITHUB_REF_NAME} site/by-sha/${GITHUB_SHA}
|
|
83
|
+
cp -r generated_schemas/* site/by-branch/${GITHUB_REF_NAME}/
|
|
84
|
+
cp -r generated_schemas/* site/by-sha/${GITHUB_SHA}/
|
|
85
|
+
|
|
86
|
+
- name: Upload Pages artifact
|
|
87
|
+
uses: actions/upload-pages-artifact@v3
|
|
88
|
+
with:
|
|
89
|
+
path: site
|
|
90
|
+
|
|
91
|
+
# Deploy preview for PRs
|
|
92
|
+
deploy_preview:
|
|
93
|
+
if: github.event_name == 'pull_request'
|
|
94
|
+
needs: build
|
|
95
|
+
runs-on: ubuntu-latest
|
|
96
|
+
environment:
|
|
97
|
+
name: github-pages
|
|
98
|
+
url: ${{ steps.deployment.outputs.preview_url }} # <-- use preview_url
|
|
99
|
+
steps:
|
|
100
|
+
- name: Deploy to GitHub Pages (preview)
|
|
101
|
+
id: deployment
|
|
102
|
+
uses: actions/deploy-pages@v4
|
|
103
|
+
with:
|
|
104
|
+
preview: true
|
|
105
|
+
- name: Post preview link to job summary
|
|
106
|
+
env:
|
|
107
|
+
PREVIEW_URL: ${{ steps.deployment.outputs.preview_url }}
|
|
108
|
+
run: |
|
|
109
|
+
echo "# GitHub Pages Preview" >> "$GITHUB_STEP_SUMMARY"
|
|
110
|
+
echo "Preview URL: $PREVIEW_URL" >> "$GITHUB_STEP_SUMMARY"
|
|
111
|
+
|
|
112
|
+
# Deploy production on pushes to main
|
|
113
|
+
deploy_prod:
|
|
114
|
+
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
|
115
|
+
needs: build
|
|
116
|
+
runs-on: ubuntu-latest
|
|
117
|
+
environment:
|
|
118
|
+
name: github-pages
|
|
119
|
+
url: ${{ steps.deployment.outputs.page_url }} # production URL
|
|
120
|
+
steps:
|
|
121
|
+
- name: Deploy to GitHub Pages (production)
|
|
122
|
+
id: deployment
|
|
123
|
+
uses: actions/deploy-pages@v4
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
name: Basic Tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: ["main"]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: ["main"]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
ci:
|
|
11
|
+
name: Lint & Tests
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
|
|
14
|
+
steps:
|
|
15
|
+
- name: Checkout code
|
|
16
|
+
uses: actions/checkout@v4
|
|
17
|
+
|
|
18
|
+
- name: Install Pixi
|
|
19
|
+
uses: prefix-dev/setup-pixi@v0.8.1
|
|
20
|
+
with:
|
|
21
|
+
cache: true
|
|
22
|
+
|
|
23
|
+
- name: Show Pixi environment
|
|
24
|
+
run: |
|
|
25
|
+
pixi info
|
|
26
|
+
pixi list --locked
|
|
27
|
+
shell: bash
|
|
28
|
+
|
|
29
|
+
- name: Run pre-commit
|
|
30
|
+
run: |
|
|
31
|
+
pixi run pre-commit-install
|
|
32
|
+
pixi run pre-commit-run
|
|
33
|
+
shell: pixi run bash -e {0}
|
|
34
|
+
|
|
35
|
+
- name: Generate & validate schemas
|
|
36
|
+
run: |
|
|
37
|
+
pixi run schemas
|
|
38
|
+
pixi run validate-schemas
|
|
39
|
+
shell: pixi run bash -e {0}
|
|
40
|
+
|
|
41
|
+
- name: Lint (mypy)
|
|
42
|
+
run: |
|
|
43
|
+
pixi run lint
|
|
44
|
+
shell: pixi run bash -e {0}
|
|
45
|
+
|
|
46
|
+
- name: Run tests
|
|
47
|
+
run: |
|
|
48
|
+
pixi run test
|
|
49
|
+
shell: pixi run bash -e {0}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
build/
|
|
12
|
+
develop-eggs/
|
|
13
|
+
dist/
|
|
14
|
+
downloads/
|
|
15
|
+
eggs/
|
|
16
|
+
.eggs/
|
|
17
|
+
lib/
|
|
18
|
+
lib64/
|
|
19
|
+
parts/
|
|
20
|
+
sdist/
|
|
21
|
+
var/
|
|
22
|
+
wheels/
|
|
23
|
+
share/python-wheels/
|
|
24
|
+
*.egg-info/
|
|
25
|
+
.installed.cfg
|
|
26
|
+
*.egg
|
|
27
|
+
MANIFEST
|
|
28
|
+
|
|
29
|
+
# PyInstaller
|
|
30
|
+
# Usually these files are written by a python script from a template
|
|
31
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
32
|
+
*.manifest
|
|
33
|
+
*.spec
|
|
34
|
+
|
|
35
|
+
# Installer logs
|
|
36
|
+
pip-log.txt
|
|
37
|
+
pip-delete-this-directory.txt
|
|
38
|
+
|
|
39
|
+
# Unit test / coverage reports
|
|
40
|
+
htmlcov/
|
|
41
|
+
.tox/
|
|
42
|
+
.nox/
|
|
43
|
+
.coverage
|
|
44
|
+
.coverage.*
|
|
45
|
+
.cache
|
|
46
|
+
nosetests.xml
|
|
47
|
+
coverage.xml
|
|
48
|
+
*.cover
|
|
49
|
+
*.py,cover
|
|
50
|
+
.hypothesis/
|
|
51
|
+
.pytest_cache/
|
|
52
|
+
cover/
|
|
53
|
+
|
|
54
|
+
# Translations
|
|
55
|
+
*.mo
|
|
56
|
+
*.pot
|
|
57
|
+
|
|
58
|
+
# Django stuff:
|
|
59
|
+
*.log
|
|
60
|
+
local_settings.py
|
|
61
|
+
db.sqlite3
|
|
62
|
+
db.sqlite3-journal
|
|
63
|
+
|
|
64
|
+
# Flask stuff:
|
|
65
|
+
instance/
|
|
66
|
+
.webassets-cache
|
|
67
|
+
|
|
68
|
+
# Scrapy stuff:
|
|
69
|
+
.scrapy
|
|
70
|
+
|
|
71
|
+
# Sphinx documentation
|
|
72
|
+
docs/_build/
|
|
73
|
+
|
|
74
|
+
# PyBuilder
|
|
75
|
+
.pybuilder/
|
|
76
|
+
target/
|
|
77
|
+
|
|
78
|
+
# Jupyter Notebook
|
|
79
|
+
.ipynb_checkpoints
|
|
80
|
+
|
|
81
|
+
# IPython
|
|
82
|
+
profile_default/
|
|
83
|
+
ipython_config.py
|
|
84
|
+
|
|
85
|
+
# pyenv
|
|
86
|
+
# For a library or package, you might want to ignore these files since the code is
|
|
87
|
+
# intended to run in multiple environments; otherwise, check them in:
|
|
88
|
+
# .python-version
|
|
89
|
+
|
|
90
|
+
# pipenv
|
|
91
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
92
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
93
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
94
|
+
# install all needed dependencies.
|
|
95
|
+
#Pipfile.lock
|
|
96
|
+
|
|
97
|
+
# poetry
|
|
98
|
+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
|
99
|
+
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
|
100
|
+
# commonly ignored for libraries.
|
|
101
|
+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
|
102
|
+
#poetry.lock
|
|
103
|
+
|
|
104
|
+
# pdm
|
|
105
|
+
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
|
106
|
+
#pdm.lock
|
|
107
|
+
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
|
|
108
|
+
# in version control.
|
|
109
|
+
# https://pdm.fming.dev/#use-with-ide
|
|
110
|
+
.pdm.toml
|
|
111
|
+
|
|
112
|
+
# pixi
|
|
113
|
+
.pixi/
|
|
114
|
+
|
|
115
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
|
116
|
+
__pypackages__/
|
|
117
|
+
|
|
118
|
+
# Celery stuff
|
|
119
|
+
celerybeat-schedule
|
|
120
|
+
celerybeat.pid
|
|
121
|
+
|
|
122
|
+
# SageMath parsed files
|
|
123
|
+
*.sage.py
|
|
124
|
+
|
|
125
|
+
# Environments
|
|
126
|
+
.env
|
|
127
|
+
.venv
|
|
128
|
+
env/
|
|
129
|
+
venv/
|
|
130
|
+
ENV/
|
|
131
|
+
env.bak/
|
|
132
|
+
venv.bak/
|
|
133
|
+
|
|
134
|
+
# Spyder project settings
|
|
135
|
+
.spyderproject
|
|
136
|
+
.spyproject
|
|
137
|
+
|
|
138
|
+
# Rope project settings
|
|
139
|
+
.ropeproject
|
|
140
|
+
|
|
141
|
+
# mkdocs documentation
|
|
142
|
+
/site
|
|
143
|
+
|
|
144
|
+
# mypy
|
|
145
|
+
.mypy_cache/
|
|
146
|
+
.dmypy.json
|
|
147
|
+
dmypy.json
|
|
148
|
+
|
|
149
|
+
# Pyre type checker
|
|
150
|
+
.pyre/
|
|
151
|
+
|
|
152
|
+
# pytype static type analyzer
|
|
153
|
+
.pytype/
|
|
154
|
+
|
|
155
|
+
# Cython debug symbols
|
|
156
|
+
cython_debug/
|
|
157
|
+
|
|
158
|
+
# IDE
|
|
159
|
+
# VSCode
|
|
160
|
+
.vscode/
|
|
161
|
+
|
|
162
|
+
# PyCharm
|
|
163
|
+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
|
164
|
+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
|
165
|
+
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
|
166
|
+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
|
167
|
+
#.idea/
|
|
168
|
+
|
|
169
|
+
workernode
|
|
170
|
+
sandboxstore
|
|
171
|
+
filecatalog
|
|
172
|
+
|
|
173
|
+
# Generated schemas - these are build artifacts generated by CI/CD
|
|
174
|
+
generated_schemas/*
|
|
175
|
+
# But keep test schemas that are copied from generated ones
|
|
176
|
+
!test/workflows/test_meta/schemas/dirac-metadata.json
|
|
177
|
+
|
|
178
|
+
.DS_Store
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# See https://pre-commit.com for more information
|
|
2
|
+
# See https://pre-commit.com/hooks.html for more hooks
|
|
3
|
+
default_language_version:
|
|
4
|
+
python: python3
|
|
5
|
+
|
|
6
|
+
repos:
|
|
7
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
8
|
+
rev: v4.5.0
|
|
9
|
+
hooks:
|
|
10
|
+
- id: trailing-whitespace
|
|
11
|
+
- id: end-of-file-fixer
|
|
12
|
+
- id: check-yaml
|
|
13
|
+
- id: check-added-large-files
|
|
14
|
+
|
|
15
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
16
|
+
rev: 'v0.8.4'
|
|
17
|
+
hooks:
|
|
18
|
+
- id: ruff
|
|
19
|
+
args: ["--fix"]
|
|
20
|
+
- id: ruff-format
|
|
21
|
+
|
|
22
|
+
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
23
|
+
rev: v1.7.1
|
|
24
|
+
hooks:
|
|
25
|
+
- id: mypy
|
|
26
|
+
additional_dependencies:
|
|
27
|
+
- pydantic
|
|
28
|
+
- types-PyYAML
|
|
29
|
+
- types-cachetools
|
|
30
|
+
- types-requests
|
|
31
|
+
- types-jsonschema
|
|
32
|
+
exclude: ^(/tests/|/workflows/|/filecatalog/|/sandboxstore/)
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [1.0.2](https://github.com/DIRACGrid/dirac-cwl/compare/v1.0.1...v1.0.2) (2026-02-05)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* don't do a shallow clone in order to see newly created tags ([0100427](https://github.com/DIRACGrid/dirac-cwl/commit/0100427bd8072cc3041d08d7b05f3bb873abc761))
|
|
9
|
+
|
|
10
|
+
## [1.0.1](https://github.com/DIRACGrid/dirac-cwl/compare/v1.0.0...v1.0.1) (2026-02-05)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* diracx-cwl --> dirac-cwl ([52224c5](https://github.com/DIRACGrid/dirac-cwl/commit/52224c55a5507fb0fbd9aa5c6c4522b56dfe0407))
|
|
16
|
+
|
|
17
|
+
## 1.0.0 (2026-02-05)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* "mock" DIRAC DataManager ([556e3c5](https://github.com/DIRACGrid/dirac-cwl/commit/556e3c51f7d008a75617e9d84e77ce4e6811a7cf))
|
|
23
|
+
* add a SandboxStore like client ([f1c1143](https://github.com/DIRACGrid/dirac-cwl/commit/f1c1143e131c5b293c84df8c441bce7481b403c9))
|
|
24
|
+
* add a submit_job CLI ([48a50b4](https://github.com/DIRACGrid/dirac-cwl/commit/48a50b46cecc558d0f515e4a5c9c5dd0e990536e))
|
|
25
|
+
* add commands in pyprojet.toml ([2be7c18](https://github.com/DIRACGrid/dirac-cwl/commit/2be7c1846e4b43632b3ac5d688605f73020daa9c))
|
|
26
|
+
* add cwltool usage in README ([5fb88f3](https://github.com/DIRACGrid/dirac-cwl/commit/5fb88f38fe714c5f29685eb9228b36e830244417))
|
|
27
|
+
* add further tests for referenced workflows ([e8217a1](https://github.com/DIRACGrid/dirac-cwl/commit/e8217a1d687355a72f8e563ba5aadd46f25e05b8))
|
|
28
|
+
* add gaudi app ([cfdfb18](https://github.com/DIRACGrid/dirac-cwl/commit/cfdfb18e4e60025eeff7daaa16438ecabec6467a))
|
|
29
|
+
* Add hints to pre-process and post-process jobs depending on its job type ([b693905](https://github.com/DIRACGrid/dirac-cwl/commit/b693905cab0c2fd8306e089c6d26e1cfeca22f58))
|
|
30
|
+
* Add hints to pre-process and post-process jobs depending on its job type ([ee7683a](https://github.com/DIRACGrid/dirac-cwl/commit/ee7683aea90450a0a922fbea3e441f6f619bafcf))
|
|
31
|
+
* add lfns_input to job input model ([5c8ba41](https://github.com/DIRACGrid/dirac-cwl/commit/5c8ba4117899ec4d78f0e4846a8707b2042c028d))
|
|
32
|
+
* add lhcb_app_v2 and lhcb_workflow_v2 ([bdd3a7f](https://github.com/DIRACGrid/dirac-cwl/commit/bdd3a7f818e5f8839f6b041abc38f131754a978d))
|
|
33
|
+
* add lhcb_app_v3 and lhcb_workflow_v3 ([69430e5](https://github.com/DIRACGrid/dirac-cwl/commit/69430e5bbca197bbf3ac4284efd720753146d96e))
|
|
34
|
+
* add metadata models ([c1eb3a4](https://github.com/DIRACGrid/dirac-cwl/commit/c1eb3a4078393852f5a3daa5155f82126e5dd570))
|
|
35
|
+
* add output_paths and output_sandbox hints ([07fe25d](https://github.com/DIRACGrid/dirac-cwl/commit/07fe25d7f3c2b914751ae9b4ca3b5ce5f863046b))
|
|
36
|
+
* add output_se hint ([6d2ad79](https://github.com/DIRACGrid/dirac-cwl/commit/6d2ad79e9e862db7b0bd8b59fc0ef4fa11099a1e))
|
|
37
|
+
* Add parallel workflow execution ([bd2e9f1](https://github.com/DIRACGrid/dirac-cwl/commit/bd2e9f12243bf969ec1647cc49b3fd73bd074699))
|
|
38
|
+
* add structure ([a186393](https://github.com/DIRACGrid/dirac-cwl/commit/a186393e0036fbd7d6a82838605239335b0e7cfb))
|
|
39
|
+
* almost a first minimal implementation ([e41e252](https://github.com/DIRACGrid/dirac-cwl/commit/e41e252410b7ca8c058bc4a5ff6c4f339c8f84f1))
|
|
40
|
+
* created MockDiracXSandboxAPI to use diracx sandbox upload and download instead of DIRAC ([84f6053](https://github.com/DIRACGrid/dirac-cwl/commit/84f60537fd8b9b04e0e6cefaac3d6597ae23376e))
|
|
41
|
+
* download lfns in the execution hook ([edc2182](https://github.com/DIRACGrid/dirac-cwl/commit/edc2182be88e22292c3a070721c3406f7fd96563))
|
|
42
|
+
* **ExecutionHooksPluginRegistry:** Move ExecutionHooksPlugin discovery to pyproject entrypoints ([94e8a9b](https://github.com/DIRACGrid/dirac-cwl/commit/94e8a9b0bba502eea63e59d8d9bcf26dc8e7e88f))
|
|
43
|
+
* **ExecutionHooksPluginRegistry:** Move ExecutionHooksPlugin discovery to pyproject entrypoints ([b003d19](https://github.com/DIRACGrid/dirac-cwl/commit/b003d19d39f67bda51a45ae8bf0c3fefa2d2c68e))
|
|
44
|
+
* first minimal working version ([f8c9412](https://github.com/DIRACGrid/dirac-cwl/commit/f8c94125640ce07a4ba4655bc69aa506fdb46f6f))
|
|
45
|
+
* first version of lhcb cwl ([264f472](https://github.com/DIRACGrid/dirac-cwl/commit/264f472878c1c5ed9b3596c746a2a9f2e1f96666))
|
|
46
|
+
* initialize Dirac for real job inputs and outputs ([f5a88ce](https://github.com/DIRACGrid/dirac-cwl/commit/f5a88cecad334bc429fdc980ad8586698d3e6477))
|
|
47
|
+
* **Job Endpoint:** add job output data ([effcc9a](https://github.com/DIRACGrid/dirac-cwl/commit/effcc9ae7233d4523598613db1d6e2fb6965b185))
|
|
48
|
+
* **Job Endpoint:** add job output sandboxes ([05bd754](https://github.com/DIRACGrid/dirac-cwl/commit/05bd75443079c9059c83645f11fefe0d93d0c513))
|
|
49
|
+
* **Job Endpoint:** add job submission with input data using LFN prefix ([fc60245](https://github.com/DIRACGrid/dirac-cwl/commit/fc602451650d85847700a7f6841b860f1f09b6cd))
|
|
50
|
+
* **Job Endpoint:** move job output management to Execution Hooks ([82de6e7](https://github.com/DIRACGrid/dirac-cwl/commit/82de6e7ff240e20365991532c84f3fca2a03611e))
|
|
51
|
+
* job interface ([da827b1](https://github.com/DIRACGrid/dirac-cwl/commit/da827b11d53f9e86219d751e0ef497531e9f0bef))
|
|
52
|
+
* lfns_output_overrides field ([2f9df75](https://github.com/DIRACGrid/dirac-cwl/commit/2f9df7517dcda569d56e1e1cb3448cd1221ad90f))
|
|
53
|
+
* log post-process failure ([d760ffd](https://github.com/DIRACGrid/dirac-cwl/commit/d760ffd4e3ededa18ea6dfa479e14e4e3ffec151))
|
|
54
|
+
* mimic input data downloading ([5231dd4](https://github.com/DIRACGrid/dirac-cwl/commit/5231dd4ad26f4d4b54bbec8e1a41f852154573c0))
|
|
55
|
+
* mimic input sandbox and crypto example ([110ce80](https://github.com/DIRACGrid/dirac-cwl/commit/110ce80d12520eb77939ac1bba4aac0d79c39684))
|
|
56
|
+
* mocks following DIRAC's definition ([44ae43a](https://github.com/DIRACGrid/dirac-cwl/commit/44ae43a5cc3fcdea283b81dfc4733fab06cef7c9))
|
|
57
|
+
* move output_query and input_query to QueryBasedPlugin and clean code ([da46de9](https://github.com/DIRACGrid/dirac-cwl/commit/da46de9484695516317c471c538ed30b32998514))
|
|
58
|
+
* Move pre and post processing commands execution from 'JobProcessorBase' to 'ExecutionHooksBasePlugin' using specialized classes instead of 'CommandBase' ([44669ef](https://github.com/DIRACGrid/dirac-cwl/commit/44669efb12e50a164ac44c39cb42ef3adcfaba1a))
|
|
59
|
+
* new interfaces ([79eb100](https://github.com/DIRACGrid/dirac-cwl/commit/79eb100e9c06a5cee056a6de228b23fbd963dfe8))
|
|
60
|
+
* new job wrapper DIRAC Integration ([e33ff32](https://github.com/DIRACGrid/dirac-cwl/commit/e33ff32592221bc4cfe60c16b03fe52f57ff4929))
|
|
61
|
+
* new structure ([5260a7a](https://github.com/DIRACGrid/dirac-cwl/commit/5260a7a81a756da8a05b380d7153a4030a0cfe2b))
|
|
62
|
+
* partially add mandelbrot workflow ([e2d3bb4](https://github.com/DIRACGrid/dirac-cwl/commit/e2d3bb425c0221bfd9ada7506806ac8d59af29d7))
|
|
63
|
+
* pathless baseuri in cwl ids ([602a542](https://github.com/DIRACGrid/dirac-cwl/commit/602a5428eec798c3498d7286de90b6886f0bd7bc))
|
|
64
|
+
* possibility to specify Path with 'path' key in inputs ([0a5bc9c](https://github.com/DIRACGrid/dirac-cwl/commit/0a5bc9c7df04f7222ecc18c623de0e10f69ab1a1))
|
|
65
|
+
* prepare cli to work with lhcb workflows (1st draft) ([c6cff08](https://github.com/DIRACGrid/dirac-cwl/commit/c6cff08a1b12794a2ae34c6a17fc1b5865b8ba88))
|
|
66
|
+
* production interface ([a73f479](https://github.com/DIRACGrid/dirac-cwl/commit/a73f4797dfc3465400008deaf3e5576dfe7360b3))
|
|
67
|
+
* publish json schemas ([7405ffa](https://github.com/DIRACGrid/dirac-cwl/commit/7405ffaedca270d96a43b30d2bf22acdc42c3317))
|
|
68
|
+
* publish json schemas ([6929d89](https://github.com/DIRACGrid/dirac-cwl/commit/6929d89a26205e57abb9d2023a9c0a297c9b05bc))
|
|
69
|
+
* pypi deployment with release-please ([#96](https://github.com/DIRACGrid/dirac-cwl/issues/96)) ([bdbcf5e](https://github.com/DIRACGrid/dirac-cwl/commit/bdbcf5e76c2bfdcd5770a2e4f3ef55892655c8f1))
|
|
70
|
+
* Raise special exception for pre/post processing commands ([c5c1285](https://github.com/DIRACGrid/dirac-cwl/commit/c5c12855312db52d9a887f4c88df3f34fd7b4b51))
|
|
71
|
+
* reintroduce the generic workflow ([57fc087](https://github.com/DIRACGrid/dirac-cwl/commit/57fc08772ff3cd8d4e98f95396aae2938708ae44))
|
|
72
|
+
* sandbox store using diracx api mock ([36b6654](https://github.com/DIRACGrid/dirac-cwl/commit/36b66542e3b7505970072b75e2fe642f8b6fdeba))
|
|
73
|
+
* split code into 3 modules (job, trans, prod) ([b3033c4](https://github.com/DIRACGrid/dirac-cwl/commit/b3033c4b0a8708a72b9eb0539e9f0f5ca71b8e1b))
|
|
74
|
+
* streamline workflows and tests ([412b7e8](https://github.com/DIRACGrid/dirac-cwl/commit/412b7e8724c396d8fd474ee5787407a2103edfa1))
|
|
75
|
+
* **test:** make lhcb workflow executable locally ([c8b7cf8](https://github.com/DIRACGrid/dirac-cwl/commit/c8b7cf8f178470594b828fe874a0a35b645a0c6c))
|
|
76
|
+
* **test:** make lhcb workflow executable locally ([452c0d2](https://github.com/DIRACGrid/dirac-cwl/commit/452c0d21be6c419125975d05cf1163e4a4350e28))
|
|
77
|
+
* **tests:** Extend and adapt ProPostProcessingHint tests ([820d115](https://github.com/DIRACGrid/dirac-cwl/commit/820d115320a34940f8a94b5b07d8d2d18484ea1c))
|
|
78
|
+
* transformation interface ([4211223](https://github.com/DIRACGrid/dirac-cwl/commit/4211223c12d6051d8de2511b57e62bead3f5e9bd))
|
|
79
|
+
* use DataManager and SandboxStore in job pre-process ([e599f9b](https://github.com/DIRACGrid/dirac-cwl/commit/e599f9b20d02999e8ebe56879323c8e74647ff01))
|
|
80
|
+
* use DIRAC FileStorage ([e8acb1a](https://github.com/DIRACGrid/dirac-cwl/commit/e8acb1abbeed3afb1f131123ccdb7ea42245ba89))
|
|
81
|
+
* use location instead of path for lfns ([aa06d3c](https://github.com/DIRACGrid/dirac-cwl/commit/aa06d3cc0034dddcfff89609874b0d8b4cc1f395))
|
|
82
|
+
* **workflows:** reference subworkflows in main workflows ([a8d9fff](https://github.com/DIRACGrid/dirac-cwl/commit/a8d9fff1d421ee0291bab801811c7b24805072da))
|
|
83
|
+
* **workflows:** reference subworkflows in main workflows to avoid repeating them ([d77bed8](https://github.com/DIRACGrid/dirac-cwl/commit/d77bed85b373eb2a8018e96c190673351ec6f5c2))
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
### Bug Fixes
|
|
87
|
+
|
|
88
|
+
* add job submission itself into the input sandbox when submitting to DIRAC ([25bfa4c](https://github.com/DIRACGrid/dirac-cwl/commit/25bfa4c2e83986778bec21d4bd6ed12cf5636e86))
|
|
89
|
+
* added real SandboxInfo from diracx instead of a Mock ([c7c73ec](https://github.com/DIRACGrid/dirac-cwl/commit/c7c73ecdcb5878c5569d9bd622865e3f26dd3d3c))
|
|
90
|
+
* apply pr suggestions and add some docstring ([924420a](https://github.com/DIRACGrid/dirac-cwl/commit/924420a7f36202019f07b7834a68b7221351e457))
|
|
91
|
+
* better displaying errors coming from job execution ([dbe2654](https://github.com/DIRACGrid/dirac-cwl/commit/dbe2654581a0de70d86a071da2b9242702d051c4))
|
|
92
|
+
* change prefix ([240960a](https://github.com/DIRACGrid/dirac-cwl/commit/240960acc94aeac5587efec28aa4431ae899225f))
|
|
93
|
+
* check if post-process succeeds ([f00a259](https://github.com/DIRACGrid/dirac-cwl/commit/f00a259c686ce6f0cb3f05b85cd8d78c8bb56990))
|
|
94
|
+
* execute the test only if the OS is Linux based ([98c39ab](https://github.com/DIRACGrid/dirac-cwl/commit/98c39ab06b0d1faf11197155af9e93b515781892))
|
|
95
|
+
* fix field condition in get_lfn ([31a6f62](https://github.com/DIRACGrid/dirac-cwl/commit/31a6f62f0b024794e4220685c23f7830e97471da))
|
|
96
|
+
* fix gaussian data generation test ([4a22720](https://github.com/DIRACGrid/dirac-cwl/commit/4a2272082a601f788cc1fb28b518c7c46f7dd54e))
|
|
97
|
+
* fix input paths for inputs in sandbox ([112bb23](https://github.com/DIRACGrid/dirac-cwl/commit/112bb23ff5776e4b795a10ec1c52576ba416c2be))
|
|
98
|
+
* fix lfn path for files of the same cwl output ([3ef7091](https://github.com/DIRACGrid/dirac-cwl/commit/3ef709165451c357b65d41d5cffc543cc596baa7))
|
|
99
|
+
* fix lint issues ([112980c](https://github.com/DIRACGrid/dirac-cwl/commit/112980ce4a2f1a1d859d2447aa73200736ec423a))
|
|
100
|
+
* fix output_se in hook instanciation ([d14ddd8](https://github.com/DIRACGrid/dirac-cwl/commit/d14ddd8e88107d640e34048c5435fa7ad61e59c7))
|
|
101
|
+
* fix parameter file being set twice ([3965240](https://github.com/DIRACGrid/dirac-cwl/commit/39652401797417c2c3e6d410440b22b97a68070a))
|
|
102
|
+
* fix sandbox mock ([49f4ce0](https://github.com/DIRACGrid/dirac-cwl/commit/49f4ce03cbfb28a2994ffe87807531593561294e))
|
|
103
|
+
* fix sandboxstoreClient used for sandbox downloads ([eef88c9](https://github.com/DIRACGrid/dirac-cwl/commit/eef88c934a4de2b8c6d4d9dbcfe01726cd2a3868))
|
|
104
|
+
* fix type error in lhcb post-process ([c94ea41](https://github.com/DIRACGrid/dirac-cwl/commit/c94ea41f56864800b765a887d2217348edfd7656))
|
|
105
|
+
* fixed merge conflicts ([f54aeee](https://github.com/DIRACGrid/dirac-cwl/commit/f54aeee2377121b4ee8a89270732d56da2369d48))
|
|
106
|
+
* fixed some tests ([836c8af](https://github.com/DIRACGrid/dirac-cwl/commit/836c8af02020fbf7c3176224f34f5156bcae685f))
|
|
107
|
+
* introduce a method to iteratively load the referenced subworkflows ([535ba34](https://github.com/DIRACGrid/dirac-cwl/commit/535ba341a1a4a40de9fedee1cb393ac8fd92a6d2))
|
|
108
|
+
* **job:** generate outputs in the worker node directory instead of at the root of the repo ([dde44e4](https://github.com/DIRACGrid/dirac-cwl/commit/dde44e464bba6dbeb592c62655db731a7f67209d))
|
|
109
|
+
* lfns start with a `/` and handle uppercase prefix ([712f880](https://github.com/DIRACGrid/dirac-cwl/commit/712f880268a24a1d01f43c58d3996563351475a5))
|
|
110
|
+
* load parameter file using cwltool in JobWrapper ([9c516a7](https://github.com/DIRACGrid/dirac-cwl/commit/9c516a73999ee182aed7444f43b6e75411665233))
|
|
111
|
+
* mandelbrot wf ([#4](https://github.com/DIRACGrid/dirac-cwl/issues/4)) ([732b757](https://github.com/DIRACGrid/dirac-cwl/commit/732b757fb2bd73184f51119c3404cdf80aa237e2))
|
|
112
|
+
* moved sandboxstore creation to create_sandbox (otherwise, it wasn't existing if we didn't call the function from the SubmissionClient) ([e841396](https://github.com/DIRACGrid/dirac-cwl/commit/e8413969f89195b12934177271e51943fc12d777))
|
|
113
|
+
* output sandbox is never uploaded ([82cd131](https://github.com/DIRACGrid/dirac-cwl/commit/82cd13114ba725ebdbcd3b8ead19466e655a0883))
|
|
114
|
+
* pass configuration parameters to jobs ([9d2b09d](https://github.com/DIRACGrid/dirac-cwl/commit/9d2b09d8f39efd34148a32832cf87374ef0f7421))
|
|
115
|
+
* pre-commit ([716e3f2](https://github.com/DIRACGrid/dirac-cwl/commit/716e3f22733cadd1165c968decf4e8050e8a6572))
|
|
116
|
+
* pre-commit ([94027ee](https://github.com/DIRACGrid/dirac-cwl/commit/94027eee98ac6ad687d8a15229c9f7c3da76fa5c))
|
|
117
|
+
* **production:** get default values even if input name is different from source name ([4920780](https://github.com/DIRACGrid/dirac-cwl/commit/49207800825de2b88f3d3ea94d53aa840b92afff))
|
|
118
|
+
* **QueryBasedPlugin:** Detect case where job_type is None ([81dff51](https://github.com/DIRACGrid/dirac-cwl/commit/81dff514f12239f696553c48f3888d57a095d691))
|
|
119
|
+
* Remove 'PrePostProcessingHint' from the 'extract_dirac_hints' docstring ([bb0cc6a](https://github.com/DIRACGrid/dirac-cwl/commit/bb0cc6af38bfa7864c9a4e4bba302b5527ee790d))
|
|
120
|
+
* Remove 'utils.py' file at dirac_cwl_proto/execution_hooks ([1b454c5](https://github.com/DIRACGrid/dirac-cwl/commit/1b454c5865fe2531f14fc1c69cc4fab7f264334e))
|
|
121
|
+
* remove duplicate code ([8b9e320](https://github.com/DIRACGrid/dirac-cwl/commit/8b9e320ec19a9a1b9d4ab8fecbb29e47d1eaad41))
|
|
122
|
+
* removed comments ([e5a11d1](https://github.com/DIRACGrid/dirac-cwl/commit/e5a11d1ae56b58d0c2c86b32caf73b68e47a647d))
|
|
123
|
+
* removed MockDiracXSandboxAPI and sandbox_store_client to match diracx ([830752b](https://github.com/DIRACGrid/dirac-cwl/commit/830752bb4d902b57a42578a6f6c793305072cba3))
|
|
124
|
+
* removed old MockSandboxStoreClient and forgotten pass ([d302395](https://github.com/DIRACGrid/dirac-cwl/commit/d302395549b80c5b1ccf9dad45a4e9b21e0ebabe))
|
|
125
|
+
* renamed upload_sandbox to create_sandbox to match diracx and imported the correct methods depending on LOCAL variable ([f4fcab0](https://github.com/DIRACGrid/dirac-cwl/commit/f4fcab0e808f15455f78399cca7d36959749b019))
|
|
126
|
+
* renaming ([91e04c6](https://github.com/DIRACGrid/dirac-cwl/commit/91e04c660a46c702e77c6ef75a50e51dc6339c2e))
|
|
127
|
+
* revert transformation changes and fix task default values ([dd3e8ff](https://github.com/DIRACGrid/dirac-cwl/commit/dd3e8ff2a20d9342775b3c14e714dcd7cd0e0758))
|
|
128
|
+
* test and mypy ([1d8949d](https://github.com/DIRACGrid/dirac-cwl/commit/1d8949d60065f394144a2e6bb23ece1814e77a0d))
|
|
129
|
+
* **tests:** Fix parallel test execution, again ([28e7167](https://github.com/DIRACGrid/dirac-cwl/commit/28e7167ef3a1fecdf1c4a69f9694ef60bcc36784))
|
|
130
|
+
* **tests:** Fix parallel test execution, again ([c0c0247](https://github.com/DIRACGrid/dirac-cwl/commit/c0c024743ebfd6a6286c140754a5469ded269892))
|
|
131
|
+
* **tests:** Fix time error margin at test_run_job_parallely ([108c451](https://github.com/DIRACGrid/dirac-cwl/commit/108c451b82743bf2ab16ddfd4b8cc528a1921970))
|
|
132
|
+
* **tests:** Fix time error margin at test_run_job_parallely ([c491eb8](https://github.com/DIRACGrid/dirac-cwl/commit/c491eb8175b329bf5c057fb74117355e2a00eb8e))
|
|
133
|
+
* typos ([40368f6](https://github.com/DIRACGrid/dirac-cwl/commit/40368f67b064d6b8c40a67785bbc63468577880f))
|
|
134
|
+
* update output workflows in tests ([a3517ce](https://github.com/DIRACGrid/dirac-cwl/commit/a3517ce2903be6cfaebde86f992b3dda8b8d7aa7))
|
|
135
|
+
* use job wrapper's return value in template ([3544e59](https://github.com/DIRACGrid/dirac-cwl/commit/3544e597e3ce8d03d82720bf0ce9d34bdc3b4de6))
|
|
136
|
+
* use job wrapper's return value in template ([ef945c6](https://github.com/DIRACGrid/dirac-cwl/commit/ef945c69a6611cdd452a1f8d26c2f2f298e696d2))
|
|
137
|
+
* use Pixi `workspace` instead of `project` ([931951c](https://github.com/DIRACGrid/dirac-cwl/commit/931951ca3a63e7afda6f38720f25df5afeef7c2a))
|
|
138
|
+
* use the cwl_utils.pack method to resolve references ([b98ddd2](https://github.com/DIRACGrid/dirac-cwl/commit/b98ddd2bdccdf23f297ba363fa15484d67eec825))
|
|
139
|
+
* various fixes and add logs info for outputs ([d4f6eb2](https://github.com/DIRACGrid/dirac-cwl/commit/d4f6eb21ab026dfdeb8a35d5f9df18960b862262))
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
### Performance Improvements
|
|
143
|
+
|
|
144
|
+
* use load_inputfile only on the cwl part ([1dea272](https://github.com/DIRACGrid/dirac-cwl/commit/1dea27213012cfc9a8643f3a0152f782d3990ae1))
|