Since the LVM support was added to all distros, our disk related code is adaptive, i.e. we will set the correct BLS and grub2 prefix if there a `boot` partiton is present in the layout after all customizations happen, which includes LVMification. One thing that was not yet fully working was layouts that do not yet have a `/boot` partition but allow LVMification. In that case `NewPartitionTable` and if `/boot` was the first (or only) customization, would LVMify the partition which in turn would create the `/boot` partition; but after `newPT.ensureLVM()` the call to `newPT.createFilesystem` with `/boot` would try to create another `/boot` mountpoint. In order to deal with this situation correctly we are now using a two phase approach: 1) enlarge existing mountpoints and collect new ones. 2) if there are new ones and LMVify was allowed, switch to LVM layout. Do a second pass and now create or enlarge existing partitions, handling `/boot` in the process. |
||
|---|---|---|
| .. | ||
| blueprints.go | ||
| blueprints_test.go | ||
| client.go | ||
| client_test.go | ||
| compose.go | ||
| compose_test.go | ||
| integration_test.go | ||
| modules.go | ||
| modules_test.go | ||
| projects.go | ||
| projects_test.go | ||
| source.go | ||
| source_test.go | ||
| unit_test.go | ||
| utils.go | ||
| weldr.go | ||