[Bug 2065867] Re: mgr: failed dependency - no module named distutils

Launchpad Bug Tracker 2065867 at bugs.launchpad.net
Fri May 24 23:45:58 UTC 2024


This bug was fixed in the package ceph -
19.2.0~git20240301.4c76c50-0ubuntu7

---------------
ceph (19.2.0~git20240301.4c76c50-0ubuntu7) oracular; urgency=medium

  [ Luciano Lo Giudice]
  * d/control: Add python3-{packaging,ceph-common} to (Build-)Depends
    as these are undocumented/detected runtime dependencies in
    ceph-volume (LP: #2064717).

  [ James Page ]
  * d/cephadm.install: Install cephadmlib Python module which the
    cephadm script uses (LP: #2063456).
  * d/control: cephadm linux-any -> all.
  * d/gbp.conf: Update for ubuntu/oracular packaging branch.
  * d/control: Update Vcs-* to point to Launchpad for Ubuntu packaging.
  * d/p/mgr-distutils.patch: Directly use vendored distutils from
    setuptools for Python that runs in the mgr daemon (LP: #2065867).

 -- James Page <james.page at ubuntu.com>  Thu, 23 May 2024 16:30:19 +0100

** Changed in: ceph (Ubuntu Oracular)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ceph in Ubuntu.
https://bugs.launchpad.net/bugs/2065867

Title:
  mgr: failed dependency - no module named distutils

Status in ceph package in Ubuntu:
  Fix Released
Status in ceph source package in Noble:
  Incomplete
Status in ceph source package in Oracular:
  Fix Released

Bug description:
  [ Impact ]
  dashboard and volume ceph mgr modules fail to activate under Python 3.12 due to use of distutils.

  [ Test Plan ]
  sudo snap install --channel latest/edge/core24 microceph
  sudo microceph cluster bootstrap
  sudo microceph status

  for proposed testing we'll bake a core24-proposed snap to test with.

  [ Where problems could occur ]
  The proposed patch switches to using the vendored distutils in setuptools for the two imports in the ceph mgr modules that exhibit this issue - this is a minimal fix; codebase really needs refactoring to drop all use of distutils but that's outside of the scope on an SRU update.

  Other distutils usage gets caught by the distutils_hack that
  setuptools uses to inject its vendored copy into the distutils module
  location.

  [ Original Bug Report ]
  When running microceph on a core24 base, the ceph-mgr has errors on enabling specific modules - volume and dashboard.

  $ sudo microceph.ceph status
    cluster:
      id:     4e3ff87c-5320-4494-9d3c-42e69cc11398
      health: HEALTH_WARN
              Module 'volumes' has failed dependency: No module named 'distutils'
              OSD count 0 < osd_pool_default_size 3

    services:
      mon: 1 daemons, quorum joplin.glenview.com (age 5s)
      mgr: joplin.glenview.com(active, starting, since 0.942931s)
      osd: 0 osds: 0 up, 0 in

    data:
      pools:   0 pools, 0 pgs
      objects: 0 objects, 0 B
      usage:   0 B used, 0 B / 0 B avail
      pgs:

  distutils as a standalone package was removed from noble - the ceph
  codebase makes quite a bit of use of distuils still which gets picked
  up by the distutils_hack in setuptools but not in the context of the
  mgr daemon.

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




More information about the Ubuntu-openstack-bugs mailing list