-
Notifications
You must be signed in to change notification settings - Fork 74
Split client tools file #1859
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
Split client tools file #1859
Conversation
fcaa994
to
20737f2
Compare
d003832
to
859d447
Compare
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.
see nitpick
fa7953e
to
1bf8052
Compare
1bf8052
to
615fac0
Compare
@maximenoel8 finally I'm getting there.... Verification from releng
All the client tools, with the exception of Debian/Ubuntu and SL Micro 6 use a Pool (AKA
I'll do it in the PR
yes. As mentioned before I tried to call all the RH clones
this is one of the cases where I hit a wall in the attempt to harmonize the names. Also, I tried to shorten the name in our devel projects, using the acronym In general, our devel projects under
5.0 is unchanged, in 5.1 I managed to get rid of that weird
If you add both you get different content. Looking at the example you shared, not sure what's the final goal.
this is the devel content coming from our devel projects (it's what I think you call nightly).
this is the devel content coming from our devel projects plus the released content. The result is a mix of all the updates released to customers (stable) plus our nightly changes.
I'm confused. Uyuni can't use any content coming from IBS. If you need content from IBS like
Salt shaker is our of releng domain. It's the ION squad using it. I can help with some repos if they ask, but I'm really not using it at all and I can't help you here.
I'll do it in the PR |
I will try to create a review task here to see if it's correct.
What is not correct:
|
For uyuni definition (point 8) |
For Ubuntu and Debian approach (point 7). Probably also relevant for RHEL minion (point 2). This mix of release repositories and development repositories is done for all the products.
I extracted all those repositories depending on version during my testing. There are available here. I was just doing a current state analysis and don't have the full history. I wanted to harmonize this setup to ubuntu and debian. My reasoning is, release repository is what is available and adding the development repositories is to get access to new version. That's what we are actually doing with BV. But I maybe wrong and so the question are:
When I refactor the rhel and deb-like block, the definition was complex and I assume some errors. |
What does this PR change?
The new MLM naming will be too complex to support in a single repos/client_tools.sls file.
To handle this, I propose splitting the file into three, as follows:
client_tools_suma.sls
for 4.3 and 5.0 (and salt shaker ?)client_tools_mlm.sls
for 5.1 and headclient_tools_uyuni.sls
for uyuni (and salt shaker ?)I also refactored the
deblike
andrhellike
blocks to simplify maintenance.Approach
I tried to follow the existing structure but found some inconsistencies. These are summarized in the RelEng review section.
The overall repository setup for MLM and SUMA follows this pattern:
Each client will have those repositories.
Examples
5.1-nightly (SLES15 / SLEMicro):
head (SLES15 / SLEMicro):
5.1-beta (SLES15 / SLEMicro):
Uyuni:
Salt Shaker (no product version):
The current configuration is a mix of Uyuni and release URLs. It's unclear what is actually needed.
Related issue
https://github.com/SUSE/spacewalk/issues/27511
Verification needed by releng
Should they be:
/SUSE/Updates/MultiLinuxManagerTools/MultiLinuxManagerTools
=> client , or/SUSE/Updates/<Client>/MultiLinuxManagerTools
? (this one is empty for debian / ubuntu)I’ve used the first option.
For RHEL on suma
Should we add the release update RHEL repositories by default for all clients?
This seems done for MLM and partially for Salt Shaker (e.g., using Uyuni stable for pool and EL9 update for update).
Example for alma9 on 5.0
New version will be:
tools_pool_repo : http://minima-mirror-ci-bv.mgr.suse.de/SUSE/Products/EL/9-CLIENT-TOOLS/x86_64/product/
tools_update_repo : http://minima-mirror-ci-bv.mgr.suse.de/SUSE/Updates/EL/9-CLIENT-TOOLS/x86_64/update/
tools_additional_repo : http://minima-mirror-ci-bv.mgr.suse.de/ibs/Devel:/Galaxy:/Manager:/5.0:/EL9-SUSE-Manager-Tools/SUSE_EL-9_Update_standard/
Verify repositories for slmicro6 for mlm
Please verify the nightly and head repository paths.
RES8 channel moved to EL8 for 5.1.
It appears to have moved to EL8 for 5.1.
RES7 Channel:
There's an inconsistency between RES7 and EL7 usage in release vs. devel:
http://minima-mirror-ci-bv.mgr.suse.de/SUSE/Products/MultiLinuxManagerTools/RES-7/x86_64/product/x86_64/
Currently, only one tool repository is added for Debian. Should we add the release update repository by default as well?
I followed the SUSE pattern and added it. Is this correct?
Example for 5.0:
In Uyuni, all repositories use the
systemsmanagement:
namespace except the tools_additional_repo for SLEMicro6. Should this be kept or removed?This case is quite unclear — current repos are a mix of SUMA and Uyuni. What should Salt Shaker use? SUMA, MLM, or Uyuni? Pool and update? Just pool?
Example for alma8:
Testing repositories extraction
To verify the changes, I deployed most paths (except 4.3/client) and extracted the repolist.
Directories with old prefixes were deployed with the current client_tools.sls, and new prefixes were deployed using the split version.
I couldn't make sense of the Salt Shaker usage, so I defaulted to the SUMA version for it — though they might not even be needed.
repositories_test.zip