** Changed in: cloud-init (Ubuntu)
       Status: New => Triaged

** Changed in: cloud-init (Ubuntu)
   Importance: Undecided => Medium

** Description changed:

  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 (distro-agnostic) method
  everywhere. This code path already exists for non-Ubuntu distros and (if
  it works) would be much preferable to use everywhere.
  
  This would reduce maintenance burden:
  
- 1. it will eliminate duplicate code paths: which may diverge over time
+ 1. it will eliminate duplicate code paths[5]: 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
+ 3. it will clarify project boundaries and ownership of functionality: this 
functionality cannot currently be verified by the cloud-init team[6] - 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
- [6] 
https://github.com/canonical/cloud-init/issues/5685#issuecomment-2342036576
+ [5] 
https://github.com/canonical/cloud-init/issues/5685#issuecomment-2342036576
+ [6] https://github.com/canonical/cloud-init/issues/5688

-- 
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/maas/+bug/2080892/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to