Hacky method, but in welcome controller, use subprocess to
call a script which invokes curtin at a known location with
a specific set of parameters.
Modify the installer configuration and start-up scripts to
ensure Subiquity runs on tty1 and keeps the service running.
Upon hitting 'Confirm' Subiquity will exec curtin_wrap.sh
which calls the *real* curtin. Cloud-init user-data has been
modified to unpack the curtin archive embedded.
When complete, the target.img file is bootable.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
- Tar up the subiquity code and inject that into the user-data
- Add support for encoding when adding binary files
- Until we have a way to detect serial presence, run installer on tty1
- Add power_state hook to shut machine off after subiquity exits
- git status ignore image file in installer dir
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>