Run leapp in Python Isolated mode (update shebang)#904
Conversation
Thank you for contributing to the Leapp project!Please note that every PR needs to comply with the Leapp Guidelines and must pass all tests in order to be mergeable.
To launch regression testing public members of oamg organization can leave the following comment:
Please open ticket in case you experience technical problem with the CI. (RH internal only) Note: In case there are problems with tests not being triggered automatically on new PR/commit or pending for a long time, please consider rerunning the CI by commenting leapp-ci build (might require several comments). If the problem persists, contact leapp-infra. |
6e23ed1 to
0c81a40
Compare
c794f41 to
35d4940
Compare
35d4940 to
5afbdb6
Compare
66715fe to
5afbdb6
Compare
|
After the shebang update, I cannot get rid of a duplicit Note that for packages built in downstream the shebang points to platform-python instead of python3.6. You can see the difference for between upstream and downstream packaages already, so I expect the behaviour is same with newly modified shebangs, but I haven't tried to create a downstream build with updated shebang yet. |
|
AI for @pirat89:
|
|
switching to draft so it's not merged by mistake before we wanted. postponed for 8.10/9.10 milestone |
Originally, leapp was usually executed only with
<platform-python>, without any additional Python parameters. However, this led to various problems when running leapp on systems with additional third-party (or custom) Python libraries that could override the original libraries provided by the Linux distribution in use.For that reason, we decided to update the shebang in the
/usr/bin/leappexecutable provided by the leapp RPM, so that leapp starts in isolated Python mode and ignores the user's environment.Note that the current shebang contains a duplicated
Iparameter. As this does not have any functional impact, and we could not come up with a solution in the SPEC file to fix it, we decided to keep it as is.