Commissioning scripts with custom images

Hey there, @elperro,

This one’s been sitting here a while with no resolution, so I figure some spitballing by a technical author couldn’t make it much worse. Here’s what comes to my (very strange) mind:

  • For Ubuntu, the curtin installer that MAAS uses by default expects a certain partition layout that may conflict with custom storage configs. Using a preseed file instead with curtin may help define the partitions.
  • Try creating a custom curtin storage config file like 40-custom-storage.yaml that specifies the desired layout, and pass that to MAAS on import or with curtin preseeds.
  • Use a late command in curtin preseeds to resize partitions after install, rather than trying to predefine sizes which may get overwritten.
  • Consider switching to using cloud-init for provisioning instead, where you have more control over disk configuration in user-data scripts.
  • The ubuntu-lvm Packer template is designed for LVM by default, so adapting that to partitioned disks rather than LVM volumes could be tricky.
  • For testing, try deploying the image first without any custom storage to validate the base install, then work on storage configuration separately.
  • Check the curtin and cloud-init logs on the deployed nodes for any errors applying custom storage configs.

Obviously, the key is prolly getting curtin and cloud-init working together with your desired layouts.