This bug was fixed in the package preseed - 1.71ubuntu7

---------------
preseed (1.71ubuntu7) bionic; urgency=medium

  * Fix for netcfg/hostname, if set, to take precedence. (LP: #1745531)
    - Modify debian/network-preseed.postinst to make it more robust

 -- Hua Zhang <joshua.zh...@canonical.com>  Thu, 25 Jan 2018 15:12:38
+0800

** Changed in: preseed (Ubuntu Bionic)
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1745531

Title:
  [SRU] Reinforce hostname preseed regex

Status in debian-installer package in Ubuntu:
  In Progress
Status in preseed package in Ubuntu:
  Fix Released
Status in debian-installer source package in Trusty:
  In Progress
Status in preseed source package in Trusty:
  In Progress
Status in debian-installer source package in Xenial:
  In Progress
Status in preseed source package in Xenial:
  In Progress
Status in debian-installer source package in Artful:
  In Progress
Status in preseed source package in Artful:
  In Progress
Status in debian-installer source package in Bionic:
  In Progress
Status in preseed source package in Bionic:
  Fix Released

Bug description:
  [Impact]

  This is the same issue reported in 
https://bugs.launchpad.net/ubuntu/+source/preseed/+bug/1452202
  However that is marked as 'Fix Released' and the issue is still occurring so 
it seems best to just open a new bug according to Eric's comment.

  The present hostname preseed regex looks like:

  if ! echo "$RET" | grep -q 'ubuntu'; then
     ...
     /bin/sed -i "s/$CURRENT_HOSTNAME/$NETCFG_HOSTNAME/" /etc/hosts
     ...
  fi

  There are still multiple problems with them according to Peter's
  comment
  (https://bugs.launchpad.net/ubuntu/+source/preseed/+bug/1452202/comments/64)
  and Mathieu's comment
  (https://bugs.launchpad.net/ubuntu/+source/preseed/+bug/1452202/comments/93).

  - The default hostname is 'ubuntu', and is the value you will get if
  nothing is preseeded -- we *do* need to skip it in this case, although
  the grep may need to be more precise. A name like 'ubuntuxenial'
  should match this grep.

  - The sed needs to be fixed to more appropriately catch for the exact
  string, rather than any substring -- ie. it should not match
  'ipv6-allnodes' if the name received from DHCP was 'node'. It should
  only match and replace for 'node'.

  So the fix will try to:

  1) Keep the if statement and add the -w option to grep to be more robust
  2) Modify the sed cmd with word boundaries (\b) to be more robust as well.

  [Test Case]

  Install Ubuntu using a preseed[1] file[2] and add the following line in the 
preseed recipe :
  d-i netcfg/hostname string <HOSTNAME>

  Change the HOSTNAME to see if the hostname in /etc/hosts can be
  updated correctly.

  [1] - url=http://<WEB_SERVER>/<PRESEED_FILE>
  [2] - https://help.ubuntu.com/lts/installation-guide/example-preseed.txt

  [Regression Potential]

   * none expected, the actual changes are as follows:

  -        if ! echo "$RET" | grep -q 'ubuntu'; then
  +        if ! echo "$RET" | grep -qw 'ubuntu'; then
  ...
  -             /bin/sed -i "s/$CURRENT_HOSTNAME/$NETCFG_HOSTNAME/" /etc/hosts
  +             /bin/sed -i "s/\b${CURRENT_HOSTNAME}\b/${NETCFG_HOSTNAME}/g" 
/etc/hosts

  
  [Original Description]

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/debian-installer/+bug/1745531/+subscriptions

_______________________________________________
Mailing list: https://launchpad.net/~group.of.nepali.translators
Post to     : group.of.nepali.translators@lists.launchpad.net
Unsubscribe : https://launchpad.net/~group.of.nepali.translators
More help   : https://help.launchpad.net/ListHelp

Reply via email to