I've tested this now in a 16.10 VM, and I can't verify this SRU because
I can't confirm the buggy behavior.  Adjusting the journalctl command
for changed unit names in 16.10, I get:

# journalctl -o short-precise --unit resolvconf.service --unit 
network-online.target --unit systemd-networkd-wait-online.service --unit 
systemd-networkd.service --no-pager
-- Logs begin at Thu 2017-04-20 07:07:07 UTC, end at Thu 2017-04-20 07:08:09 
UTC. --
Apr 20 07:07:08.973024 ubuntu systemd[1]: Starting Network Service...
Apr 20 07:07:09.013394 ubuntu systemd-networkd[958]: Enumeration completed
Apr 20 07:07:09.013744 ubuntu systemd[1]: Started Network Service.
Apr 20 07:07:09.015259 ubuntu systemd[1]: Starting Wait for Network to be 
Configured...
Apr 20 07:07:09.023517 ubuntu systemd-networkd[958]: ens3: IPv6 enabled for 
interface: Success
Apr 20 07:07:09.026605 ubuntu systemd-networkd[958]: ens3: Gained carrier
Apr 20 07:07:09.030066 ubuntu systemd-networkd[958]: ens3: DHCPv4 address 
192.168.122.138/24 via 192.168.122.1
Apr 20 07:07:09.030329 ubuntu systemd-networkd[958]: ens3: Not connected to 
system bus, ignoring transient hostname.
Apr 20 07:07:10.100496 ubuntu systemd-networkd[958]: ens3: Gained IPv6LL
Apr 20 07:07:22.841001 ubuntu systemd-networkd[958]: ens3: Configured
Apr 20 07:07:22.843432 ubuntu systemd-networkd-wait-online[971]: ignoring: lo
Apr 20 07:07:22.849021 ubuntu systemd[1]: Started Wait for Network to be 
Configured.
Apr 20 07:07:22.850384 ubuntu systemd[1]: Reached target Network is Online.

Notably, I don't see any output here about resolvconf.

# systemctl status resolvconf.service --no-pager
● resolvconf.service - Nameserver information manager
   Loaded: loaded (/lib/systemd/system/resolvconf.service; enabled; vendor 
preset: enabled)
   Active: active (exited) since Thu 2017-04-20 07:14:42 UTC; 4min 25s ago
     Docs: man:resolvconf(8)
 Main PID: 659 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 4915)
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/resolvconf.service

Warning: Journal has been rotated since unit was started. Log output is
incomplete or unavailable.


I don't know why the journal is being rotated.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to resolvconf in Ubuntu.
https://bugs.launchpad.net/bugs/1649931

Title:
  systemd-networkd needs to ensure DNS is up before network-
  online.target

Status in resolvconf package in Ubuntu:
  Fix Released
Status in systemd package in Ubuntu:
  Fix Released
Status in resolvconf source package in Xenial:
  Fix Released
Status in systemd source package in Xenial:
  Fix Committed
Status in resolvconf source package in Yakkety:
  Fix Committed
Status in resolvconf package in Debian:
  Fix Committed

Bug description:
  Currently resolvconf and systemd-networkd don't ensure DNS has been
  configured before allowing network-online.target to be reached.

  This was discussed in https://launchpad.net/bugs/1636912 however it
  was not a regression since there aren't any users of networkd + DNS
  early in boot at this time, it was requested that we move this DNS
  issue to a separate bug.

  [SRU]
  Fix: switch resolvconf.service to run Before=network-pre.target and add 
Wants=network-pre.target.  Add a Before=network-online.target to 
systemd-networkd-resolvconf-update.service to ensure we update /etc/resolv.conf 
with DNS config prior to reaching network-online.target.

  Regression potential: Low. networkd is not widely being used outside
  of netplan/snappy in xenial.

  Test Case:
    lxc launch ubuntu-daily:xenial x1
    lxc exec x1 /bin/bash

    # make sure you're on systemd-229-4ubuntu17
    apt update && apt install -y systemd

    # enable networkd and netplan
    apt install -y nplan
  cat <<EOF > /etc/netplan/nplan.yaml
  network:
      version: 2
      ethernets:
          all-en:
              match:
                  name: "en*"
              dhcp4: true
          all-eth:
              match:
                  name: "eth*"
              dhcp4: true
  EOF
    sed -i.orig -e 's/^source/# source/' /etc/network/interfaces

    netplan generate

    # make sure cloud-init.service uses networkd
    sed -i.orig -e '/After=networking.service/a 
After=systemd-networkd-wait-online.service' 
/lib/systemd/system/cloud-init.service

    reboot

    # check that the order of execution with:
    journalctl -o short-precise --unit resolvconf.service --unit 
network-online.target --unit systemd-networkd-wait-online.service --unit 
systemd-networkd-resolvconf-update.service

    # the order should be:
      1. resolvconf:  systemd[1]: Started Nameserver information manager.
      2. systemd-networkd-wait-online.service:  systemd[1]: Starting Wait for 
Network to be Configured...
      3. systemd-networkd-resolvconf-update.service: systemd[1]: Started Update 
resolvconf for networkd DNS.
      4. network-online.target: systemd[1]: Reached target Network is Online.

  === BAD OUTPUT ===
  On a failing system, Reached target Network is Online occurs before (1, 2, or 
3) above, like this output:

  Dec 15 19:18:15.233443 x4 systemd[1]: Started Nameserver information manager.
  Dec 15 19:18:15.797857 x4 systemd[1]: Starting Wait for Network to be 
Configured...
  Dec 15 19:18:15.799573 x4 systemd-networkd-wait-online[145]: ignoring: lo
  Dec 15 19:18:15.804949 x4 systemd-networkd-wait-online[145]: ignoring: lo
  Dec 15 19:18:15.805079 x4 systemd-networkd-wait-online[145]: ignoring: lo
  Dec 15 19:18:29.100305 x4 systemd[1]: Starting Update resolvconf for networkd 
DNS...
  Dec 15 19:18:29.101870 x4 systemd[1]: Started Wait for Network to be 
Configured.
  Dec 15 19:18:29.102144 x4 systemd[1]: Reached target Network is Online.
  Dec 15 19:18:29.212842 x4 systemd[1]: Started Update resolvconf for networkd 
DNS.

  === GOOD OUTPUT ===
  On a passing system, Reached target Network is Online occurs after 1, 2, and 
3.

  Dec 15 19:28:42.548545 x4 systemd[1]: Started Nameserver information manager.
  Dec 15 19:28:43.144389 x4 systemd[1]: Starting Wait for Network to be 
Configured...
  Dec 15 19:28:43.146155 x4 systemd-networkd-wait-online[145]: ignoring: lo
  Dec 15 19:28:56.081487 x4 systemd[1]: Started Wait for Network to be 
Configured.
  Dec 15 19:28:56.100353 x4 systemd[1]: Starting Update resolvconf for networkd 
DNS...
  Dec 15 19:28:56.124005 x4 systemd[1]: Started Update resolvconf for networkd 
DNS.
  Dec 15 19:28:56.124555 x4 systemd[1]: Reached target Network is Online.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/resolvconf/+bug/1649931/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to