Skip to content

feat(talos): add embedded ISO support for UM760 bootstrap#45

Merged
jmgilman merged 1 commit intomasterfrom
joshuagilman/hom-27-add-talos-iso-with-embedded-um760-configuration
Dec 29, 2025
Merged

feat(talos): add embedded ISO support for UM760 bootstrap#45
jmgilman merged 1 commit intomasterfrom
joshuagilman/hom-27-add-talos-iso-with-embedded-um760-configuration

Conversation

@jmgilman
Copy link
Collaborator

Summary

Add transform hook and image configuration to create Talos ISOs with embedded machine configuration, enabling direct bootstrap without a seed cluster.

Changes

  • Add talos-embed-config.sh transform hook that generates machine config via talhelper and embeds it into ISO using Talos imager
  • Add talos-base and talos-um760 entries to images/images.yaml
  • Update bootstrap documentation to reflect simplified approach

How It Works

The labctl images sync command now:

  1. Downloads base Talos ISO from Image Factory
  2. Runs transform hook which:
    • Generates machine config using talhelper genconfig from talconfig.yaml
    • Creates new ISO with embedded config using Talos imager
  3. Uploads embedded ISO to S3

When the UM760 boots from this ISO, Talos reads the embedded configuration immediately without needing a network-based config fetch.

Benefits

The embedded ISO approach:

  • Eliminates seed cluster - No NAS VM required for initial bootstrap
  • Simplifies bootstrap - Reduced from 20 steps to 15 steps
  • Reduces time - Estimated ~3 hours vs ~4.5 hours
  • Improves reliability - Configuration baked into ISO, not fetched over network

Test plan

  • CI passes for manifest validation
  • Transform hook can be tested locally with labctl images sync --name talos-um760
  • Embedded ISO boots correctly on actual hardware (manual test)

Closes HOM-27

🤖 Generated with Claude Code

@linear
Copy link

linear bot commented Dec 29, 2025

@jmgilman jmgilman force-pushed the joshuagilman/hom-27-add-talos-iso-with-embedded-um760-configuration branch 4 times, most recently from b7b76e1 to 514096d Compare December 29, 2025 05:07
Add support for creating Talos ISOs with embedded machine configuration
for direct bare-metal bootstrap. This eliminates the need for a seed
cluster to serve machine configs over HTTP.

Changes:
- Add Talos base and UM760 ISOs to images manifest
- Create talos-embed-config.sh transform hook for ISO embedding
- Add --skip-transform-hooks flag to labctl for CI environments
- Add skip message when transform hooks are skipped
- Update bootstrap documentation to reflect new approach

The transform hook uses talhelper to generate machine configs and the
Talos imager to embed them into the ISO. This enables direct boot to a
configured Talos node.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@jmgilman jmgilman force-pushed the joshuagilman/hom-27-add-talos-iso-with-embedded-um760-configuration branch from bb01993 to 7698116 Compare December 29, 2025 05:20
@jmgilman jmgilman merged commit 2a5d30d into master Dec 29, 2025
2 checks passed
@jmgilman jmgilman deleted the joshuagilman/hom-27-add-talos-iso-with-embedded-um760-configuration branch December 29, 2025 05:26
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