cloud-init: add dependency on systemd to fix installed-vs-shipped QA issue

* without systemd in RSS, setup.py will fail to call:
  "pkg-config systemd --variable=systemdsystemunitdir"
  and then clound-init might fail with:
  ERROR: cloud-init-20.3-r0 do_package: QA Issue: cloud-init: Files/directories were installed but not shipped in any package:
    /lib/systemd
    /lib/systemd/system-generators
    /lib/systemd/system
    /lib/systemd/system-generators/cloud-init-generator
    /lib/systemd/system/cloud-final.service
    /lib/systemd/system/cloud-init.service
    /lib/systemd/system/cloud-config.target
    /lib/systemd/system/cloud-init.target
    /lib/systemd/system/cloud-init-local.service
    /lib/systemd/system/cloud-config.service
  Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
  cloud-init: 10 installed and not shipped files. [installed-vs-shipped]

  when systemd on host or in the systemd fallback uses
  different systemdsystemunitdir value than what OE packages with:
  FILES_${PN}-systemd += "${systemd_unitdir}/*"

  setup.py fallback:
  def pkg_config_read(library, var):
    fallbacks = {
        'systemd': {
            'systemdsystemunitdir': '/lib/systemd/system',
            'systemdsystemgeneratordir': '/lib/systemd/system-generators',
        }
    }
    ..

  ubuntu:
  meta-virtualization$ pkg-config systemd --variable=systemdsystemunitdir
  /lib/systemd/system

  OE (with usrmerge in DISTRO_FEATURES):
  cloud-init/20.3-r0$ pkg-config systemd --variable=systemdsystemunitdir
  /usr/lib/systemd/system

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
This commit is contained in:
Martin Jansa 2020-11-07 17:24:36 +01:00 committed by Bruce Ashfield
parent 515f39e453
commit 19c3d8bab4

View File

@ -25,6 +25,9 @@ inherit setuptools3
inherit update-rc.d
inherit systemd
# setup.py calls "pkg-config systemd --variable=systemdsystemunitdir" and needs to find our systemd
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
inherit python3native
PACKAGES += "${PN}-systemd"