Public bug reported: MAAS uses curtin to create a cloud-init configuration using curtin's debconf_selections. Cloud-init's postinst script generates the preseed configuration based on debconf settings.
This design is undesirable for several reasons: 1. this design unnecessarily requires a distro-specific dependency: debconf 2. this design unnecessarily requires that a duplicate implementation exist in MAAS for Ubuntu core[1][2] and other distros 3. this design obscures project boundaries by hiding MAAS / curtin functionality in cloud-init's packaging shell scripts[3][4] It would be preferable to use the same method everywhere. This would reduce maintenance burden: 1. it will eliminate duplicate code paths: which may diverge over time 2. it will eliminate hacky shell postinst logic : this would be better implemented in a more maintainable repo/language 3. it will clarify project boundaries and ownership of functionality: this functionality cannot currently be verified by the cloud-init team[5] - a cloud-init devel release is required, followed by MAAS CI runs [1] https://github.com/canonical/maas/blob/5f6f9d61ae3638c8fa89d0c73e0368a55145667c/src/maasserver/preseed.py#L154 [2] https://github.com/canonical/curtin/blob/a5e8e4ad5c600af9f95e2cecf644d824ca0489e2/curtin/commands/curthooks.py#L1858 [3] https://github.com/canonical/cloud-init/blob/ubuntu/devel/debian/cloud-init.postinst#L54 [4] https://github.com/canonical/cloud-init/issues/5685 [5] https://github.com/canonical/cloud-init/issues/5688 ** Affects: cloud-init (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2080892 Title: MAAS requires debconf for cloud-init preseed on Ubuntu To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/2080892/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
