Open a dashboard when serve is run at a terminal
`fluksio serve` printed a log stream and nothing else, so watching an engine meant a second terminal running `status --watch`, and stopping or pairing it meant a third. At a terminal it now opens a dashboard: the health and flow overview `status` draws, the recent runs as a table, and the engine's own output in a pane below — which is what the earlier decision against this was protecting, and it is still all there. The engine is a child process running `serve --plain`, not a thread, so it outlives the dashboard: q leaves it running and says so, s and r stop and restart it, c cancels the selected run and e pairs with a portal. An engine already serving this directory is adopted rather than duplicated, and it can be stopped from here only because the pidfile and the token together prove it is this installation's. `--plain` and no terminal both keep the old behaviour, which is what the container and CI run. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Hra4ndWMCLU5F3KjUuVAc
This commit is contained in:
@@ -50,6 +50,9 @@ dependencies = [
|
||||
# `fluksio status` draws with it. Already here underneath fastapi's CLI,
|
||||
# named because a command that depends on it should say so.
|
||||
"rich>=13",
|
||||
# `fluksio serve` opens a dashboard with it at a terminal. Pure python and
|
||||
# mostly rich underneath, which is already here.
|
||||
"textual>=1.0",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
@@ -152,6 +155,8 @@ ignore = [
|
||||
# It talks to whoever ran it; that is what a command line is.
|
||||
"fluksio/cli.py" = ["T201"]
|
||||
"fluksio/sdk/cli.py" = ["T201"]
|
||||
# What it prints is the line left in the terminal after the dashboard closes.
|
||||
"fluksio/tui.py" = ["T201"]
|
||||
# Node functions take `params` whether or not they use it — that is the
|
||||
# contract the engine calls them with.
|
||||
"fluksio/flow/nodes.py" = ["ARG001", "ARG002"]
|
||||
|
||||
Reference in New Issue
Block a user