Skip to content
Preupgrade assistant performs assessment of the system from the "upgradeability" point of view.
Python XSLT HTML Shell JavaScript CSS
Branch: master
Clone or download
bocekm Merge pull request #365 from AloisMahdal/sebool_p
Enable SELinux boolean for preupg UI permanently
Latest commit 54a5504 Nov 1, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Return 22 when both -s and -c options used Oct 26, 2017
data Remove patch that adds commands to scripts.txt Mar 21, 2018
etc Remove legacy config options Mar 6, 2018
packaging Enable SELinux boolean permanently Oct 24, 2018
preupg Bump version to 2.6.1 Sep 5, 2018
tests Prevent using a class variable for multiple purposes Oct 23, 2017
tools Remove preupg-create-group-xml Aug 29, 2017
.gitignore change source folder name from preup to preupg Oct 25, 2016
.landscape.yaml Fix Landscape health icon Sep 5, 2017
LICENSE Releasing preupgrade-assistant Jun 17, 2014 add new preupg-diff tool Mar 2, 2017 Remove not needed pip test requirements Feb 5, 2018 API: complete set of provided directories Jul 11, 2018
pylintrc First GitLab tests Jul 14, 2016
sdist Exit instead of continue if XML template not found Feb 8, 2017 Remove preupg-create-group-xml Aug 29, 2017

The Preupgrade Assistant

Code Health Jenkins CI build status

The Preupgrade Assistant is a framework designed to run the Preupgrade Assistant modules, which analyze the system for possible in-place upgrade limitations. It is based on a modular system, with each module performing a separate test, checking for package removals, incompatible obsolete packages, changes in libraries, users, groups, services, or incompatibilities of command-line options or configuration files. It is able to execute post-upgrade scripts to finalize complex tasks after the system upgrade. Apart from performing the in-place upgrades, the Preupgrade Assistant is also capable of migrating the system. It then produces a report, which assists you in performing the upgrade itself by outlining potential problem areas and by offering suggestions about mitigating any possible incompatibilities. The Preupgrade Assistant utility is a Red Hat Upgrade Tool prerequisite for completing a successful in-place upgrade to the next major version of Red Hat Enterprise Linux.

Building a Preupgrade Assistant package

  • Create the primary packaging source by entering: python sdist --formats=gztar. Note: The other packaging sources are in the packaging/sources/ folder.
  • Build an RPM package by using a specfile in the packaging/ folder:
    rpmbuild -bs packaging/preupgrade-assistant.spec \
      --define "_sourcedir `pwd`/packaging/sources"

Executing the Preupgrade Assistant

  • Install the preupgrade-assistant package.
  • The Preupgrade Assistant requires modules. Either create your own modules by following the tutorial described below, or find modules for Red Hat Enterprise Linux in the Preupgrade Assistant Modules repository.
  • Run the preupg command with root privileges.

Running unit tests

  • Enter the python test command.

Learning how to write modules

To learn how to write modules for the Preupgrade Assistant, see the tutorial located in the doc/module_writing_tutorial file.


See our guidelines on how to contribute to this project.

Contact us on the IRC channel #preupgrade, or write a question as an issue on GitHub.

You can’t perform that action at this time.