Skip to content

feat: add diracx-tasks#842

Open
chrisburr wants to merge 3 commits intoDIRACGrid:mainfrom
chrisburr:feat/tasks
Open

feat: add diracx-tasks#842
chrisburr wants to merge 3 commits intoDIRACGrid:mainfrom
chrisburr:feat/tasks

Conversation

@chrisburr
Copy link
Copy Markdown
Member

No description provided.

@chaen
Copy link
Copy Markdown
Contributor

chaen commented Mar 21, 2026

@fstagni the doc does not build in RTD, in the meantime, these are the page worth mentioning to whoever you think is relevant:
https://github.com/chrisburr/diracx/blob/feat/tasks/docs/dev/explanations/tasks/index.md
https://github.com/chrisburr/diracx/blob/feat/tasks/docs/adr/DX-ADR-001_tasks.md

@read-the-docs-community
Copy link
Copy Markdown

read-the-docs-community bot commented Mar 21, 2026

Documentation build overview

📚 diracx | 🛠️ Build #32002408 | 📁 Comparing 65f2e76 against latest (07c549d)


🔍 Preview build

Show files changed (144 files in total): 📝 117 modified | ➕ 25 added | ➖ 2 deleted
File Status
404.html 📝 modified
index.html 📝 modified
REFERENCE/index.html 📝 modified
RUN_PROD/index.html 📝 modified
SECURITY/index.html 📝 modified
SSO/index.html 📝 modified
admin/index.html 📝 modified
adr/index.html ➕ added
dev/index.html 📝 modified
developers/index.html 📝 modified
roadmap/index.html 📝 modified
user/index.html 📝 modified
admin/explanations/index.html 📝 modified
admin/how-to/index.html 📝 modified
admin/reference/index.html 📝 modified
admin/tutorials/index.html 📝 modified
adr/DX-ADR-001_tasks/index.html ➕ added
adr/DX-ADR-XXX_template/index.html ➕ added
dev/explanations/index.html 📝 modified
dev/how-to/index.html 📝 modified
dev/reference/index.html 📝 modified
dev/tutorials/index.html 📝 modified
user/explanations/index.html 📝 modified
user/how-to/index.html 📝 modified
user/reference/index.html 📝 modified
user/tutorials/index.html 📝 modified
admin/explanations/auth-with-diracx/index.html 📝 modified
admin/explanations/auth-with-external/index.html 📝 modified
admin/explanations/chart-structure/index.html 📝 modified
admin/explanations/configuration/index.html 📝 modified
admin/explanations/database-management/index.html 📝 modified
admin/explanations/manage-web-release/index.html 📝 modified
admin/explanations/opentelemetry/index.html 📝 modified
admin/explanations/sandbox-store/index.html 📝 modified
admin/explanations/tasks/index.html ➕ added
admin/explanations/user-management/index.html 📝 modified
admin/how-to/debugging/index.html 📝 modified
admin/how-to/install/index.html 📝 modified
admin/how-to/rotate-a-secret/index.html 📝 modified
admin/how-to/tasks/index.html ➕ added
admin/how-to/upgrading/index.html 📝 modified
admin/reference/env-variables/index.html 📝 modified
admin/reference/security_model/index.html 📝 modified
admin/reference/settings-and-preferences/index.html 📝 modified
admin/reference/tasks-configuration/index.html ➕ added
admin/reference/values/index.html 📝 modified
admin/tutorials/authentication/index.html 📝 modified
admin/tutorials/monitor-tasks/index.html ➕ added
admin/tutorials/run_locally/index.html 📝 modified
dev/explanations/components/index.html 📝 modified
dev/explanations/dependency-management/index.html 📝 modified
dev/explanations/designing-functionality/index.html 📝 modified
dev/explanations/documentation-system/index.html 📝 modified
dev/explanations/extensions/index.html 📝 modified
dev/explanations/job_commands/index.html 📝 modified
dev/explanations/repo-structure/index.html 📝 modified
dev/explanations/run_demo/index.html 📝 modified
dev/explanations/tasks/index.html ➕ added
dev/explanations/testing/index.html 📝 modified
dev/explanations/web-architecture/index.html 📝 modified
dev/explanations/web-testing/index.html 📝 modified
dev/how-to/add-a-cli-command/index.html 📝 modified
dev/how-to/add-a-db/index.html 📝 modified
dev/how-to/add-a-route/index.html 📝 modified
dev/how-to/add-a-setting/index.html 📝 modified
dev/how-to/add-a-task/index.html 📝 modified
dev/how-to/add-a-test/index.html 📝 modified
dev/how-to/add-functionality/index.html 📝 modified
dev/how-to/client-customization/index.html 📝 modified
dev/how-to/client-extension/index.html 📝 modified
dev/how-to/client-generation/index.html 📝 modified
dev/how-to/contribute/index.html 📝 modified
dev/how-to/contribute-to-web/index.html 📝 modified
dev/how-to/create-web-application/index.html 📝 modified
dev/how-to/develop-legacy-dirac/index.html 📝 modified
dev/how-to/extend-diracx/index.html 📝 modified
dev/how-to/manage-web-extension/index.html 📝 modified
dev/how-to/setup-web-environment/index.html 📝 modified
dev/how-to/spawn-a-task/index.html ➕ added
dev/how-to/use-task-callbacks/index.html ➕ added
dev/how-to/use-the-demo/index.html 📝 modified
dev/how-to/write-docs/index.html 📝 modified
dev/reference/application-state/index.html 📝 modified
dev/reference/client-metapathfinder/index.html 📝 modified
dev/reference/coding-conventions/index.html 📝 modified
dev/reference/configuration/index.html 📝 modified
dev/reference/db-transaction-model/index.html 📝 modified
dev/reference/dependency-injection/index.html 📝 modified
dev/reference/entrypoints/index.html 📝 modified
dev/reference/env-variables/index.html 📝 modified
dev/reference/pixi-tasks/index.html 📝 modified
dev/reference/security-policies/index.html 📝 modified
dev/reference/security-properties/index.html 📝 modified
dev/reference/tasks/index.html ➕ added
dev/reference/test-recipes/index.html 📝 modified
dev/reference/web-coding-conventions/index.html 📝 modified
dev/reference/writing-tests/index.html 📝 modified
dev/tutorials/advanced-tutorial/index.html 📝 modified
dev/tutorials/getting-started/index.html 📝 modified
dev/tutorials/larger-developments/index.html 📝 modified
dev/tutorials/making-changes/index.html ➖ deleted
dev/tutorials/play-with-auth/index.html ➖ deleted
dev/tutorials/run-locally/index.html 📝 modified
dev/tutorials/web-extensions/index.html 📝 modified
dev/tutorials/web-getting-started/index.html 📝 modified
user/how-to/list-and-share-applications/index.html 📝 modified
user/how-to/login-out/index.html 📝 modified
user/how-to/monitor-jobs/index.html 📝 modified
user/reference/client-configuration/index.html 📝 modified
user/reference/known-installations/index.html 📝 modified
user/reference/programmatic-usage/index.html 📝 modified
user/tutorials/getting-started/index.html 📝 modified
admin/how-to/install/connect/index.html 📝 modified
admin/how-to/install/convert-cs/index.html 📝 modified
admin/how-to/install/embracing/index.html 📝 modified
admin/how-to/install/install-kubernetes/index.html 📝 modified
admin/how-to/install/installing/index.html 📝 modified
admin/how-to/install/minimal-requirements/index.html 📝 modified
admin/how-to/install/register-a-vo/index.html 📝 modified
admin/how-to/install/register-the-admin-vo/index.html 📝 modified
admin/how-to/tasks/configure/index.html ➕ added
admin/how-to/tasks/operate/index.html ➕ added
admin/how-to/tasks/run-task-manually/index.html ➕ added
dev/explanations/components/api/index.html 📝 modified
dev/explanations/components/cli/index.html 📝 modified
dev/explanations/components/client/index.html 📝 modified
dev/explanations/components/db/index.html 📝 modified
dev/explanations/components/routes/index.html 📝 modified
dev/explanations/tasks/broker-lifecycle/index.html ➕ added
dev/explanations/tasks/class-details/index.html ➕ added
dev/how-to/use-the-demo/swagger/index.html 📝 modified
dev/how-to/use-the-demo/web/index.html 📝 modified
dev/tutorials/advanced-tutorial/database/index.html ➕ added
dev/tutorials/advanced-tutorial/design/index.html ➕ added
dev/tutorials/advanced-tutorial/logic/index.html ➕ added
dev/tutorials/advanced-tutorial/router/index.html ➕ added
dev/tutorials/advanced-tutorial/running-locally/index.html ➕ added
dev/tutorials/advanced-tutorial/tasks/index.html ➕ added
dev/tutorials/advanced-tutorial/testing-database/index.html ➕ added
dev/tutorials/advanced-tutorial/testing-router/index.html ➕ added
dev/tutorials/advanced-tutorial/testing-tasks/index.html ➕ added
user/reference/programmatic-usage/command-line-interface/index.html 📝 modified
user/reference/programmatic-usage/https-interface/index.html 📝 modified
user/reference/programmatic-usage/python-interface/index.html 📝 modified

@chrisburr chrisburr changed the title feat: Add diracx-tasks feat: add diracx-tasks Mar 25, 2026
@chrisburr chrisburr force-pushed the feat/tasks branch 3 times, most recently from 81cfd3b to 36c857e Compare March 25, 2026 08:59
# "gubbins-core/src/**/*.py",
"gubbins-db/src/**/*.py",
"gubbins-logic/src/**/*.py",
"gubbins-routers/src/**/*.py",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add

Suggested change
"gubbins-tasks/src/**/*.py",

# "$MYPY_CONFIG_FILE_DIR/gubbins-core/src",
"$MYPY_CONFIG_FILE_DIR/gubbins-db/src",
"$MYPY_CONFIG_FILE_DIR/gubbins-logic/src",
"$MYPY_CONFIG_FILE_DIR/gubbins-routers/src",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add

Suggested change
"$MYPY_CONFIG_FILE_DIR/gubbins-tasks/src",

importlib-metadata = "<8.8.0"
# Dependencies for run_local.sh
redis-server = "*"
seaweedfs = "*"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not part of this PR, right? Maybe refrain from adding it right now (it's also somewhere else in this PR)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually see it added in several places. Can you clarify?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Like it says in the comment: # Dependencies for run_local.sh

See https://diracx--842.org.readthedocs.build/en/842/dev/tutorials/advanced-tutorial/running-locally/ for more details.

_SandboxStoreSettings, Depends(_SandboxStoreSettings.create)
]
# Re-export everything from the canonical location
from diracx.tasks.plumbing.depends import * # noqa: F401, F403
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want diracx-routers to depend on diracx-tasks?
I would have naively imagined:
diracx-logic
|
-> diracx-tasks
|
-> diracx-routers

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: there is a mermaid diagram in the documentation that would need to be adapted:

