Missing dependency to sysfsutils, nvme-cli

Bug #1947063 reported by Nobuto Murata
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
OpenStack Cinder Pure Storage Charm
Invalid
Undecided
Unassigned
Yoga
Fix Committed
Medium
Nobuto Murata
Ubuntu Cloud Archive
Fix Released
High
Unassigned
python-os-brick (Ubuntu)
Fix Released
High
Unassigned

Bug Description

At the moment, python3-os-brick pulls iSCSI dependency such as open-iscsi but doesn't pull FC dependency as sysfsutils at all.

os-brick is actively using the "systool" command to detect HBA and bais if it's not installed. It would be nice to add sysfsutils package at least as Recommends of python3-os-brick.
https://github.com/openstack/os-brick/blob/4baa502ec8c6c62184c474f126c0ad07eb3409f1/os_brick/initiator/linuxfc.py#L151-L177

$ apt depends python3-os-brick
python3-os-brick
  Depends: open-iscsi
  Depends: os-brick-common (= 5.0.1-0ubuntu1)
  Depends: python3-babel (>= 2.3.4)
  Depends: python3-eventlet (>= 0.30.1)
  Depends: python3-os-win (>= 5.4.0)
  Depends: python3-oslo.concurrency (>= 4.4.0)
  Depends: python3-oslo.context (>= 1:3.1.1)
  Depends: python3-oslo.i18n (>= 5.0.1)
  Depends: python3-oslo.log (>= 4.4.0)
  Depends: python3-oslo.privsep (>= 2.4.0)
  Depends: python3-oslo.serialization (>= 4.1.0)
  Depends: python3-oslo.service (>= 2.5.0)
  Depends: python3-oslo.utils (>= 4.8.0)
  Depends: python3-pbr (>= 5.5.1)
  Depends: python3-requests (>= 2.25.1)
  Depends: python3-retrying (>= 1.2.3)
  Depends: python3-tenacity (>= 6.3.1)
  Depends: <python3:any>
    python3:i386
    python3
  Suggests: python-os-brick-doc

Revision history for this message
Nobuto Murata (nobuto) wrote :

Upstream refreshed the list of dependencies by adding more commands, etc. "nvme" command from nvme-cli package is one of them.

This is a warning in the NVMe-oF code path, but it's invoked regardless whether NVMe-oF is used or not.

2022-02-22 11:00:42.531 713772 WARNING os_brick.initiator.connectors.nvmeof [req-426349fa-2fff-42f2-b4e3-dbed65ae1d8a b8b3819299c442bb9ba4fb651a59b496 077b7968c0de41069cd29e3819220420 - - -] Could not generate host nqn: [Errno 2] No such file or directory
Command: nvme gen-hostnqn | tee /etc/nvme/hostnqn
Exit code: -
Stdout: None
Stderr: None: oslo_concurrency.processutils.ProcessExecutionError: [Errno 2] No such file or directory

summary: - Missing dependency to sysfsutils
+ Missing dependency to sysfsutils, nvme-cli
Revision history for this message
Nobuto Murata (nobuto) wrote :

There is a separate bug for `lsscsi` since it's impenitent to iSCSI use cases:
https://bugs.launchpad.net/ubuntu/+source/python-os-brick/+bug/1939390

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in python-os-brick (Ubuntu):
status: New → Confirmed
Revision history for this message
Corey Bryant (corey.bryant) wrote :

It looks like sysfsutils is needed for releases up to stable/yoga and is no longer needed from stable/zed onward: https://opendev.org/openstack/os-brick/src/branch/master/releasenotes/notes/no-systool-use-b7bc430de1033670.yaml

Revision history for this message
Corey Bryant (corey.bryant) wrote :

And nvme-cli appears to be used by all currently supported releases.

Changed in python-os-brick (Ubuntu):
status: Confirmed → Triaged
importance: Undecided → High
Changed in cloud-archive:
status: New → Triaged
importance: Undecided → High
Revision history for this message
Corey Bryant (corey.bryant) wrote :

This is fixed in Lunar 6.1.0-0ubuntu2.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package python-os-brick - 6.1.0-0ubuntu2

---------------
python-os-brick (6.1.0-0ubuntu2) lunar; urgency=medium

  * d/control: Add lsscsi to Depends as required for iSCSI attached
    volumes (LP: #1939390).
  * d/control: Add nvme-cli to Depends as required for volumes using
    nvme-cli over RDMA (LP: #1947063).

 -- Corey Bryant <email address hidden> Mon, 23 Jan 2023 09:01:34 -0500

Changed in python-os-brick (Ubuntu):
status: Triaged → Fix Released
Changed in cloud-archive:
status: Triaged → Fix Committed
Revision history for this message
Corey Bryant (corey.bryant) wrote :

This bug was fixed in the package python-os-brick - 6.1.0-0ubuntu2~cloud0
---------------

 python-os-brick (6.1.0-0ubuntu2~cloud0) jammy-antelope; urgency=medium
 .
   * New update for the Ubuntu Cloud Archive.
 .
 python-os-brick (6.1.0-0ubuntu2) lunar; urgency=medium
 .
   * d/control: Add lsscsi to Depends as required for iSCSI attached
     volumes (LP: #1939390).
   * d/control: Add nvme-cli to Depends as required for volumes using
     nvme-cli over RDMA (LP: #1947063).

Changed in cloud-archive:
status: Fix Committed → Fix Released
Revision history for this message
Christian Rohmann (christian-rohmann) wrote :

Will there be any backports / an SRU for releases via Ubuntu Cloud Archive?

Regarding python-os-brick Xena currently is on version 5.0.2-0ubuntu1~cloud0, Yoga on 5.2.0-0ubuntu1 in UCA.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to charm-cinder-purestorage (stable/yoga)
Felipe Reyes (freyes)
Changed in charm-cinder-purestorage:
status: New → Invalid
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to charm-cinder-purestorage (stable/yoga)

Reviewed: https://review.opendev.org/c/openstack/charm-cinder-purestorage/+/902643
Committed: https://opendev.org/openstack/charm-cinder-purestorage/commit/cf31f0dc2d3574fa0f311685bb0a9ad7fe54ebad
Submitter: "Zuul (22348)"
Branch: stable/yoga

commit cf31f0dc2d3574fa0f311685bb0a9ad7fe54ebad
Author: Nobuto Murata <email address hidden>
Date: Tue Dec 5 21:13:30 2023 +0900

    Make sure sysfsutils (for systool) is available up to Yoga

    The systool command is necessary for the FC scenario, but Ubuntu
    packages do not pull it as a dependency. It has to be installed by each
    storage backend charm when:

    - cinder-volume service is not co-located with nova-compute
    - nova-compute charm doesn't have the `use-multipath` option enabled
      even when it's co-located

    However, systool is only necessary up to Yoga so no need to merge this
    for zed onwards:
    https://opendev.org/openstack/os-brick/src/branch/master/releasenotes/notes/no-systool-use-b7bc430de1033670.yaml

    Closes-Bug: #1947063
    Change-Id: I366bf71161e275638403a5a815c98341da7d4f6f

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.