Repository navigation
Support custom agent download endpoints and auto-track latest release - #70
Conversation
|
Copilot Resolve the conflicts and all check the getting started script in hack dir to make sure it is updated too. |
|
Does this handle the |
Copilot check how the |
Checked the register path. Summary:
Because that's the same shared install script, the default behavior improves for free: register no longer pins What register does not get from this PR is user-facing overrides. The controller's SSH exec builds a fixed command and doesn't forward
That's a non-trivial schema/controller change and feels like it belongs in the same follow-up as the agent's own rootfs-download overrides (noted under "Out of scope" in the PR description). Happy to do it in this PR if you'd prefer — just let me know. |
|
Copilot Create a new issue to track the recommendations for a follow-up PR for the AgentSpec and other issues identified that are out of scope. Make sure to include all relevant discovered information so it can be implemented correctly in a follow-up PR. It should account for the |
My toolset here doesn't include an issue-creation API, so I can't file the issue directly. Full draft below - copy/paste into a new issue as-is. Title: Make all agent/node download endpoints configurable (agent binary via Body: Follow-up to #. That PR made the Two gaps remain that this issue tracks: 1.
|
|
Copilot validate that no changes to the AKS SSH Quickstart workflow are needed due to your changes |
Validated - no changes needed to The workflow builds the agent locally,
|
Agent-Logs-Url: https://github.com/Azure/unbounded-kube/sessions/347ab270-22c2-4a0b-9800-e14773706ac7 Co-authored-by: jwilder <219935+jwilder@users.noreply.github.com>
|
Copilot resolve the merge conflicts in this PR |
Merge conflicts resolved in e5e7cef. Conflicts were in |
e5e7cef to
555c8d8
Compare
The node install script hard-coded the agent release tag (
v0.0.10) and GitHub as the only download host, making air-gapped deployments and picking up new releases painful.Install script (
internal/provision/assets/unbounded-agent-install.sh)releases/latest/download/redirect, so new releases are picked up automatically without touching the script or docs.AGENT_BASE_URLenv var (defaulthttps://github.com/Azure/unbounded/releases) for self-hosted / mirrored release layouts.AGENT_VERSIONstill pins a specific tag;AGENT_URLremains the full-URL escape hatch.kubectl unbounded machine manual-bootstrap--agent-version,--agent-base-url,--agent-urlflags. Values are POSIX-single-quoted and exported immediately before the embedded install script in both thescriptandcloud-initvariants, so they propagate into the install-script subshell /runcmd.--agent-urlworks with both variants.Docs & quickstart
docs/content/guides/agent.mdcovering the flags/env vars and air-gapped usage.hack/scripts/aks-quickstart.sh"Add a Remote Node" help output to mention the three new override flags. The hack quickstart scripts (aks-quickstart.sh,proxmox-ssh-quickstart-vms.sh) don't hardcode agent URLs/versions — they printkubectl unbounded machine manual-bootstrapfor the user to run and now inherit the "latest by default" behavior automatically. The.github/workflows/aks-ssh-quickstart.yamlworkflow already uses--agent-url file://…and continues to work unchanged.Merge notes
Merged
origin/main(Quickstart Remote SSH Workflow, #55) and reconciled its overlapping--agent-urlimplementation: kept the unifiedInstallEnv []stringtemplate field that exports all three overrides, and dropped main's narrowerAgentURLLiteralpath plus the--agent-url+cloud-initrejection (cloud-init correctly exports the override inruncmd). Main'snewMachineManualBootstrapCommandfactory and itsTestManualBootstrapHandler_Execute_WithAgentURLtest are preserved.A second merge from
origin/mainpulled in theunbounded-kube→unboundedrepo rename; conflicts ininternal/provision/assets/unbounded-agent-install.shandinternal/provision/script_test.gowere resolved by keeping this PR's override logic / "latest by default" behavior and updating the defaultAGENT_BASE_URL(and the--agent-base-urlflag help text) tohttps://github.com/Azure/unbounded/releases.Out of scope
The agent's own rootfs downloads (kubelet / containerd / runc / CNI / crictl) still use hard-coded
github.comanddl.k8s.ioURLs incmd/agent/internal/phases/rootfs/{cri,cni,kube}.go. Making those configurable requires extending the goal-state /AgentConfigschema and is best handled as a follow-up.