oxidecomputer / oxidecomputer/omicron

add support for compressed image uploads

Open
#7,270 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

customer
Dominant language
Rust
Stars
572
Forks
97
Avg merge
2d 12h
Merged PRs (30d)
96

Description

The Preparing Images for Import documentation details that images must be in raw format to be uploaded. However, raw images are an order of magnitude larger than compressed images which leads to long upload times particularly for those with low upload bandwidth. Customers have requested support for uploading compressed images (e.g., .raw.xz).

When uploading a compressed image today the user interface shows the following note.

This image might not be bootable

  • Bootable markers not found at any block size.
    Expected either “EFI PART” marker at offsets 512 / 2048 / 4096 or “CD001” at offset 0x8001 (for a bootable CD).

Learn more about preparing images for import

This note does not block the user from uploading the compressed image. If an operator proceeds with the upload the modal will show an error once the upload has finished.

Image

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked “Preparing Images for Import” documentation and the image-upload UI/modal behavior described in the issue; trace the upload entry point and its post-upload error path. Done means supported compressed images complete the upload successfully, with coverage for the compressed-image path.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.