module

Beryl::CLI::FollowInstall

Sous-commande beryl follow-install <host> : tail en direct du log bsdinstall dans la VM mfsBSD pendant un beryl bootstrap en cours.

Pourquoi cette commande existe : le bootstrap ouvre une VM QEMU sur le rescue Linux, qui elle-même exécute bsdinstall. Pour suivre la progression, il faut ssh jusqu'au rescue, puis depuis le rescue ssh vers la VM (password mfsroot — c'est un secret public du mfsBSD SE), puis tail -f /tmp/bsdinstall.log.

En copier-coller manuel, la commande dépendait implicitement du ~/.ssh/config de l'utilisateur pour résoudre la clé SSH vers le rescue. Depuis l'isolation SSH du 0.1.8 (shard ssh), beryl n'utilise plus ~/.ssh/config et le copie-coller ne serait donc plus portable. Cette sous-commande porte toute la résolution elle-même : clé via SSH::KeyStore + convention Aloli, user depuis le merge, password mfsbsd en dur.

Constants

EXIT_OK = 0
EXIT_SSH_FAILED = 2
EXIT_UNEXPECTED = 3
EXIT_USAGE = 1

Class methods

build_vm_command

Commande shell exécutée sur le rescue Linux. Elle lance sshpass pour se connecter dans la VM QEMU (127.0.0.1:2223), attend que le log bsdinstall existe, puis le tail en filtrant les lignes DEBUG: très verbeuses de bsdinstall (dialog, variables, périphériques, etc.).

Exposée publiquement pour permettre aux specs de vérifier la construction sans lancer de ssh réel.

Source
run(config_root : String, args : Array(String)) : Int32
Source