Permalink
Fetching contributors…
Cannot retrieve contributors at this time
executable file 262 lines (128 sloc) 5.04 KB

NAME

rpmt-py - A transactional RPM (Python version)

SYNOPSIS

rpmt-py [OPTIONS]

DESCRIPTION

rpmt-py is a tool to install, upgrade and erase RPM packages in one transaction, thus allow package sets with complex dependencies to be processed at once while keeping the system in a consistent state.

There was a need for such a program, because the classic front-end to the RPM package manager (rpm) only allows one type of such action in a transaction.

rpmt-py is part of the Quattor administration toolkit, see http://quattor.org for more information about rpmt-py and Quattor.

rpmt-py is inspired on RedHat's rpm and based on rpm-python binding library (itself based on rpmlib).

GENERAL OPTIONS

-h, --help

Print the complete usage message (default if no option is specified).

-V, --version

Print version number of rpmt-py being used.

-q, --quiet

Provide less detailed output.

-v, --verbose

Provide more detailed output.

--dbpath=DIR

Use database in DIR instead of default path.

-rROOT, --root=ROOT

Use ROOT as top level directory (default is /).

INSTALL AND UPGRADE OPTIONS

--allfiles

Install all files, even conf. which might otherwise be skipped.

--excludedocs

Do not install documentation.

--force

Short hand for --replacepkgs --replacefiles.

--ignoresize

Do not check disk space before installing.

--ignorearch

Do not verify package architecture.

--ignoreos

Do not verify package operating system.

--justdb

Update the database, but do not modify the filesystem.

--nodeps

Do not verify package dependencies.

--noorder

Do not reorder package installation to satisfy dependencies.

--noscripts

Do not execute package scriptlet(s).

--notriggers

Do not execute any scriptlet(s) triggered by package(s).

--repackage

Re-package files before erasing.

--replacefiles

Install even if the package replaces installed files.

--replacepkgs

Re-install if the package is already present.

--test

Do not install, but tell if it would work or not.

ERASE OPTIONS

--nodeps

See above.

--noscripts

See above.

--notriggers

See above.

--repackage

See above.

--test

See above.

CACHE OPTIONS

Those options are used when remote packages are included in the input (actions) file. By default, the cache is cleaned after each transaction.

--cachedir=CACHEDIR

Use CACHEDIR when retrieving remote packages (default is /var/cache/rpmt/).

--noclean

Do not clean the cache after running the transaction set, even if the transaction fails. (N.B. as of version 1.0.2 the default behaviour is to leave the cache intact if the transaction fails.)

--forceclean

Always clean the cache after running the transaction set, even if the transaction fails.

PROXY OPTIONS

The following options are related to the use of proxies.

--revproxy=revproxy1.com,revproxy2.org,...

Use reverse proxy servers in priority when retrieving remote packages. This option is used to specify alternative proxy servers where downloading remote packages is required. These proxies are used before the original server specified by the remote package url (within the action file).

--ftpproxy=HOST

The host HOST will be used as a proxy server for all ftp transfers, which allows users to ftp through firewall machines which use proxy systems.

--ftpport=PORT

The TCP PORT number to use for the ftp connection on the proxy ftp server instead of the default port.

--httpproxy=HOST

The host HOST will be used as a proxy server for all http transfers.

--httpport=PORT

The TCP PORT number to use for the http connection on the proxy http server instead of the default port.

VERIFICATION OPTIONS

--nodigest

Do not verify package digest(s).

--nosignature

Do not verify package signature(s).

INPUT FILE OPTION

-iFILE, --in=FILE

The input file describing each action of the transaction to run (See below).

INPUT FILE FORMAT

Each line describes a transaction action (install, up/downgrade, erase). Empty lines and lines beginning with a # are ignored.

A action line must be in one of the following formats:

-i file

Install package in file.

-u file

Upgrade or downgrade package in file.

-e package

Erase package.

You may use URLs in place of files.

DIAGNOSTICS

Exit status is normally 0; if an error occurs, exit status is 1.

AUTHOR

Inspired on rpmt (ANSI/C version) written by Andras NAGY <Andras.Nagy@cern.ch>

Port to rpmlib 4.0.4 by German Cancio <german.cancio@cern.ch>

Re-engineered to rpmlib 4.2.1 by Rafael A. Garcia Leiva <angel.leiva@uam.es>

Re-engineered in Python (using rpm-python) by Nicolas Pinto.

<nicolas.pinto@utbm.fr>

POD ERRORS

Hey! The above document had some coding errors, which are explained below:

Around line 63:

You forgot a '=back' before '=head1'

Around line 65:

'=item' outside of any '=over'

Around line 127:

You forgot a '=back' before '=head1'

Around line 129:

'=item' outside of any '=over'

Around line 151:

You forgot a '=back' before '=head1'

Around line 156:

'=item' outside of any '=over'

Around line 168:

You forgot a '=back' before '=head1'

Around line 172:

'=item' outside of any '=over'

Around line 197:

You forgot a '=back' before '=head1'

Around line 199:

'=item' outside of any '=over'

Around line 209:

You forgot a '=back' before '=head1'

Around line 211:

'=item' outside of any '=over'

Around line 217:

You forgot a '=back' before '=head1'

Around line 224:

'=item' outside of any '=over'