Bug 2057052 - [RFE] Need a proxy to reach RHUI repos during an IPU
Summary: [RFE] Need a proxy to reach RHUI repos during an IPU
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: leapp-repository
Version: 7.9
Hardware: x86_64
OS: All
medium
medium
Target Milestone: rc
: ---
Assignee: Leapp Notifications Bot
QA Contact: upgrades-and-conversions
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-02-22 16:09 UTC by Christophe Besson
Modified: 2023-07-31 13:16 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker OAMG-6544 0 None None None 2022-02-22 16:22:11 UTC
Red Hat Issue Tracker RHELPLAN-113061 0 None None None 2022-02-22 16:22:14 UTC
Red Hat Knowledge Base (Solution) 7025838 0 None None None 2023-07-26 12:21:58 UTC

Description Christophe Besson 2022-02-22 16:09:15 UTC
Description of problem:
When RHSM is used during the IPU, the proxy defined in RHSM is used, as it generates the redhat.repo file with the proxy setting.
But in case of RHUI repositories, there is no equivalent. Usually customers choose /etc/yum.conf to define it, but this is not taken into account in the target userspace container (/etc/yum/* are symlinked to /etc/dnf/* but not the main config file).

Version-Release number of selected component (if applicable):
leapp-upgrade-el7toel8-0.15.0-6.el7_9

How reproducible:
Always for AWS

Steps to Reproduce:
1. Try to upgrade a RHEL 7.9 OS (PAYG on AWS, not BYOS) behind a proxy.

Actual results:
Unable to reach RHUI repos.

Additional info:
* to workaround the issue, the proxy has been added to /etc/dnf/dnf.conf, and then the DNF config has been added by patching /usr/share/leapp-repository/repositories/system_upgrade/common/actors/scanfilesfortargetuserspace/libraries/scanfilesfortargetuserspace.py.

* the suggested feature I mentioned in rhbz#2040706 could help

Comment 3 Petr Stodulka 2022-05-03 17:37:53 UTC
Hi Chris, thanks for the report and sorry for delayed answer. The mentioned feature could be the solution / workaround for this bugzilla.

For now as a workaround customer can create a custom actor that does basically the same, so they are not blocked till a solution is delivered.
To see how to create a custom actor follow:
    https://access.redhat.com/articles/4977891#actors

Such an actor.py file could look like this in the simplest example:
~~~
from leapp.actors import Actor
from leapp.models import CopyFile, TargetUserSpacePreupgradeTasks
from leapp.tags import FactsPhaseTag, IPUWorkflowTag


class MyDNFProxyWorkaround(Actor):
    name = 'my_dnf_proxy_workaround'
    consumes = ()
    produces = (TargetUserSpacePreupgradeTasks,)
    tags = (FactsPhaseTag, IPUWorkflowTag)

    def process(self):
        # In case the current /etc/yum.conf file is compatible with DNF
        # from RHEL 8, it can be used in the src instead of the dnf one
        preupgrade_task = TargetUserSpacePreupgradeTasks(copy_files=[
            CopyFile(src='/etc/dnf/dnf.conf', dst='/etc/dnf/dnf.conf'),
        ])
~~~

Ideal solution for this BZ would be migration of the yum configuration file,
but it's unlikely that this happen.



Note: Keeping the feature aside for now as we have some discussions around.

Comment 4 Petr Stodulka 2022-05-03 17:40:35 UTC
The example above expects the /etc/dnf/dnf.conf file is already configured correctly for the RHEL 8 DNF (with the proxy added).


Note You need to log in before you can comment on or make changes to this bug.