feat: first boot screens for the role of this node and a Keel Cloud key #15
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/confconsole!15
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/first-boot-role"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The first boot flow handbook decision 0020 requires: the role is chosen at installation, by hand, on each node, and a Keel Cloud API key is an option, never a precondition. The maintainer tested Template B2 and installation never asked Standalone or Cloud.
keelfirstboot.py role|cloud, the entry point the inithooks hooks75keel-roleand80keel-cloudrun (Keel-Linux/inithooks companion PR).wgscreen) and the Database mode screen of the role, loaded as confconsole loads it: nothing duplicated. Every step that needs the other node says exactly what to do there, and Later names the confconsole entry that finishes it. The role reaches the description only through the Database mode screen, so a node left half way is still standalone. A fresh Standalone recordsdatabase.server.role: standalone(validated, nothing applied).keel network confirmfrom the console, as it already did. It is sound at first boot: the window exists so a change cannot lock the operator out, the screen never moves the uplink (--skip-uplink), so the console is the one path it cannot break. What it does not test (the overlay, SSH over the uplink) the screens say to test from the other node. In LXC the console is/dev/lxc/tty1, accepted from keel 0.11.2 (Keel-Linux/keel#51); Recommendskeel (>= 0.11.2).hub.api_key: skip); a key goes to/etc/keel/secrets/cloud_api_key(root, 0600) and the description references it ashub.api_key: {file: ...}. The screen says: "The key takes effect once the Keel Cloud service exists; nothing on this appliance contacts any service now." Also an Instance menu entry, Keel Cloud.database.server.roleorhub.api_key, orHUB_APIKEYis preseeded (SKIP, or a key, stored without a screen), nor without a terminal or keel. keel-init asks again. The screens draw on the terminal of standard input when standard output is not one (the dbpass.py fix).Test plan
tests/test_first_boot.py(63 tests), usage, database mode and menu tests updated: 636 passed with a keel 0.11.2 at hand (631 and 5 skipped without), 100 percent lines and branches over the measured package, which gainskeelfirstbootconfirmed from the console /dev/lxc/tty1), Later on the database step, key saved 0600; finished from confconsole (Overlay network > Add peer, Database mode > Primary, handout)Slave_IO_Running: Yes), empty key recorded as skip,keel diffno drift