Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plans for command line interface #93

Open
21 of 28 tasks
phil-opp opened this issue Oct 5, 2022 · 3 comments
Open
21 of 28 tasks

Plans for command line interface #93

phil-opp opened this issue Oct 5, 2022 · 3 comments
Assignees

Comments

@phil-opp
Copy link
Collaborator

phil-opp commented Oct 5, 2022

We are planning a dora command line tool with the following subcommands:

For v0.1:

  • help: Help about any command (generated by clap)
  • check
    • Pre-check the dora installation/environment for potential problems (e.g., YAML syntax)
    • Check that the dora-coordinator is running
    • Check that the iox-roudi deamon is running
  • build: Build the dora nodes/operators (similar to run.rs in current examples)
  • graph: Generate dataflow graph per YAML spec
    • visualize as mermaid code
    • open image automatically, e.g. in OS or browser window
  • templates: Dora node/operator template
    • Rust
    • C
    • Python
    • C++
    • dataflow YAML
  • start: Run dora dataflow
  • stop: Stop dora dataflow
  • destroy: Cleanup and destroy all dora related processes
  • list: List running dora entities (resources)
  • up: Install all dora dependencies and start dora coordinator, iceoryx daemon and/or zenoh router etc
  • upgrade: Upgrade dora

Later:

  • dashboard: Open the dora dashboard in a web browser (future)
  • logs: Tail logs from customer node/operators
  • metrics: Fetch metrics from customer node/operators
  • stats: Display dora/traffic statistics
  • get: Get info about the dora entity (future may need CRUD on dora entity)
  • graph: visualize as image directly (e.g. as svg)

Other Ideas:

  • package: Create an archive file containing all compiled nodes for easier distribution
    • similar to cargo package

See the discussion in #81 for more context.

Implementation PRs:

@elBoberido
Copy link

@phil-opp creating an API to check whether the iceoryx daemon is running is on our todo list. We are at the moment just busy with other stuff.

@phil-opp
Copy link
Collaborator Author

phil-opp commented Nov 7, 2022

Great to hear that, thanks! For now we just check the running processes, so we have a workaround.

@haixuanTao
Copy link
Collaborator

haixuanTao commented Apr 11, 2023

Just want to comment that, I think that the upgrade of dora should be done at a package manager level.

At present time, dora is packaged in cargo, and can be upgraded as such: cargo install dora-cli --force or with https://crates.io/crates/cargo-update as any other Rust application.

Therefore I marked it as done.

We can later plan to release dora into more package manager.

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

No branches or pull requests

3 participants