Image registry via remote TOML — fetch available VM images from public repo #32

Closed
opened 2026-03-18 09:40:20 +00:00 by mahmoud · 1 comment
Owner

A TOML file hosted on a public git repo defines the list of available VM images. hero_compute_server fetches this file at deploy time (or on a schedule)
and exposes the list via a new RPC method:

list_images() -> [VmImage]

  VmImage = {
      name: str        # display name e.g. "Ubuntu 22.04"
      id: str          # image identifier e.g. "ubuntu-22.04"
      url: str         # download URL
      size_gb: u64     # disk space required
      description: str
}

The TOML URL is configurable via env var: IMAGE_REGISTRY_URL=https://raw.githubusercontent.com/
.../images.toml

deploy_vm() accepts an optional image_id param. If omitted, use the first image in the registry as default.

UI: deploy modal shows a dropdown of available
images fetched from list_images().

Definition of Done:

  • images.toml format defined and hosted
  • list_images() RPC method on server
  • deploy_vm accepts optional image_id param
  • Images fetched and cached on server startup
  • UI deploy modal has image selector dropdown
  • docs/api.md updated
A TOML file hosted on a public git repo defines the list of available VM images. hero_compute_server fetches this file at deploy time (or on a schedule) and exposes the list via a new RPC method: ``` list_images() -> [VmImage] VmImage = { name: str # display name e.g. "Ubuntu 22.04" id: str # image identifier e.g. "ubuntu-22.04" url: str # download URL size_gb: u64 # disk space required description: str } ``` The TOML URL is configurable via env var: IMAGE_REGISTRY_URL=https://raw.githubusercontent.com/ .../images.toml deploy_vm() accepts an optional image_id param. If omitted, use the first image in the registry as default. UI: deploy modal shows a dropdown of available images fetched from list_images(). Definition of Done: - [x] images.toml format defined and hosted - [x] list_images() RPC method on server - [x] deploy_vm accepts optional image_id param - [x] Images fetched and cached on server startup - [x] UI deploy modal has image selector dropdown - [x] docs/api.md updated
mahmoud self-assigned this 2026-03-18 13:13:32 +00:00
mahmoud added this to the now milestone 2026-03-18 13:13:37 +00:00
mahmoud added this to the ACTIVE project 2026-03-18 13:13:39 +00:00
Author
Owner
Done in https://forge.ourworld.tf/lhumina_code/hero_compute_registry
Sign in to join this conversation.
No labels
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#32
No description provided.