Skip to content
This repository was archived by the owner on Apr 15, 2026. It is now read-only.

refactor(vyos): replace vyos-build with manual Stream ISO installation - #53

Merged
jmgilman merged 2 commits into
masterfrom
refactor/vyos-manual-bootstrap
Dec 29, 2025
Merged

refactor(vyos): replace vyos-build with manual Stream ISO installation#53
jmgilman merged 2 commits into
masterfrom
refactor/vyos-manual-bootstrap

Conversation

@jmgilman

Copy link
Copy Markdown
Collaborator

Summary

  • Remove the vyos-build custom image pipeline in favor of manually installing VyOS from the official Stream ISO during genesis bootstrap
  • Eliminates the chicken-and-egg dependency where Tinkerbell needed VyOS networking but VyOS was supposed to be provisioned via Tinkerbell
  • Simplifies the bootstrap process by accepting that manual VyOS installation is required before platform cluster bootstrap

Changes

Removed

  • bootstrap/genesis/scripts/build-vyos-image.sh - Unused vyos-build script
  • infrastructure/network/vyos/templates/gateway.toml - vyos-build flavor template
  • images/packer-ssh.sops.yaml - SSH keypair for vyos-build image injection

Updated Documentation

  • docs/architecture/appendices/B_bootstrap_procedure.md - Rewrote Step 2 with full manual VyOS installation procedure; removed Step 7 (VyOS via Tinkerbell); now 14 steps total
  • docs/architecture/05_building_blocks/02_tinkerbell_provisioning.md - VP6630 no longer a Tinkerbell target
  • docs/architecture/06_runtime_view.md - Updated genesis sequence diagram
  • docs/architecture/07_deployment_view.md - Changed VP6630 deployment method
  • docs/architecture/09_design_decisions/003_vyos_gitops.md - Updated integration testing to use official VyOS container
  • docs/architecture/09_design_decisions/007_image_pipeline_s3_intermediary.md - Removed vyos-build from diagram
  • docs/architecture/appendices/A_repository_structure.md - Removed vyos-build references
  • docs/design/image-pipeline.md - Removed vyos-build.yml workflow section, SSH keypair section, and related references

Updated Code

  • infrastructure/network/vyos/tests/render-config-boot.sh - Uses gateway.conf directly instead of gateway.toml
  • infrastructure/network/vyos/Dockerfile.containerlab - Updated comments
  • .mergify.yml - Removed TODO comment

Test plan

  • Review bootstrap procedure documentation for completeness
  • Verify no remaining vyos-build references in codebase
  • Confirm VyOS integration tests still work with official container

🤖 Generated with Claude Code

jmgilman and others added 2 commits December 29, 2025 09:46
Remove the vyos-build custom image pipeline in favor of manually
installing VyOS from the official Stream ISO during genesis bootstrap.
This simplifies the bootstrap process and eliminates the chicken-and-egg
dependency where Tinkerbell needed VyOS networking but VyOS was supposed
to be provisioned via Tinkerbell.

Changes:
- Remove build-vyos-image.sh script and gateway.toml flavor template
- Remove packer-ssh.sops.yaml (was for vyos-build SSH injection)
- Update bootstrap procedure Step 2 with manual VyOS install instructions
- Remove Step 7 (VyOS via Tinkerbell) - now 14 steps total
- Update architecture docs to reflect manual VyOS bootstrap
- Update image-pipeline.md to remove vyos-build workflow section
- Update integration testing to use official vyos/vyos:current container

The VP6630 gateway is now bootstrapped manually before Tinkerbell is
available. Post-install configuration management remains via Ansible.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The sed -i '' syntax is macOS-specific. On Linux (GNU sed), this causes
the sed expression to be interpreted as a filename. Use a temp file
approach instead for cross-platform compatibility.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@jmgilman
jmgilman merged commit 3fd7d87 into master Dec 29, 2025
1 check passed
@jmgilman
jmgilman deleted the refactor/vyos-manual-bootstrap branch December 29, 2025 17:59
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant