-
Notifications
You must be signed in to change notification settings - Fork 150
Do not Obsolete foreman_remote_execution_core from smart_proxy_remote_execution_ssh #6861
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
I also submitted theforeman/smart_proxy_remote_execution_ssh#59 which means the RPM can be installed (as a library) but not enabled. |
|
Thats the part I am fuzzy on... is smart_proxy_remote_execution_ssh used as a library? If it is, I agree it should be disabled by default to confer the wrong intent. If its a legit stand-alone smart-proxy plugin that provides a feature then it shouldn't get auto-installed on the user system if they did not have it prior and we should let the installer handle enable / disable. |
Not exactly. There was a time when remote execution could run from foreman itself or through a smart proxy. The code for this lived in Fast forward to ~two weeks ago, we moved contents of
No, it is a legit plugin that provides a feature. Now that no other proxy plugin (barring acd) depends on
As far as I understand it this is a by-product of the upgrade from "rex core" through "rex core as compatibility layer to smart_proxy_remote_execution_ssh" to "only smart_proxy_remote_execution_ssh". If we skip the middle step, things should sort themselves out. Unless I'm missing something this should allow us to get out of this mess. If folks do a 2.5->2.6 upgrade and have rex on the proxy, I know it sounds like a hack, but I'd prefer a one time hack over introducing non-standard behavior (proxy plugin not being enabled by default) for the long term. Opinions? |
This won't help. 😿 The problem (as I see it, is the following):
Which forms the following questions:
|
But not in nightly/> 2.5, no?
If we go with obsolete, why would yum want to install proxy-rex-ssh if it is not already there? What would pull it in? |
No, but our problem are upgraded setups from 2.5.
If you say "package B obsoletes package A" yum translates this to: "if package A is installed, uninstall package A, install package B" |
Oh. Oh... I thought it means "A and B can't live on the same machine, if they are, B wins". That explains a lot. |
That would be |
|
Then agreed. Should we also drop the |
Yeah, I think the same should happen there, even if there is less of a source for problems there. |
|
In SCL we have a |
Yeah, and in this case it warrants a removal on EL8 too |
@adamruzicka @evgeni @ekohl Please take a look
The interesting part here is, and I don't know the code enough, is that by smart_proxy_remote_execution_ssh obsoleting foreman_remote_execution_core we are introducing functionality that was not present before. That is, previously only the core code parts existed via the foreman_remote_execution_core gem. Now we are introducing the actual smart_proxy_remote_execution plugin even though a user may not have had it configured.
On upgrade, the yum output is:
This is, what in turn results in:
Even though, a user has:
So I think that this is what was breaking the upgrade before:
https://github.com/theforeman/foreman-packaging/pull/6855/files#diff-5639bb35f3b9b6c5d8eb5121c28b627340d9fa15bbee42e94682fc58cb51a4d6L24
And now, the Obsoletes is breaking us. Something maybe ought to clean up the system, but not the smart proxy plugin.