Commit Graph

2440 Commits

Author SHA1 Message Date
Michael Hudson-Doyle 8ea0433322 allow /boot to be on any kind of device 2019-05-15 14:52:34 +12:00
Michael Hudson-Doyle bea41113a3
Merge pull request #486 from xnox/drop-maas
Drop maas
2019-05-15 14:46:17 +12:00
Michael Hudson-Doyle 255abacea5 Canonicalize raidlevel on creation too.
This subsumes the recent change I made to use the raid$N form
internally.
2019-05-15 11:46:56 +12:00
Michael Hudson-Doyle 2e29cb178a Canonicalize size and ptable values on action creation.
curtin allows parition/lv sizes to be specified as strings or integers.
To avoid depending on whichever extract_storage_config gives us back,
canonicalize them to integers when creating an action. Similarly, curtin
accepts as synonyms "dos" and "msdos" for ptable; here we canonicalize
them both to "msdos".
2019-05-15 11:46:56 +12:00
Michael Hudson-Doyle 4c187a0afb Remove defaults from some fields that should not have them
This required marking some "behind the scenes" attributes as init=False
(which makes some logical sense) and reordering some other attributes
(including "id" and "type", which are now added generically) to move
optional ones after mandatory ones.  Neither of these would be necessary
with a newer version of attrs (where we could use kw_only=True on the
class) but well, not too bad.

Leave Disk mostly alone for now because how they get created is going to
change completely with reusing partitions.
2019-05-15 11:46:54 +12:00
Michael Hudson-Doyle 2d18f8e4ac add a namespace for our wrappers around attr.ib() 2019-05-15 11:45:54 +12:00
Michael Hudson-Doyle 241e14c296
Merge pull request #483 from mwhudson/reformat-swap
fix some bugs in editing and displaying swap partitions/devices
2019-05-15 11:44:55 +12:00
Michael Hudson-Doyle 5abaa7fc8d
Merge pull request #478 from mwhudson/install_devices-not-grub_device
reorganize handling of bootloader partitions
2019-05-15 11:43:58 +12:00
Dimitri John Ledkov 604788c24d lint 2019-05-14 16:40:02 +02:00
Dimitri John Ledkov e6ef8987be ooops still have a source.... 2019-05-14 16:14:50 +02:00
Dimitri John Ledkov 96be2a8f5d Unbreak snap screen, and simplify it 2019-05-14 16:03:55 +02:00
Dimitri John Ledkov 25071d9cf0 Drop installpath 2019-05-14 16:03:33 +02:00
Dimitri John Ledkov d67cc5c721 update potfiles 2019-05-14 15:17:42 +02:00
Dimitri John Ledkov e46de5def8 Drop Installpath 2019-05-14 15:09:55 +02:00
Dimitri John Ledkov 6df3f5c2af Drop maas 2019-05-14 11:04:28 +02:00
Michael Hudson-Doyle 96aafc668d fix some bugs in editing and displaying swap partitions/devices
https://bugs.launchpad.net/subiquity/+bug/1828661
2019-05-13 11:15:43 +12:00
Michael Hudson-Doyle 05f9b10974 Replace --uefi with --bootloader to select any bootloader style for dry-run
Relatedly, make 'MAKE_BOOT in disk.supported_actions' depend on
bootloader style not architecture.
2019-05-13 09:27:12 +12:00
Michael Hudson-Doyle 9862fa9049 rewrite needs_bootloader_partition 2019-05-13 09:24:14 +12:00
Michael Hudson-Doyle 1b2e819ce1 add and render FilesystemModel.grub_install_device 2019-05-13 09:24:14 +12:00
Michael Hudson-Doyle c341047b18 give filesystem actions a reference to the model 2019-05-13 09:24:14 +12:00
Michael Hudson-Doyle be0512011e start to consolidate knowledge of bootloader type for a system 2019-05-13 09:23:43 +12:00
Michael Hudson-Doyle 1d2d529550 a little refactoring 2019-05-13 09:07:33 +12:00
Dimitri John Ledkov f9b9414de1 Merge remote-tracking branch 'origin/pull/482/head' 2019-05-11 09:26:26 +01:00
Dimitri John Ledkov 6da492489b Merge remote-tracking branch 'xnox/refactor-config-creation' 2019-05-11 07:29:44 +01:00
Dimitri John Ledkov 52b8d30e00 Merge remote-tracking branch 'mwhudson/refactor-config-creation' 2019-05-11 07:28:50 +01:00
Dimitri John Ledkov 349eecbd49 unbreak snaplist ui 2019-05-10 23:04:19 +01:00
Dimitri John Ledkov 1b3a23f93d
Merge pull request #474 from mwhudson/fs-action-labels
Introduce the idea of filesystem action annotations
2019-05-10 13:47:50 +01:00
Michael Hudson-Doyle 7d5c8d4b70 delete dm_crypt actions when deleting an encrypted volgroup
First FilesystemController tests!
2019-05-10 14:27:24 +12:00
Michael Hudson-Doyle b61a9887a9 Add tests for LVM_VolGroup.annotations 2019-05-10 14:27:24 +12:00
Michael Hudson-Doyle 6041f138ed Introduce the idea of filesystem action annotations
This generalizes the way we display if a VG is encrypted and the way we
display the bootloader partitions, and will be how new/existing is
displayed when reusing existing partitions happens.
2019-05-10 14:27:24 +12:00
Michael Hudson-Doyle 5ba1357207
Merge pull request #480 from mwhudson/lvm-view-tests
add simple lvm view tests
2019-05-10 13:02:01 +12:00
Michael Hudson-Doyle 900bd42236 Add tests for LVM_VolGroup.annotations 2019-05-10 12:33:45 +12:00
Michael Hudson-Doyle c7722bd6e9 add simple lvm view tests
I wrote this for another branch then realized it was not of any use for
testing that branch but still worth having
2019-05-10 12:30:27 +12:00
Michael Hudson-Doyle a03f29102e Introduce the idea of filesystem action annotations
This generalizes the way we display if a VG is encrypted and the way we
display the bootloader partitions, and will be how new/existing is
displayed when reusing existing partitions happens.
2019-05-10 12:12:15 +12:00
Michael Hudson-Doyle ab4ef05a62
Merge pull request #476 from mwhudson/fstype-defensiveness
rework how we handle filesystem types a bit
2019-05-10 12:09:13 +12:00
Michael Hudson-Doyle 57a88ab018 add a bunch of tests for rendering the curtin config
also fix the bug this revealed!
2019-05-10 10:27:40 +12:00
Michael Hudson-Doyle 7848d18967 close /etc/machine-id properly when reading it 2019-05-10 10:25:57 +12:00
Michael Hudson-Doyle bdf33a2adf make SubiquityModel objects easier to construct
So I can write a unittest more easily.

