Project

General

Profile

Bug #28700

dnf prevent a successful upgrade

Added by Kavita Gaikwad over 2 years ago. Updated over 1 year ago.

Status:
Closed
Priority:
Normal
Category:
-
Target version:
-
Difficulty:
Triaged:
No
Bugzilla link:
Fixed in Releases:
Found in Releases:

Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1772596

Description of problem:

If user has installed on RHEL7 `dnf` - that is available from RH - and try to upgrade Satellite, the rpm upgrade phase fails with the following error:

  1. foreman-maintain upgrade run --target-version 6.5.z

I, [2019-11-08 10:54:52+0100 #6382] INFO -- : === Scenario 'Migration scripts to Satellite 6.5.z' started ===I, [2019-11-08 10:54:52+0100 #6382] INFO -- : --- Execution step 'Setup repositories' [repositories-setup] started ---
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : --- Execution step 'Setup repositories' finished ---
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : --- Execution step 'Unlock packages' [packages-unlock-versions] started ---
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : --- Execution step 'Unlock packages' finished ---
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : --- Execution step 'Update package(s) ' [packages-update] started ---
E, [2019-11-08 10:54:52+0100 #6382] ERROR -- : undefined method `join' for "all":String (NoMethodError)
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/package_manager/dnf.rb:13:in `dnf_action'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/package_manager/dnf.rb:4:in `clean_cache'
/usr/share/gems/gems/foreman_maintain-0.4.9/definitions/procedures/packages/update.rb:13:in `run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/executable.rb:139:in `__run__'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner/execution.rb:83:in `block (2 levels) in run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner/execution.rb:107:in `capture_errors'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner/execution.rb:82:in `block in run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner/execution.rb:101:in `with_metadata_calculation'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner/execution.rb:81:in `run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner.rb:122:in `run_step'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner.rb:111:in `run_steps'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner.rb:104:in `execute_scenario_steps'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/runner.rb:51:in `run_scenario'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/upgrade_runner.rb:138:in `block in run_phase'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/upgrade_runner.rb:185:in `with_non_empty_scenario'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/upgrade_runner.rb:134:in `run_phase'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/upgrade_runner.rb:82:in `block in run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/upgrade_runner.rb:77:in `each'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/upgrade_runner.rb:77:in `run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/cli/upgrade_command.rb:80:in `execute'
/usr/share/gems/gems/clamp-1.1.2/lib/clamp/command.rb:63:in `run'
/usr/share/gems/gems/clamp-1.1.2/lib/clamp/subcommand/execution.rb:11:in `execute'
/usr/share/gems/gems/clamp-1.1.2/lib/clamp/command.rb:63:in `run'
/usr/share/gems/gems/clamp-1.1.2/lib/clamp/subcommand/execution.rb:11:in `execute'
/usr/share/gems/gems/clamp-1.1.2/lib/clamp/command.rb:63:in `run'
/usr/share/gems/gems/foreman_maintain-0.4.9/lib/foreman_maintain/cli.rb:32:in `run'
/usr/share/gems/gems/clamp-1.1.2/lib/clamp/command.rb:132:in `run'
/usr/share/gems/gems/foreman_maintain-0.4.9/bin/foreman-maintain:15:in `<top (required)>'
/usr/bin/foreman-maintain:23:in `load'
/usr/bin/foreman-maintain:23:in `<main>'
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : --- Execution step 'Update package(s) ' finished ---
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : === Scenario 'Migration scripts to Satellite 6.5.z' finished ===
I, [2019-11-08 10:54:52+0100 #6382] INFO -- : foreman-maintain command finished with

Version-Release number of selected component (if applicable):

rubygem-foreman_maintain-0.4.9-1.el7sat.noarch

How reproducible:
always

Steps to Reproduce:
1. yum install dnf
2. foreman-maintain upgrade run --target-version 6.5.z

Actual results:
Failure and bad ruby dump

Expected results:
1. during the `upgrade check` would be useful if the installer would check for the presence of any of the following packages:

dnf
dnf-data
dnf-plugins-core
libdnf
python2-dnf
python2-dnf-plugins-core
python2-libdnf

and raise an error.

Another option could be to make foreman-maintain at rpm level mutually exclusive with dnf.

Associated revisions

Revision 28954918 (diff)
Added by Kavita Gaikwad over 1 year ago

Fixes #28700 - flatten packages list before dnf action

History

#1 Updated by Kavita Gaikwad over 2 years ago

  • Assignee changed from Anurag Patel to Kavita Gaikwad

#2 Updated by The Foreman Bot over 2 years ago

  • Status changed from New to Ready For Testing
  • Pull request https://github.com/theforeman/foreman_maintain/pull/309 added

#3 Updated by Kavita Gaikwad over 1 year ago

  • Status changed from Ready For Testing to Closed

Also available in: Atom PDF