DataDog/chef-datadog

[centos8][gpupg] Conflit with gpupg2

Closed this issue · 1 comments

Hello,

in the Repository Recipes, we enforce the installation of gpupg on RHEL,Fedora while CentOS/RHEL 8 came with gnupg2 built-in in it protected repository.

This create a conflit when the cookbook try to install that package

Recipe: datadog::repository
  * dnf_package[gnupg] action install[2020-10-13T09:37:05+02:00] INFO: Processing dnf_package[gnupg] action install (datadog::repository line 71)


    ================================================================================
    Error executing action `install` on resource 'dnf_package[gnupg]'
    ================================================================================

    Mixlib::ShellOut::ShellCommandFailed
    ------------------------------------
    Expected process to exit with [0], but received '1'
    ---- Begin output of ["dnf", "-y", "install", "gnupg-0:1.4.22-6.fc28.x86_64"] ----
    STDOUT: Last metadata expiration check: 0:00:05 ago on Tue 13 Oct 2020 09:37:36 AM CEST.
    Dependencies resolved.
    ================================================================================
     Package        Architecture   Version                   Repository        Size
    ================================================================================
    Installing:
     gnupg          x86_64         1.4.22-6.fc28             fedora28         1.3 M
    Installing dependencies:
     libusb         x86_64         1:0.1.5-12.fc28           fedora28          41 k

    Transaction Summary
    ================================================================================
    Install  2 Packages

    Total download size: 1.4 M
    Installed size: 5.5 M
    Downloading Packages:
    (1/2): libusb-0.1.5-12.fc28.x86_64.rpm           64 kB/s |  41 kB     00:00
    (2/2): gnupg-1.4.22-6.fc28.x86_64.rpm           646 kB/s | 1.3 MB     00:02
    --------------------------------------------------------------------------------
    Total                                           664 kB/s | 1.4 MB     00:02
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    The downloaded packages were saved in cache until the next successful transaction.
    You can remove cached packages by executing 'dnf clean packages'.
    STDERR: Error: Transaction test error:
      file /usr/bin/gpg from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
      file /usr/bin/gpg-zip from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
      file /usr/bin/gpgsplit from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
      file /usr/bin/gpgv from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
      file /usr/share/man/man1/gpg.1.gz from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
      file /usr/share/man/man1/gpgv.1.gz from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
    ---- End output of ["dnf", "-y", "install", "gnupg-0:1.4.22-6.fc28.x86_64"] ----
    Ran ["dnf", "-y", "install", "gnupg-0:1.4.22-6.fc28.x86_64"] returned 1

    Resource Declaration:
    ---------------------
    # In /var/chef/cache/cookbooks/datadog/recipes/repository.rb

     71:     package 'gnupg' do
     72:       action :install
     73:     end
     74:

    Compiled Resource:
    ------------------
    # Declared in /var/chef/cache/cookbooks/datadog/recipes/repository.rb:71:in `from_file'

    dnf_package("gnupg") do
      package_name "gnupg"
      action [:install]
      default_guard_interpreter :default
      declared_type :package
      cookbook_name "datadog"
      recipe_name "repository"
    end

    System Info:
    ------------
    chef_version=15.14.0
    platform=centos
    platform_version=8.2.2004
    ruby=ruby 2.6.6p146 (2020-03-31 revision 67876) [x86_64-linux]
    program_name=/usr/bin/chef-client
    executable=/opt/chef/bin/chef-client

[2020-10-13T09:37:45+02:00] INFO: Running queued delayed notifications before re-raising exception
[2020-10-13T09:37:45+02:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: dnf_package[gnupg] (datadog::repository line 71) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of ["dnf", "-y", "install", "gnupg-0:1.4.22-6.fc28.x86_64"] ----
STDOUT: Last metadata expiration check: 0:00:05 ago on Tue 13 Oct 2020 09:37:36 AM CEST.
Dependencies resolved.
================================================================================
 Package        Architecture   Version                   Repository        Size
================================================================================
Installing:
 gnupg          x86_64         1.4.22-6.fc28             fedora28         1.3 M
Installing dependencies:
 libusb         x86_64         1:0.1.5-12.fc28           fedora28          41 k

Transaction Summary
================================================================================
Install  2 Packages

Total download size: 1.4 M
Installed size: 5.5 M
Downloading Packages:
(1/2): libusb-0.1.5-12.fc28.x86_64.rpm           64 kB/s |  41 kB     00:00
(2/2): gnupg-1.4.22-6.fc28.x86_64.rpm           646 kB/s | 1.3 MB     00:02
--------------------------------------------------------------------------------
Total                                           664 kB/s | 1.4 MB     00:02
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
STDERR: Error: Transaction test error:
  file /usr/bin/gpg from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
  file /usr/bin/gpg-zip from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
  file /usr/bin/gpgsplit from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
  file /usr/bin/gpgv from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
  file /usr/share/man/man1/gpg.1.gz from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
  file /usr/share/man/man1/gpgv.1.gz from install of gnupg-1.4.22-6.fc28.x86_64 conflicts with file from package gnupg2-2.2.9-1.el8.x86_64
---- End output of ["dnf", "-y", "install", "gnupg-0:1.4.22-6.fc28.x86_64"] ----
Ran ["dnf", "-y", "install", "gnupg-0:1.4.22-6.fc28.x86_64"] returned 1
[root@lbn-db-prod-shared-01:/etc/yum.repos.d]# dnf remove gnupg2
Error:
 Problem: The operation would result in removing the following protected packages: dnf
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

closing the issue.

Bug corrected in #750