Maintain and improve your packages with set of tools.
Rebase-helper is a tool which helps package maintainers with updating package to the latest upstream version. It automates a lot of manual tasks the package maintainer usually does, when a new upstream version of a package is released.
Begin installation on Fedora using the
sudo dnf install -y rebase-helper
It requires several other programs like
These programs are installed automatically as dependencies of rebase-helper.
Note: rebase-helper is also available as EPEL-7 package. Feel free to use it on CentOS and RHEL systems.
Rebase-helper workflow can be summarized in following steps:
oldsources and a second one using the
newsources. Available build tools are
newRPMs build fails, downloads logs like build.log and root.log
abipkgdiff. Rebase-helper compares old and new packages and reports results.
Let’s say, we want to rebase a package foobar from
To update to the latest upstream version execute command:
If you do not want to be bothered, use option
After rebase-helper finishes, check the output.
This chapter demonstrates how to include rebase-helper in your upstream monitoring service. If you would like to integrate rebase-helper into your upstream monitoring services, this chapter is for you. Rebase-helper provides an API which you can use either directly from Python, or directly from the command line.
Example of patching new sources and starting scratch builds with fedpkg. This returns task_ids. The bash equivalents are included for comparison:
from rebasehelper.application import Application cli = CLI([‘--non-interactive, ‘--builds-nowait’, ‘-buildtool’, ‘fedpkg’, upstream_version]) rh = Application(cli) rh.set_upstream_monitoring() # Switch rebase-helper to upstream release monitoring mode. rh.run()
rebase-helper --non-interactive --builds-nowait --buildtool fedpkg upstream_version
cli = CLI([‘--non-interactive, ‘--builds-nowait’, ‘--fedpkg-build-tasks old_id,new-id]) rh.run() # Downloads RPMs, logs and runs checkers and provides logs. rh.get_rebasehelper_data() # Get all information about the results
rebase-helper --non-interactive --builds-nowait --fedpkg-build-tasks old_id,new-id