Skip to content

Ignition config generation #11

Description

@castrojo

Description

Core config generation: assemble Butane YAML from wizard state and compile to Ignition JSON.

Acceptance Criteria

  • Use github.com/coreos/butane/config as a Go library
  • Use Flatcar Butane variant (variant: flatcar, appropriate spec version)
  • Generate storage section (disk wipe, filesystem)
  • Generate networkd units (DHCP or static config)
  • Generate passwd section (user, SSH keys, optional password hash)
  • Generate systemd units for sysext downloads and systemd-sysext enablement
  • Support mutually exclusive modes: guided local generation OR external Ignition URL passthrough
  • Validate generated config before passing to install step
  • Unit tests with golden-file comparison in testdata/

Architecture

internal/ignition owns this. It receives a struct from internal/wizard and returns compiled Ignition JSON bytes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    1-triageNew work awaiting human triage.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions