Update path from CentOS 7.9 to Rocky 9

Hello,
I have found that the official tool used by RedHat for this will be called “ELevate”.

The developers of Alma has build the needed data packages for Rocky 8.

So my path will be CentOS 7.9 → Rocky 8 → Rocky 9.

The manual are here:

I have try it, but it fails with many errors about Python 2 and utf-8 strings.

leapp preupgrade

will fails with:

====> * vendor_signed_rpm_scanner
Provide data about installed RPM Packages signed by Red Hat.
Process Process-250:
Traceback (most recent call last):
File “/usr/lib64/python2.7/multiprocessing/process.py”, line 258, in _bootstrap
self.run()
File “/usr/lib64/python2.7/multiprocessing/process.py”, line 114, in run
self._target(*self._args, **self._kwargs)
File “/usr/lib/python2.7/site-packages/leapp/repository/actor_definition.py”, line 72, in _do_run
actor_instance.run(*args, **kwargs)
File “/usr/lib/python2.7/site-packages/leapp/actors/init.py”, line 290, in run
self.process(*args)
File “/usr/share/leapp-repository/repositories/system_upgrade/common/actors/redhatsignedrpmscanner/actor.py”, line 125, in process
“Package {} is unsigned, packager: {}, signature: {}”.format(pkg.name, pkg.packager, pkg.pgpsig)
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\xfc’ in position 7: ordinal not in range(128)

Have any one any experience with it?

Some news about it.
The python error comes from the fact, that several fields in the rpm package database can contains utf-8 strings. But the tool currently have problems with this fields. So I have informed the developers about it.
As an workaround, remove all packages which contains utf-8 chars. Here an sample call, to find the problematic one(s):
rpm -qa --queryformat="%{=NAME} Version %{=VERSION} packager: %{=PACKAGER} \n"