Skip to content
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

Sync sles too on uyuni 2 #7640

Merged
merged 3 commits into from
Oct 6, 2023

Conversation

Bischoff
Copy link
Contributor

@Bischoff Bischoff commented Oct 4, 2023

What does this PR change?

First commit is about cleanup and nitpicks:

  • remove a few duplicated test lines removed
  • When/And
  • unique scenario names
  • homogeneous filtering of packages

Second commit is a refactor done independantly by Oscar and me:

  • isolate the reposync of fake channels

Third commit does the real stuff:

  • synchronize SLES 15 SP 4 on Uyuni (it will go to build host and PXE booted hosts)
  • add a base channel to build host activation key
  • create new channel and activation key for terminal, with SLES 15 SP4 as base channel
  • make sure the PXE-bootstrapped hosts (both Cobbler and Retail) use the build host activation key

It should be followed by a new PR that kills SLES 15 SP4 reposync right after beginning and tests Cobbler on Leap.

Links

Ports:

Changelogs

  • No changelog needed

@Bischoff Bischoff requested a review from a team as a code owner October 4, 2023 10:50
@Bischoff Bischoff marked this pull request as draft October 4, 2023 10:50
@Bischoff Bischoff force-pushed the sync-sles-too-on-uyuni-2 branch 2 times, most recently from 9dfb85d to ba0c61a Compare October 4, 2023 16:14
@Bischoff Bischoff force-pushed the sync-sles-too-on-uyuni-2 branch 5 times, most recently from 1f0ae13 to c7ca9c4 Compare October 5, 2023 13:14
Then "orion-dummy-1.1-1.1.x86_64.rpm" package should have been stored
And solver file for "fake-rpm-suse-channel" should reference "orion-dummy-1.1-1.1.x86_64.rpm"

@uyuni
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would add the tag here (and the other scenarios related) to skip if the deployment of a build host VM is not present.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok.

Copy link
Contributor Author

@Bischoff Bischoff Oct 6, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't do it immediately because we don't have a @pxeboot tag (this channel is for the terminal, not for the build host)

Comment on lines 65 to 89
@scc_credentials
@uyuni
Scenario: Add SLES 15 SP4 product with recommended sub-products for the build host and the terminals
When I follow the left menu "Admin > Setup Wizard > Products"
And I wait until I do not see "Loading" text
And I enter "SUSE Linux Enterprise Server 15 SP4" as the filtered product description
And I wait until I see "SUSE Linux Enterprise Server 15 SP4 x86_64" text
And I open the sub-list of the product "SUSE Linux Enterprise Server 15 SP4 x86_64"
And I open the sub-list of the product "Basesystem Module 15 SP4 x86_64"
And I open the sub-list of the product "Desktop Applications Module 15 SP4 x86_64"
Then I should see that the "Basesystem Module 15 SP4 x86_64" product is "recommended"
And I should see that the "Server Applications Module 15 SP4 x86_64" product is "recommended"
When I select "SUSE Linux Enterprise Server 15 SP4 x86_64" as a product
Then I should see the "SUSE Linux Enterprise Server 15 SP4 x86_64" selected
And I should see the "Basesystem Module 15 SP4 x86_64" selected
And I should see the "Server Applications Module 15 SP4 x86_64" selected
When I select "Desktop Applications Module 15 SP4 x86_64" as a product
And I select "Development Tools Module 15 SP4 x86_64" as a product
Then I should see the "Desktop Applications Module 15 SP4 x86_64" selected
And I should see the "Development Tools Module 15 SP4 x86_64" selected
When I select "Containers Module 15 SP4 x86_64" as a product
Then I should see the "Containers Module 15 SP4 x86_64" selected
When I click the Add Product button
And I wait until I see "SUSE Linux Enterprise Server 15 SP4 x86_64" product has been added
Then the SLE15 SP4 product should be added
Copy link
Member

@srbarrios srbarrios Oct 5, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't we skip this synchronized then?
I understood by your discussion with Ondrej, that having on the build host VM our zypper repositories created coming from OBS development channels would be enough (having those injected through sumaform as we were doing till not many months ago). We will need ofc to enable/disable them when necessary.

That approach would be ideal for our long-term, as if we synchronize the full SLES15SP4 product in Uyuni CI just for this need, we will spending a precious time, and might not be adding real value if what we need here is the content and not that important the fact that this content comes from SCC repositories.

That would also fit better into the refactor I'm working on, otherwise, at very least, we need to include here a last step I developed in order to wait for SLES15SP4 product and all its sub-channels to be fully synced.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mean kill the synchronization ? Yes, that's the idea of a second PR after this one, as explained in the description.

Forget the problem of zypper repositories on build host, it's already solved. We cheat with a zypper install from local repos.

I also discovered that we already directly get the packages for the OS image from our mirror, so we're good there too if we don't reposync.

The problem is with Cobbler. There are two possible solutions at this time (not mutually exclusive):

  • use Leap as test base for Cobbler (1)
  • cheat in the autoyast file to get the packages directly from external repos or our mirror, like we do for Retail (2)

I'd like to first fix the Cobbler and Retail current problems, then try to shorten up the reposync with another PR.


(1) but then Leap must be fully synchronized (so I'm not sure we really win something...)
(2) but then we bypass completely the testing of autoyast variables like here:

 <media_url>http://$redhat_management_server/ks/dist/child/sle-product-sles15-sp4-updates-x86_64/$distrotree</media_url>

and we don't test we have the correct packages on the suse manager server

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like option 2, but I will give a though.

Copy link
Contributor Author

@Bischoff Bischoff Oct 6, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's even likely it's the only one that will work out.

I need to discuss with Dominik and/or you. Didn't we kill the reposync for sles? if we did, how could cobbler tests work? Maybe they didn't and we did never identify this as a source of instability?

@Bischoff Bischoff force-pushed the sync-sles-too-on-uyuni-2 branch 5 times, most recently from 36d0196 to fb198ad Compare October 6, 2023 10:29
@Bischoff Bischoff marked this pull request as ready for review October 6, 2023 11:54
Copy link
Member

@nodeg nodeg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not find any major issues other than what Oscar already mentioned. I am waiting for the second follow-up PR.

Bischoff and others added 2 commits October 6, 2023 14:42
Co-authored-by: Oscar Barrios <obarrios@suse.com>
@Bischoff
Copy link
Contributor Author

Bischoff commented Oct 6, 2023

Tests passed, merging.

@Bischoff Bischoff merged commit 40b2c91 into uyuni-project:master Oct 6, 2023
2 of 8 checks passed
@Bischoff Bischoff deleted the sync-sles-too-on-uyuni-2 branch October 10, 2023 09:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants