I am trying to study migration tool in a vm so that I can avoid a fresh install of leap 16 on main OS.
I have leap 15.6 in a vm. For testing, I added packman and a couple of specialized repos, i.e., education and science for leap 15.6. I ran refresh and updates successfully.
I then installed installed openSUSE-repos-leap and did a reboot and refresh. That added “cdn” repos.
I then ran migration tool unsuccessfully. The repos left by migration tool are as below.
Migration tools stops upgrade saying “Repository ‘repo-oss (15.6)’ is invalid”. See below:
[INFO] Running post-migration task: 10_keepapparmor
[MIGRATION] Drop any SELinux boot options
[MIGRATION] Adding AppArmor boot options
[MIGRATION] Package patterns-base-apparmor is already installed. Skipping.
[INFO] Running post-migration task: 20_ia32
[MIGRATION] Installing packages: grub2-compat-ia32
Refreshing service 'openSUSE'.
Retrieving repository 'repo-oss (15.6)' metadata ....................................................................................[error]
Repository 'repo-oss (15.6)' is invalid.
[openSUSE:repo-oss|http://cdn.opensuse.org/distribution/leap/15.6/repo/oss/x86_64] Failed to retrieve new repository metadata.
History:
- [openSUSE:repo-oss|http://cdn.opensuse.org/distribution/leap/15.6/repo/oss/x86_64] Repository type can't be determined.
Please check if the URIs defined for this repository are pointing to a valid repository.
Warning: Skipping repository 'repo-oss (15.6)' because of the above error.
Some of the repositories have not been refreshed because of an error.
Loading repository data...
Reading installed packages...
Package 'grub2-compat-ia32' not found.
[MIGRATION][ERROR] Package installation failed. Please check zypper logs or try again manually.
Dry run completed, feel free to continue.
tom@localhost:~>
repo-oss exists when putting url into web browser. Anyone with any insights?
I didn’t manually put x86_64 in anywhere. The original repos were installed by the opensuse 15.6 iso in the vm. The system refreshed and updated fine. The cdn repos were added by openSUSE-repos.
Should I try to remove x86_64 manually from all urls?
The repo-oss url when viewed in software management actually has a parameter “$basearch” as the last item in it’s description. Apparently this parameter is evaluated as “x86_64”.
The x86_64 is not the issue.
I have a Leap 15.6 test VM here.
It had the original set of leap 15.6 repos (from service package) including some additional ones. The opensuse-migration-tool --dry-run did not report any errors.
Then i installed the new service file for Leap 16 which adds the x86_64 to the URL and already prepares the repo structure for Leap 16.
The original starting point was with packman and google-chrome. I opted to only keep google-chrome. No issues with the migration.
I wanted to point out, that the issue from tckosvic is not easy to reproduce.
original Leap 15.6 installation with repo service package installed (no x86_64 in URL) and third party repos. the opensuse-migration-tool asks to disable third party repos. I opted to disable one and keep one. No migration issue
then i altered this test system. Replaced openSUSE-repos-leap from Leap 15.6 with the new Leap 16 version as shown above which adds the x86_64 to the URL. opted to keep one third party repo. No migration issue
What i have done manually in the second part of the test scenario, via sudo zypper --releasever 16.0 install openSUSE-repos-Leap, is done automatically by the opensuse-migartion tool as shown below. I additionally added the science repo like the TO, before starting the test.
So not sure why the TO got that error.
[INFO] Disabling repository: science
Would execute: zypper --non-interactive modifyrepo -d science
Selected option: openSUSE Leap 16.0
Would execute: echo Upgrading to openSUSE Leap 16.0
CPU supports x86_64-v2
Would execute: zypper addrepo -f https://download.opensuse.org/distribution/leap/16.0/repo/oss tmp-migration-tool-repo
Would execute: zypper install --repo tmp-migration-tool-repo -y --force-resolution --from tmp-migration-tool-repo openSUSE-repos-Leap
Would execute: zypper removerepo tmp-migration-tool-repo
Would execute: zypper refresh-services
Would execute: zypper --releasever 16.0 dup -y --force-resolution --allow-vendor-change --download-in-advance
For reference here is my url list initially followed by list after openSUSE-repo-leap.
I cannot accept “bad mirror” as that has never occurred in 25 years of downloading.
The problem is not with 3rd party repo is with basic repo-oss.
But @malcolmlewis comment, regarding the service package and third party repos, made me have a second look at the TOs repolist.
This is not the service package provided by Leap 15.6. Something does not match in the story (and your VM setup).
Recreate your VM with the openSUSE-repos-Leap-20250604.94835c9-lp156.2.9.1 from the Leap 15.6 repo.
There is no need to add the openSUSE-repos-Leap package from Leap 16 as you did. The opensuse-migration-tool is adding the correct need repos for the migration.