```mermaid
---
config:
layout: elk
---
flowchart BT
subgraph frontend["Frontend"]
client["diracx-client (autorest)"]
api["diracx-api"]
cli["diracx-cli (typer)"]
end
subgraph backend["Backend"]
dbs["diracx-db (sqlalchemy/os)"]
logic["diracx-logic (Dirac)"]
routers["diracx-routers (FastAPI)"]
end
dbs -. uses .-> core["diracx-core (domain)"]
logic -. uses .-> core
routers -. uses .-> core
tasks["diracx-tasks (celery?)"] -. uses .-> core
client -. uses .-> core
api -. uses .-> core
cli -. uses .-> core
logic -- calls --> dbs
routers -- calls --> logic
tasks -- calls --> logic & api
client -- calls through OpenAPI --> routers
api -- calls --> client
cli -- calls --> api & client
client:::Sky
api:::Sky
cli:::Sky
dbs:::Pine
logic:::Pine
routers:::Pine
tasks:::Aqua
classDef Rose stroke-width:1px, stroke-dasharray:none, stroke:#FF5978, fill:#FFDFE5, color:#8E2236
classDef Sky stroke-width:1px, stroke-dasharray:none, stroke:#374D7C, fill:#E2EBFF, color:#374D7C
classDef Pine stroke-width:1px, stroke-dasharray:none, stroke:#254336, fill:#27654A, color:#FFFFFF
classDef Aqua stroke-width:1px, stroke-dasharray:none, stroke:#46EDC8, fill:#DEFFF8, color:#378E7A
```

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tasks (replacement for agents/executors)

5 participants