Skip to content

[1/3] Decouple support bundle inner layer from Nexus management#10374

Draft
smklein wants to merge 1 commit intomainfrom
decouple-support-bundle-mechanism
Draft

[1/3] Decouple support bundle inner layer from Nexus management#10374
smklein wants to merge 1 commit intomainfrom
decouple-support-bundle-mechanism

Conversation

@smklein
Copy link
Copy Markdown
Collaborator

@smklein smklein commented May 5, 2026

Replaces BundleCollection.bundle: SupportBundle with a slim BundleInfo { id, reason_for_creation }. Moves the sled-storage chunked transfer (store_bundle_on_sled), zip helpers (bundle_to_zipfile, recursively_add_directory_to_zipfile, sha2_hash), the CHUNK_SIZE and TEMPDIR constants, and the DB-polling cancellation (check_for_cancellation) out of the inner support_bundle/ module and into support_bundle_collector.rs.

After this change the inner layer is a pure mechanism: it never reads the support_bundle DB row, never talks to a sled-agent's bundle storage endpoints, and treats CRDB only as a source of facts about sleds, ereports, and blueprints. The outer collector remains the manager of the bundle lifecycle.

This is the first step toward a future shared crate that omdb can use to collect bundles when Nexus is down.

Replaces `BundleCollection.bundle: SupportBundle` with a slim
`BundleInfo { id, reason_for_creation }`. Moves the sled-storage
chunked transfer (`store_bundle_on_sled`), zip helpers
(`bundle_to_zipfile`, `recursively_add_directory_to_zipfile`,
`sha2_hash`), the `CHUNK_SIZE` and `TEMPDIR` constants, and the
DB-polling cancellation (`check_for_cancellation`) out of the inner
`support_bundle/` module and into `support_bundle_collector.rs`.

After this change the inner layer is a pure mechanism: it never reads
the `support_bundle` DB row, never talks to a sled-agent's bundle
storage endpoints, and treats CRDB only as a source of facts about
sleds, ereports, and blueprints. The outer collector remains the
manager of the bundle lifecycle.

This is the first step toward a future shared crate that omdb can use
to collect bundles when Nexus is down.
@smklein smklein force-pushed the decouple-support-bundle-mechanism branch from d293556 to 1afa67a Compare May 5, 2026 20:47
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

Successfully merging this pull request may close these issues.

1 participant