← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1675576] Re: cloud-init netplan renderer might need to delete baked in configuration

 

This bug was fixed in the package cloud-init - 0.7.9-90-g61eb03fe-
0ubuntu1~16.10.1

---------------
cloud-init (0.7.9-90-g61eb03fe-0ubuntu1~16.10.1) yakkety; urgency=medium

  * debian/cloud-init.templates: add Bigstep to list of sources. (LP: #1676460)
  * New upstream snapshot.
    - OpenStack: add 'dvs' to the list of physical link types. (LP: #1674946)
    - Fix bug that resulted in an attempt to rename bonds or vlans.
      (LP: #1669860)
    - tests: update OpenNebula and Digital Ocean to not rely on host
      interfaces.
    - net: in netplan renderer delete known image-builtin content.
      (LP: #1675576)
    - doc: correct grammar in capabilities.rst [David Tagatac]
    - ds-identify: fix detecting of maas datasource. (LP: #1677710)
    - netplan: remove debugging prints, add debug logging [Ryan Harper]
    - ds-identify: do not write None twice to datasource_list.
    - support resizing partition and rootfs on system booted without
      initramfs.  [Steve Langasek] (LP: #1677376)
    - apt_configure: run only when needed. (LP: #1675185)
    - OpenStack: identify OpenStack by product 'OpenStack Compute'.
      (LP: #1675349)
    - GCE: Search GCE in ds-identify, consider serial number in check.
      (LP: #1674861)
    - Add support for setting hashed passwords [Tore S. Lonoy] (LP: #1570325)
    - Fix filesystem creation when using "partition: auto"
      [Jonathan Ballet] (LP: #1634678)
    - ConfigDrive: support reading config drive data from /config-drive.
      (LP: #1673411)
    - ds-identify: fix detection of Bigstep datasource. (LP: #1674766)
    - test: add running of pylint [Joshua Powers]
    - ds-identify: fix bug where filename expansion was left on.
    - advertise network config v2 support (NETWORK_CONFIG_V2) in features.
    - Bigstep: fix bug when executing in python3. [root]
    - Fix unit test when running in a system deployed with cloud-init.
    - Bounce network interface for Azure when using the built-in path.
      [Brent Baude] (LP: #1674685)
    - cloudinit.net: add network config v2 parsing and rendering [Ryan Harper]
    - net: Fix incorrect call to isfile [Joshua Powers] (LP: #1674317)
    - net: add renderers for automatically selecting the renderer.
    - doc: fix config drive doc with regard to unpartitioned disks.
      (LP: #1673818)
    - test: Adding integratiron test for password as list [Joshua Powers]
    - render_network_state: switch arguments around, do not require target
    - support 'loopback' as a device type.
    - Integration Testing: improve testcase subclassing [Wesley Wiedenmeier]
    - gitignore: adding doc/rtd_html [Joshua Powers]
    - doc: add instructions for running integration tests via tox.
      [Joshua Powers]
    - test: avoid differences in 'date' output due to daylight savings.
    - Fix chef config module in omnibus install. [Jeremy Melvin] (LP: #1583837)
    - Add feature flags to cloudinit.version. [Wesley Wiedenmeier]
    - tox: add a citest environment
    - Support chpasswd/list being a list in addition to a string.
      [Sergio Lystopad] (LP: #1665694)
    - doc: Fix configuration example for cc_set_passwords module.
      [Sergio Lystopad] (LP: #1665773)
    - net: support both ipv4 and ipv6 gateways in sysconfig.
      [Lars Kellogg-Stedman] (LP: #1669504)
    - net: do not raise exception for > 3 nameservers
      [Lars Kellogg-Stedman] (LP: #1670052)

 -- Scott Moser <smoser@xxxxxxxxxx>  Mon, 03 Apr 2017 12:03:30 -0400

** Changed in: cloud-init (Ubuntu Yakkety)
       Status: Fix Committed => 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/1675576

Title:
  cloud-init netplan renderer might need to delete baked in
  configuration

Status in cloud-init:
  Fix Committed
Status in cloud-init package in Ubuntu:
  Fix Released
Status in cloud-init source package in Xenial:
  Fix Released
Status in cloud-init source package in Yakkety:
  Fix Released

Bug description:
  === Begin SRU Template ===
  [Impact]
  Writing netplan configuration during cloud-init's local phase
  does not work properly.  This is because there is stale configuration
  from the default installed files in a Ubuntu core image.

  The change to cloud-initn was to clean those up so that it could
  invoke netplan apply.

  [Test Case]
  Unit tests were added that excercise this code, full functional
  test would run through ubuntu core.  To do this on ubuntu cloud images
  we will simulate.

  lxc-proposed-snapshot is
    https://git.launchpad.net/~smoser/cloud-init/+git/sru-info/tree/bin/lxc-proposed-snapshot
  It publishes an image to lxd with proposed enabled and cloud-init upgraded.

  $ release=xenial
  $ ref=$release-proposed
  $ lxc-proposed-snapshot --proposed --publish $release $ref
  $ lxc init $ref $name
  $ cat > 00-snapd-config.yaml <<"EOF"
  # This is the initial network config.
  # It can be overwritten by cloud-init or console-conf.
  network:
      version: 2
      ethernets:
          all-en:
              match:
                  name: "en*"
              dhcp4: true
          all-eth:
              match:
                  name: "eth*"
              dhcp4: true
  EOF
  $ echo 'system_info: {network: {renderers: ["netplan"]}}' |
     lxc file push -p - $name/etc/cloud/cloud.cfg.d/99-renderers.cfg

  $ lxc file push -p 00-snapd-config.yaml $name/etc/netplan/00-snapd-config.yaml
  # xenial does not have netplan, so trick the renderer search.
  $ ( set -x; lxc file pull $name/usr/sbin/netplan - >/dev/null ||
      echo "" | lxc file push netplan $name/usr/sbin/netplan --mode=0755 )

  $ lxc start $name

  $ sleep 10
  $ lxc exec $name ls /etc/netplan/00-snapd-config.yaml
  ls: cannot access '/etc/netplan/00-snapd-config.yaml': No such file or directory

  $ grep removing /var/log/cloud-init.log
  2017-04-04 14:38:18,303 - netplan.py[DEBUG]: removing known config '/etc/netplan/00-snapd-config.yaml' and derived existing files: ['/run/systemd/network/10-netplan-all-en.network', '/run/systemd/network/10-netplan-all-eth.network', '/run/systemd/generator/netplan.stamp']
  lxc

  # In yakkety, you can see networkd set up the links with
  # In xenial, there is no netplan, so we assume broken networking.
  $ lxc exec $name ip a
  $ lxc exec $name systemctl status systemd-networkd --no-pager --full

  [Regression Potential]
  This code could delete a users netplan config incorrectly.
  That is protected against the config being *exactly* as shown above,
  and also named exactly as above.

  === End SRU Template ===

  1. Zesty
  2. 0.7.9-68-gef18b8ac-0ubuntu1
  3. cloud-init with network configuration rendering to netplan config has exclusive control over networkd configuration
  4. On images with existing netplan configuration (UC16 has an /etc/netplan/00-snapd-config.yaml); netplan generator will parse and write out networkd config to /run/systemd/network/10-netplan-*
  These files may collide with network-configuration provided to cloud-init which has been configured to render netplan.

  cloud-init should employ a 'maybe-delete' like function in the eni
  renderer to

  a) remove /etc/netplan/00-snapd-config.yaml  # this is the only known content at this time
  b) remove /run/systemd/network/10-netplan*   # files generated from (a)
  c) remove /run/systemd/generator/netplan.stamp # prevents new invocations of netplan generate

  Once these are removed, cloud-init netplan renderer may write out
  netplan config, and invoke netplan generate successfully.

  raharper@localhost:~$ find /etc/netplan /run/systemd/network
  /etc/netplan
  /etc/netplan/00-snapd-config.yaml
  /run/systemd/network
  /run/systemd/network/10-netplan-all-en.network
  /run/systemd/network/10-netplan-all-eth.network
  raharper@localhost:~$ ls -al /run/systemd/generator/netplan.stamp
  -rw-r--r-- 1 root root 0 Mar 23 21:58 /run/systemd/generator/netplan.stamp

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1675576/+subscriptions