You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.2 KiB
35 lines
1.2 KiB
from leapp.models import fields, Model
|
|
from leapp.topics import SystemInfoTopic
|
|
|
|
|
|
class DNFWorkaround(Model):
|
|
"""
|
|
DNFWorkaround is used to register scripts, that have to be executed to apply modifications to the system,
|
|
just before DNF performs a transaction in order for it to succeed.
|
|
|
|
As an example in the case of the RHEL7 to RHEL8 upgrade, we have to execute a script to fixup the way how
|
|
yum and dnf symlinks are created as they cannot be replaced by RPM. To solve this we have created the
|
|
handleyumconfig tool in the system_upgrade/el7toel8 repository and register the workaround with the
|
|
registeryumadjustment actor.
|
|
"""
|
|
topic = SystemInfoTopic
|
|
|
|
script_path = fields.String()
|
|
"""
|
|
Absolute path to a bash script to execute
|
|
"""
|
|
|
|
script_args = fields.List(fields.String(), default=[])
|
|
"""
|
|
Arguments with which the script should be executed
|
|
|
|
In case that an argument contains a whitespace or an escapable character,
|
|
the argument must be already treated correctly. e.g.
|
|
`script_args = ['-i', 'my\\ string']
|
|
"""
|
|
|
|
display_name = fields.String()
|
|
"""
|
|
Name to display for this script when executed
|
|
"""
|