-
Notifications
You must be signed in to change notification settings - Fork 108
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
CentOS-Stream-8/9 dependency fixes - backport to b0.71 #2896
Merged
ndokos
merged 2 commits into
distributed-system-analysis:b0.71
from
ndokos:centos-stream-dependency-backport
Jun 16, 2022
Merged
CentOS-Stream-8/9 dependency fixes - backport to b0.71 #2896
ndokos
merged 2 commits into
distributed-system-analysis:b0.71
from
ndokos:centos-stream-dependency-backport
Jun 16, 2022
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Centos-Stream-8/9: change the 'ansible' dependency to 'ansible-core'. Everybody else (at least for now) can get its hands on an 'ansible' package (EPEL packages it for RHEL: it has a dependency on 'ansible-core' and includes some curated roles).
webbnh
previously approved these changes
Jun 15, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good -- I'm glad the mysteries have been solved!
(I found a few nits, and perhaps you could strengthen a couple of the comments.)
webbnh
approved these changes
Jun 15, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
ndokos
added a commit
that referenced
this pull request
Jun 15, 2022
* CentOS-Stream-8/9 dependency fixes Centos-Stream-8/9: change the 'ansible' dependency to 'ansible-core'. Everybody else (at least for now) can get its hands on an 'ansible' package (EPEL packages it for RHEL: it has a dependency on 'ansible-core' and includes some curated roles). * Fixes from review comments on companion PR #2896
portante
approved these changes
Jun 15, 2022
ndokos
added a commit
to ndokos/pbench
that referenced
this pull request
Jun 17, 2022
This reverts PR distributed-system-analysis#2893 (and its backport to b0.71 distributed-system-analysis#2896). Simplify the ansible and python dependencies as much as possible. For ansible: - RHEL7 has only an `ansible' package available from EPEL. - Everything else (RHEL8, RHEL9, CentOS-Stream-8, CentOS-Stream-9, Fedora 35 and Fedora 36) have `ansible-core' available from the standard distro repos. That's all we need for our purposes. We add `ansible' as a RHEL8 dependency and `ansible-core' as a dependency for everything else. For python, it is more complicated: - RHEL7, RHEL9, CentOS-Stream-9 and the Fedoras have a `python3' package available from the standard distro repos. The actual version varies by distro: 3.6 for RHEL7, 3.9.10 for RHEL9/CentOS-Stream-9, 3.10.0-1 for Fedora 35, 3.10.4-1 for Fedora 36. - RHEL8 and CentOS-Stream-8 have python36, python38 and python39 packages available through the module system. We use the generic `python3' package on most distros, and standardize on `python38' for RHEL8/CentOS-Stream-8. In addition, there is a little refactoring (e.g. `python3-pip' is a common dependency, so it is made unconditional; as a different example, I pulled out the RHEL8 python3-click dependency, in order to allow the rest to be shared between RHEL/CentOS8 and RHEL/CentOS9 - that leaves `python3-click' sticking out however). There are probably more opportunities for such refactoring, but I have not attempted them here.
ndokos
added a commit
to ndokos/pbench
that referenced
this pull request
Jun 17, 2022
This reverts PR distributed-system-analysis#2893 (and its backport to b0.71 distributed-system-analysis#2896). Simplify the ansible and python dependencies as much as possible. For ansible: - RHEL7 has only an `ansible' package available from EPEL. - Everything else (RHEL8, RHEL9, CentOS-Stream-8, CentOS-Stream-9, Fedora 35 and Fedora 36) have `ansible-core' available from the standard distro repos. That's all we need for our purposes. We add `ansible' as a RHEL8 dependency and `ansible-core' as a dependency for everything else. For python, it is more complicated: - RHEL7, RHEL9, CentOS-Stream-9 and the Fedoras have a `python3' package available from the standard distro repos. The actual version varies by distro: 3.6 for RHEL7, 3.9.10 for RHEL9/CentOS-Stream-9, 3.10.0-1 for Fedora 35, 3.10.4-1 for Fedora 36. - RHEL8 and CentOS-Stream-8 have python36, python38 and python39 packages available through the module system. We use the generic `python3' package on most distros, and standardize on `python38' for RHEL8/CentOS-Stream-8. In addition, there is a little refactoring (e.g. `python3-pip' is a common dependency, so it is made unconditional; as a different example, I pulled out the RHEL8 python3-click dependency, in order to allow the rest to be shared between RHEL/CentOS8 and RHEL/CentOS9 - that leaves `python3-click' sticking out however). There are probably more opportunities for such refactoring, but I have not attempted them here.
ndokos
added a commit
to ndokos/pbench
that referenced
this pull request
Jun 24, 2022
This effectively reverts PR distributed-system-analysis#2893 (and its backport to b0.71 distributed-system-analysis#2896). Simplify the python dependencies as much as possible: - RHEL7, RHEL9, CentOS-Stream-9 and the Fedoras have a `python3' package available from the standard distro repos. The actual version varies by distro: 3.6 for RHEL7, 3.9.10 for RHEL9/CentOS-Stream-9, 3.10.0-1 for Fedora 35, 3.10.4-1 for Fedora 36. - RHEL8 and CentOS-Stream-8 have python36, python38 and python39 packages available through the module system. We use the generic `python3' package on most distros, and standardize on `python38' for RHEL8/CentOS-Stream-8. That is mostly treated using a jinja2 loop and a (new) target.json file that generates the separate conditionals for RHEL/CentOS Stream 8 on one hand and the rest on the other. Unfortunately, I had to treat RHEL7 separately from the rest because it is missing a python cffi package that all the others have. I haven't found a clean way to deal with that in jinja2, so it is an explicit RPM conditional in the spec file. Also, the Fedoras are treated separately, at least for now. I am testing by setting the release in subscription-manager now (wherever possible: there is no 7.9 release which I don't understand - this needs investigation - and there is no 9.1 release yet which is understandable. However, that means that RHEL 8.4 and 8.5 have an `ansible' package and 8.6 has an `ansible-core' package available. I've hard-coded `ansible-core' in the spec file (except on RHEL7) which breaks the installation on 8.4 and 8.5. I don't know how to deal with this problem.
ndokos
added a commit
to ndokos/pbench
that referenced
this pull request
Jun 24, 2022
This effectively reverts PR distributed-system-analysis#2893 (and its backport to b0.71 distributed-system-analysis#2896). Simplify the python dependencies as much as possible: - RHEL7, RHEL9, CentOS-Stream-9 and the Fedoras have a `python3' package available from the standard distro repos. The actual version varies by distro: 3.6 for RHEL7, 3.9.10 for RHEL9/CentOS-Stream-9, 3.10.0-1 for Fedora 35, 3.10.4-1 for Fedora 36. - RHEL8 and CentOS-Stream-8 have python36, python38 and python39 packages available through the module system. We use the generic `python3' package on most distros, and standardize on `python38' for RHEL8/CentOS-Stream-8. That is mostly treated using a jinja2 loop and a (new) target.json file that generates the separate conditionals for RHEL/CentOS Stream 8 on one hand and the rest on the other. Unfortunately, I had to treat RHEL7 separately from the rest because it is missing a python cffi package that all the others have. I haven't found a clean way to deal with that in jinja2, so it is an explicit RPM conditional in the spec file. Also, the Fedoras are treated separately, at least for now. I am testing by setting the release in subscription-manager now (wherever possible: there is no 7.9 release which I don't understand - this needs investigation - and there is no 9.1 release yet which is understandable). However, that means that RHEL 8.4 and 8.5 have an `ansible' package and 8.6 has an `ansible-core' package available. I've hard-coded `ansible-core' in the spec file (except on RHEL7) which breaks the installation on 8.4 and 8.5. I don't know how to deal with this problem. Modify dockerfile to enable python39. Since we standardized on python39 for CentOS-Stream-8, we enable that module here and stop worrying about python36.
ndokos
added a commit
to ndokos/pbench
that referenced
this pull request
Jun 24, 2022
This effectively reverts PR distributed-system-analysis#2893 (and its backport to b0.71 distributed-system-analysis#2896). Simplify the python dependencies as much as possible: - RHEL7, RHEL9, CentOS-Stream-9 and the Fedoras have a `python3' package available from the standard distro repos. The actual version varies by distro: 3.6 for RHEL7, 3.9.10 for RHEL9/CentOS-Stream-9, 3.10.0-1 for Fedora 35, 3.10.4-1 for Fedora 36. - RHEL8 and CentOS-Stream-8 have python36, python38 and python39 packages available through the module system. We use the generic `python3' package on most distros, and standardize on `python39' for RHEL8/CentOS-Stream-8. That is mostly treated using a jinja2 loop and a (new) target.json file that generates the separate conditionals for RHEL/CentOS Stream 8 on one hand and the rest on the other. Unfortunately, I had to treat RHEL7 separately from the rest because it is missing a python cffi package that all the others have. I haven't found a clean way to deal with that in jinja2, so it is an explicit RPM conditional in the spec file. Also, the Fedoras are treated separately, at least for now. I am testing by setting the release in subscription-manager now (wherever possible: there is no 7.9 release which I don't understand - this needs investigation - and there is no 9.1 release yet which is understandable). However, that means that RHEL 8.4 and 8.5 have an `ansible' package and 8.6 has an `ansible-core' package available. I've hard-coded `ansible-core' in the spec file (except on RHEL7) which breaks the installation on 8.4 and 8.5. I don't know how to deal with this problem. Modify dockerfile to enable python39. Since we standardized on python39 for CentOS-Stream-8, we enable that module here and stop worrying about python36.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Centos-Stream-8/9: change the 'ansible' dependency to 'ansible-core'.
Everybody else (at least for now) can get its hands on an 'ansible'
package (EPEL packages it for RHEL: it has a dependency on
'ansible-core' and includes some curated roles).