This involves shuffling around how locale changes are done but as my new
design document says the "controller also manages the relationship
between the outside world and the model and views" this does make things
more consistent.
2019-05-10 09:44:01 +12:00
Michael Hudson-Doyle 03bf8d4b0a Refactor how model configs are combined
Basically each model now produces a fragment of a complete curtin config
and they are combined using curtin's merge_config function rather than
SubiquityModel.render knowing the shape of the config produced by each
model.
2019-05-10 08:10:51 +12:00
Dimitri John Ledkov 427fef2e5f
Merge pull request #473 from mwhudson/create-dmcrypt-earlier
move special handling of DM_Crypt actions from model to controller
2019-05-09 17:15:40 +01:00
Dimitri John Ledkov 5f844fbfdb
Merge pull request #479 from xnox/real-target-run
Have the real /run in-target.
2019-05-09 16:29:10 +01:00
Dimitri John Ledkov 2dddbc9d1a And setup.py too. 2019-05-09 15:49:05 +01:00
Dimitri John Ledkov 553bfc262a Fixup subiquity run snapcraft. 2019-05-09 14:15:03 +01:00
Michael Hudson-Doyle 7f9ff2c70e add separate curthook script to bind mount /run 2019-05-09 10:01:49 +12:00
Michael Hudson-Doyle 7403e99b7b bind mount /cdrom at /target/cdrom rather than /target/run/cdrom 2019-05-09 09:58:51 +12:00
Dimitri John Ledkov e0b134f1d8 Have the real /run in-target. 2019-05-08 16:30:21 +01:00
Michael Hudson-Doyle c8b3f02e11
Merge pull request #475 from xnox/fix-netplan
netplan.Config().config should initialize to a dict
2019-05-06 09:26:49 +12:00
Michael Hudson-Doyle 51cf1afc91 Pass fileystem types around as strings rather than FS objects.
It's just simpler this way.
2019-05-03 15:32:28 +12:00
Michael Hudson-Doyle 8cfb9cd1b4 do not blow up on a format action that has an unknown fstype
we do not know what we might see on an exsiting system
2019-05-03 15:00:01 +12:00
Dimitri John Ledkov fee6fe6947 netplan.Config().config should initialize to a dict
Normally netplan.Config().config is a dict as produced by
yaml.safe_load(). However, on systems without any netplan configs that
is not true. The subiquity code that calls into this function expects
.config to be a dictionary. When it's not
subiquitycore/models/network.py produces traceback that "list does not
have get method" when trying to get 'network' key.
2019-05-02 15:22:23 +01:00