Instead of tracking many directories, we'll use only one
overlay directory to hold any scripts or change we want to
see applied over the base image.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
overlayfs changed mount options between different kernel versions.
In some cases, an Ubuntu release may have a different kernel than
what was included during the release, so instead use the version
included in the module itself to determine what parameters to pass
when mounting.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
- Fix up issues with efi mode grub serial configuration
- Modify blockdev model to order storage configuration output
- Handle when we're running in uefi mode
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Use a flag to set efi mode or not. Switch to IDE controller for
disks as UEFI bios doesn't support virtio block devices.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Update grub2 configuration for UEFI booting with fallback to bios mode.
Include new detection scheme so we don't list existing partitions of the
installer.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
We use cloud-init to create the initial user on the target system.
Ensure the password login works, that it has a shell (/bin/bash)
and sudo privs via group admin.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
With updated kernels, overlayroot programs will fail with
a disconnected_path error. Resolve our use of dhclient by
adding the allow_disconnected flag to the profile.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
- Pass in write_fd into async commands so output calls refresh
- Hack the threadpool to a single task so we trivially block on the long
install and don't invoke our post install until the other is complete
- lots of debugging for command outputs.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Move config writeout to a non-coroutine method.
Add realname collection (needed for userinfo)
Add debugging to help find issue with async commands
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Break out curtin configuration data into multiple configuration files
This sets up our initial install (network +storage) and our secondary
run (postinstall user config).
- encrypt the users password and never log the original value
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Conflicts:
subiquity/controllers/filesystem.py
Update network model to generate a network configuration for each
active network device. Note, some of the examples won't quite work
since we now want updated probert data which includes new information
about the source of any discovered ip.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
We use cloud-init to create the initial user on the target system.
Ensure the password login works, that it has a shell (/bin/bash)
and sudo privs via group admin.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
With updated kernels, overlayroot programs will fail with
a disconnected_path error. Resolve our use of dhclient by
adding the allow_disconnected flag to the profile.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
We can't use curses_display with an external event loop (tornado). The good
news is that we don't have to. Instead we switch to using agetty to bypass
login, specify the installer and options to execture. This also handles
respawning the installer and works both on serial and without.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
- Pass in write_fd into async commands so output calls refresh
- Hack the threadpool to a single task so we trivially block on the long
install and don't invoke our post install until the other is complete
- lots of debugging for command outputs.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
This contains views/controllers/models for setting RAID,
assigning Ceph storage, and iSCSI.
They are all in their initial implementation stage and
does require more work on the backend to make these
items usable.
Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
Move config writeout to a non-coroutine method.
Add realname collection (needed for userinfo)
Add debugging to help find issue with async commands
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Break out curtin configuration data into multiple configuration files
This sets up our initial install (network +storage) and our secondary
run (postinstall user config).
- encrypt the users password and never log the original value
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Update network model to generate a network configuration for each
active network device. Note, some of the examples won't quite work
since we now want updated probert data which includes new information
about the source of any discovered ip.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
- Adjust the size of the column with iface name, cap the max size
- Find and remove any set of 'Unknown' displays of info
- Replace the 'Checking' status with the current state of the connection
For now, it will always be definitive since we check for connections
upon boot.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Probert now collects more information on ips, bonds and bridges
Use this information to display Network view closer to spec.
Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
Adds ability to view disk information via hdparm
if run as root, otherwise, will print error to
the ui (ie. permission denied.)
As a result updated the run_command routine
to be a little more robust.
Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>