Uploaded image for project: 'CentOS Stream Pipeline'
  1. CentOS Stream Pipeline
  2. CS-2799

CentOS 9 compose publishes multiple old cockpit versions

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Undefined Undefined
    • None
    • None
    • Pipeline
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • None
    • Testable
    • rhel-swm

      What were you trying to do that didn't work?

      The cockpit linux-system-role has an option to install all available cockpit packages. Installation happens through ansible's package:: builtin, like this:

      - name: Ensure Cockpit Web Console packages are installed.
        package:
          name: ["cockpit-podman", "cockpit-machines", ...]
          state: present
      

      Ansible translates this to a dnf install command, but we don't have control over this (like adding CLI options). We have a special mode to install "all" cockpit packages, which translates to installing cockpit-*. This broke recently:

      Error: 
       Problem: cannot install both cockpit-bridge-334.1-1.el9.x86_64 from baseos and cockpit-bridge-330-1.el9.x86_64 from baseos
        - cannot install the best candidate for the job
      

      What is the impact of this issue to you?

      linux-system-role is broken for this use case.

      Please provide the package NVR for which the bug is seen:

      dnf-4.14.0-25.el9.noarch

      How reproducible is this bug?:

      Always

      Steps to reproduce

      dnf install --verbose 'cockpit*'
      

      Expected results

      Installs all cockpit packages.

      Actual results

      Fails with the above error message.

      The current CentOS 9 Stream compose actually publishes multiple versions of cockpit-bridge :

      # zgrep -A4 '<name>cockpit-bridge</name>' /var/cache/dnf/baseos-044cae74d71fe9ea/repodata/38e069c05a73572ed911be4913657663e219be6abf981fbc00f10093e00f8aef-primary.xml.gz
        <name>cockpit-bridge</name>
        <arch>x86_64</arch>
        <version epoch="0" ver="330" rel="1.el9"/>
        <checksum type="sha256" pkgid="YES">658b890ef18df1bed94eab701a8f76e73299a43e37c33af59528c7742ebbf07c</checksum>
        <summary>Cockpit bridge server-side component</summary>
      --
        <name>cockpit-bridge</name>
        <arch>x86_64</arch>
        <version epoch="0" ver="331" rel="1.el9"/>
        <checksum type="sha256" pkgid="YES">706e736f25cf0e49142781a6e25530a881f9b1c9fe53a5e1c306c4d071c72eb1</checksum>
        <summary>Cockpit bridge server-side component</summary>
      --
        <name>cockpit-bridge</name>
        <arch>x86_64</arch>
        <version epoch="0" ver="332" rel="1.el9"/>
        <checksum type="sha256" pkgid="YES">e3a52f4fce93a96bc4a04c6247818702191a74d40554041de3bc7ccfdcfeb9e9</checksum>
        <summary>Cockpit bridge server-side component</summary>
      --
        <name>cockpit-bridge</name>
        <arch>x86_64</arch>
        <version epoch="0" ver="333" rel="1.el9"/>
        <checksum type="sha256" pkgid="YES">f4fc8f0b2ef80e0192cc078b13e7cf26611bb2d1f166ede765f42df826a7c85d</checksum>
        <summary>Cockpit bridge server-side component</summary>
      --
        <name>cockpit-bridge</name>
        <arch>x86_64</arch>
        <version epoch="0" ver="334.1" rel="1.el9"/>
        <checksum type="sha256" pkgid="YES">c4dbff63fedd8929ca66b4561588600284d479333bf4c7d90eac2348a170a003</checksum>
        <summary>Cockpit bridge server-side component</summary>
      

      This is also weird. The intention is certainly that dnf install 'cockpit-*' only installs the latest version (i.e. matches on names, not the full NEVAR). If that isn't the case, or you consider the compose broken, please feel free to reassign this to the "CS" project.

      Thank you!

              tdawson@redhat.com Troy Dawson
              rhn-engineering-mpitt Martin Pitt
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: