update: show node component versions in UI sidebar with hover details #81

Open
nabil_salah wants to merge 2 commits from development_show_node_versions into development
Member

Summary

  • Backend /version endpoint returns structured JSON with all 5 component versions (hero_compute, my_hypervisor, hero_proc, cloud-hypervisor, mycelium)
  • hero_compute uses compile-time version + git hash from build.rs environment variables
  • External components queried via shell commands with 5s timeouts; missing binaries display "not installed"
  • Frontend: sidebar displays hero_compute version with git hash; hover shows all components in monospace tooltip format

Changes

  • crates/hero_compute_ui/build.rs: Embed GIT_HASH at compile time
  • crates/hero_compute_ui/src/server.rs: Refactor version_handler to return structured component data
  • crates/hero_compute_ui/static/js/dashboard.js: Update version fetch and build component tooltip

Test plan

  • Verify sidebar displays correct hero_compute version with git hash
  • Verify tooltip shows all 5 component versions on hover
  • Verify "not installed" displays for missing binaries
  • Verify version info refreshes on page reload

Resolves #76

image

## Summary - Backend `/version` endpoint returns structured JSON with all 5 component versions (hero_compute, my_hypervisor, hero_proc, cloud-hypervisor, mycelium) - hero_compute uses compile-time version + git hash from build.rs environment variables - External components queried via shell commands with 5s timeouts; missing binaries display "not installed" - Frontend: sidebar displays hero_compute version with git hash; hover shows all components in monospace tooltip format ## Changes - `crates/hero_compute_ui/build.rs`: Embed GIT_HASH at compile time - `crates/hero_compute_ui/src/server.rs`: Refactor version_handler to return structured component data - `crates/hero_compute_ui/static/js/dashboard.js`: Update version fetch and build component tooltip ## Test plan - [x] Verify sidebar displays correct hero_compute version with git hash - [x] Verify tooltip shows all 5 component versions on hover - [x] Verify "not installed" displays for missing binaries - [x] Verify version info refreshes on page reload Resolves #76 ![image](/attachments/d8a523e8-c1aa-4489-9e8d-f659f778af6e)
fix(configure): handle Ubuntu 22 virtiofsd setup and complete issue #62
All checks were successful
Test / test (push) Successful in 1m27s
Test / test (pull_request) Successful in 1m49s
b13dfb0451
- Complete issue #62 by making configure.sh install qemu fallback packages and ensure virtiofsd is available in PATH via symlink check/warn flow.

This commit is the second part of the fix.
The first part was done in:
a711a138b2

Signed-off-by: Nabil-Salah <nabil.salah203@gmail.com>
feat(ui): display component versions in sidebar with hover tooltip
All checks were successful
Test / test (push) Successful in 1m24s
Test / test (pull_request) Successful in 1m48s
7ec370bffd
- Backend: /version endpoint returns structured JSON with all 5 component versions
  (hero_compute, my_hypervisor, hero_proc, cloud-hypervisor, mycelium)
- hero_compute uses compile-time version + git hash (env!() macros)
- External components queried via shell commands with 5s timeout
- Missing binaries display "not installed"
- Frontend: sidebar shows hero_compute version, hover shows all components
- Closes #76

Signed-off-by: Nabil-Salah <nabil.salah203@gmail.com>
All checks were successful
Test / test (push) Successful in 1m24s
Test / test (pull_request) Successful in 1m48s
This pull request can be merged automatically.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin development_show_node_versions:development_show_node_versions
git switch development_show_node_versions

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch development
git merge --no-ff development_show_node_versions
git switch development_show_node_versions
git rebase development
git switch development
git merge --ff-only development_show_node_versions
git switch development_show_node_versions
git rebase development
git switch development
git merge --no-ff development_show_node_versions
git switch development
git merge --squash development_show_node_versions
git switch development
git merge --ff-only development_show_node_versions
git switch development
git merge development_show_node_versions
git push origin development
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_compute!81
No description provided.