← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1724354] Re: WARNING in logs due to missing python-jsonschema

 

This bug was fixed in the package cloud-init -
17.1-27-geb292c18-0ubuntu1~16.04.1

---------------
cloud-init (17.1-27-geb292c18-0ubuntu1~16.04.1) xenial-proposed; urgency=medium

  * New upstream snapshot.
    - EC2: Limit network config to fallback nic, fix local-ipv4 only
      instances. (LP: #1728152)
    - Gentoo: Use "rc-service" rather than "service". [Carlos Konstanski]

cloud-init (17.1-25-g17a15f9e-0ubuntu1~16.04.1) xenial-proposed;
urgency=medium

  * New upstream snapshot.
    - resizefs: Fix regression when system booted with root=PARTUUID=
      (LP: #1725067)
    - tools: make yum package installation more reliable
    - citest: fix remaining warnings raised by integration tests.
    - citest: show the class actual class name in results.
    - ntp: fix config module schema to allow empty ntp config
      (LP: #1724951)
    - tools: disable fastestmirror if using proxy [Joshua Powers]

cloud-init (17.1-18-gd4f70470-0ubuntu1~16.04.2) xenial-proposed;
urgency=medium

  * cherry-pick 41152f1: schema: Log debug instead of warning when
    jsonschema is absent (LP: #1724354)

cloud-init (17.1-18-gd4f70470-0ubuntu1~16.04.1) xenial-proposed;
urgency=medium

  * drop the following cherry picks, now incorporated in snapshot.
    + debian/patches/cpick-a2f8ce9c-Do-not-provide-systemd-fsck-drop...
  * debian/copyright: dep5 updates, reorganize, add Apache 2.0 license.
    (LP: #1718681)
  * debian/control: drop dependency on python3-prettytable
  * debian/rules: install rsyslog file with 0644 mode instead of 0755.
  * debian/rules, debian/apport-launcher.py: add an apport hook. (LP: #1607345)
  * New upstream snapshot. (LP: #1721847)
    - simpletable: Fix get_string method to return table-formatted string
    - net: Handle bridge stp values of 0 and convert to boolean type
      [Chad Smith]
    - tools: Give specific --abbrev=8 to "git describe"
    - network: bridge_stp value not always correct [Ryan Harper]
    - tests: re-enable tox with nocloud-kvm support [Joshua Powers]
    - systemd: remove limit on tasks created by cloud-init-final.service.
      [Robert Schweikert]
    - suse: Support addition of zypper repos via cloud-config.
      [Robert Schweikert]
    - tests: Combine integration configs and testcases [Joshua Powers]
    - Azure, CloudStack: Support reading dhcp options from systemd-networkd.
      [Dimitri John Ledkov]
    - packages/debian/copyright: remove mention of boto and MIT license
    - systemd: only mention Before=apt-daily.service on debian based distros.
      [Robert Schweikert]
    - Add missing simpletable and simpletable tests for failed merge
      [Chad Smith]
    - Remove prettytable dependency, introduce simpletable [Andrew Jorgensen]
    - debian/copyright: dep5 updates, reorganize, add Apache 2.0 license.
      [Joshua Powers]
    - tests: remove dependency on shlex [Joshua Powers]
    - AltCloud: Trust PATH for udevadm and modprobe.
    - DataSourceOVF: use util.find_devs_with(TYPE=iso9660)
      [Ryan Harper]
    - tests: remove a temp file used in bootcmd tests.
    - release 17.1
    - doc: document GCE datasource. [Arnd Hannemann]
    - suse: updates to templates to support openSUSE and SLES.
      [Robert Schweikert]
    - suse: Copy sysvinit files from redhat with slight changes.
      [Robert Schweikert]
    - docs: fix sphinx module schema documentation [Chad Smith]
    - tests: Add cloudinit package to all test targets [Chad Smith]
    - Makefile: No longer look for yaml files in obsolete ./bin/.
    - tests: fix ds-identify unit tests to set EC2_STRICT_ID_DEFAULT.
    - ec2: Fix maybe_perform_dhcp_discovery to use /var/tmp as a tmpdir
      [Chad Smith]
    - Azure: wait longer for SSH pub keys to arrive.
      [Paul Meyer]
    - GCE: Fix usage of user-data.
    - cmdline: add collect-logs subcommand. [Chad Smith]
    - CloudStack: consider dhclient lease files named with a hyphen.
    - resizefs: Drop check for read-only device file, do not warn on
      overlayroot. [Chad Smith]
    - tests: Enable the NoCloud KVM platform [Joshua Powers]
    - resizefs: pass mount point to xfs_growfs [Dusty Mabe]
    - vmware: Enable nics before sending the SUCCESS event. [Sankar Tanguturi]
    - cloud-config modules: honor distros definitions in each module
      [Chad Smith]
    - chef: Add option to pin chef omnibus install version
      [Ethan Apodaca]
    - tests: execute: support command as string [Joshua Powers]
    - schema and docs: Add jsonschema to resizefs and bootcmd modules
      [Chad Smith]
    - tools: Add xkvm script, wrapper around qemu-system [Joshua Powers]
    - vmware customization: return network config format
      [Sankar Tanguturi]
    - Ec2: only attempt to operate at local mode on known platforms.
    - Use /run/cloud-init for tempfile operations.
    - ds-identify: Make OpenStack return maybe on arch other than intel.
    - tests: mock missed openstack metadata uri network_data.json
      [Chad Smith]
    - relocate tests/unittests/helpers.py to cloudinit/tests
      [Lars Kellogg-Stedman]
    - tox: add nose timer output [Joshua Powers]
    - upstart: do not package upstart jobs, drop ubuntu-init-switch module.
    - tests: Stop leaking calls through unmocked metadata addresses
      [Chad Smith]
    - distro: allow distro to specify a default locale [Ryan Harper]
    - tests: fix two recently added tests for sles distro.
    - url_helper: dynamically import oauthlib import from inside oauth_headers
      [Chad Smith]
    - tox: make xenial environment run with python3.6
    - suse: Add support for openSUSE and return SLES to a working state.
      [Robert Schweikert]
    - GCE: Add a main to the GCE Datasource.
    - ec2: Add IPv6 dhcp support to Ec2DataSource. [Chad Smith]
    - url_helper: fail gracefully if oauthlib is not available
      [Lars Kellogg-Stedman]
    - cloud-init analyze: fix issues running under python 2. [Andrew Jorgensen]
    - Configure logging module to always use UTC time.
      [Ryan Harper]
    - Log a helpful message if a user script does not include shebang.
      [Andrew Jorgensen]
    - cli: Fix command line parsing of coniditionally loaded subcommands.
      [Chad Smith]
    - doc: Explain error behavior in user data include file format.
      [Jason Butz]
    - cc_landscape & cc_puppet: Fix six.StringIO use in writing configs
      [Chad Smith]
    - schema cli: Add schema subcommand to cloud-init cli and cc_runcmd schema
      [Chad Smith]
    - Debian: Remove non-free repositories from apt sources template.
      [Joonas Kylmälä]
    - tools: Add tooling for basic cloud-init performance analysis.
      [Chad Smith]
    - network: add v2 passthrough and fix parsing v2 config with bonds/bridge
      params [Ryan Harper]
    - doc: update capabilities with features available, link doc reference,
      cli example [Ryan Harper]
    - vcloud directory: Guest Customization support for passwords
      [Maitreyee Saikia]
    - ec2: Allow Ec2 to run in init-local using dhclient in a sandbox.
      [Chad Smith]
    - cc_ntp: fallback on timesyncd configuration if ntp is not installable
      [Ryan Harper]
    - net: Reduce duplicate code. Have get_interfaces_by_mac use
      get_interfaces.
    - tests: Fix build tree integration tests [Joshua Powers]
    - sysconfig: Dont repeat header when rendering resolv.conf
      [Ryan Harper]
    - archlinux: Fix bug with empty dns, do not render 'lo' devices.

 -- Chad Smith <chad.smith@xxxxxxxxxxxxx>  Tue, 31 Oct 2017 13:10:51
-0600

** Changed in: cloud-init (Ubuntu Xenial)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1724354

Title:
  WARNING in logs due to missing python-jsonschema

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 Zesty:
  Fix Released
Status in cloud-init source package in Artful:
  Fix Released

Bug description:
  === Begin SRU Template ===
  [Impact]
  If python3-jsonschema is not installed, then WARNING will be written
  to console log and to /var/log/cloud-init.log with certain cloud-config
  data is provided.

  python3-jsonschema is a soft dependency of cloud-init and specically
  not listed in 16.04 and 17.04 packaging as it was not a dependency in
  the versions of cloud-init originally released then.

  The WARNING is only "scary", and has no negative affect on runtime.

  [Test Case]
  The change for this bug modified the integration test suite so
  that WARN in /var/log/cloud-init would trigger a test failure.
  Running the integration testsuite would show this failure with
  that test now in place.

  A manual test can be done though as follows.

  $ cat > my.cfg <<EOF
  #cloud-config
  bootcmd:
    - "cat /proc/uptime > /run/bootcmd-works"
  runcmd:
    - "cat /proc/uptime > /run/runcmd-works"
  EOF

  $ for r in zesty xenial; do
     lxc init $r-proposed $r-info &&
     lxc-pstart $r-info \
       sh -c 'dpkg-query --show cloud-init; cat /etc/cloud/build.info' &&
       lxc delete --force $r-info; done

  # show container info just to show versions.
  $ for r in zesty xenial; do
     lxc init $r-proposed $r-info >/dev/null 2>&1 && echo == $r-info == &&
     lxc-pstart $r-info -- \
        sh -xc 'dpkg-query --show cloud-init; cat /etc/cloud/build.info' &&
     lxc delete --force $r-info; done

  ## launch an instance of each release and grab logs.
  $ for rel in xenial zesty; do
     n=$rel-1724354
     lxc launch $rel-proposed $n "--config=user.user-data=$(cat my.cfg)"
     lxc exec $n -- sh -c \
        'while ! [ -e /run/cloud-init/result.json ]; do echo -n .; sleep 1; done; echo'
     lxc file pull $n/var/log/cloud-init.log $n-cloud-init.log
  done

  # check that 1724354 is installed.
  $ grep "WARN" *-1724354-cloud-init.log

  [Regression Potential]
  Highest chance for regression would be in the integration test
  suite.  The only change in code path is in cloudinit/config/schema.py:
   - logging.warning(
   + logging.debug(

  [Other Info]
  Upstream commit at
    https://git.launchpad.net/cloud-init/commit/?id=41152f10ddb

  Note, this is not specifically in artful at this point, but also
  note that this bug does not affect artful.  Artful's package
  has a depends on python3-jsonschema, so it will not demonstrate
  the issue.

  === End SRU Template ===

  $ dpkg-query --show cloud-init
  cloud-init  17.1-18-gd4f70470-0ubuntu1~16.04.1

  $ sudo cat /var/lib/cloud/instance/user-data.txt
  #cloud-config
  bootcmd:
    - "cat /proc/uptime > /run/bootcmd-works"
  runcmd:
    - "cat /proc/uptime > /run/runcmd-works"

  $ grep WARN /var/log/cloud-init.log
  2017-10-17 19:08:10,509 - schema.py[WARNING]: Ignoring schema validation. python-jsonschema is not present
  2017-10-17 19:08:10,586 - schema.py[WARNING]: Ignoring schema validation. python-jsonschema is not present
  2017-10-17 19:08:14,651 - schema.py[WARNING]: Ignoring schema validation. python-jsonschema is not present

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