[Piuparts-commits] rev 323 - piatti trunk trunk/debian
Holger Levsen
holger at alioth.debian.org
Mon Apr 6 00:20:59 UTC 2009
Author: holger
Date: 2009-04-06 00:20:58 +0000 (Mon, 06 Apr 2009)
New Revision: 323
Added:
trunk/piuparts.1.txt
Modified:
piatti/README.txt
trunk/
trunk/Makefile
trunk/debian/changelog
trunk/debian/control
trunk/piuparts-report.py
trunk/piuparts.docbook
Log:
Add build-dependencies on xmlto.
Remove build-dependencies on docbook2x and docbook-xml.
Rewrite piuparts manpage in asciidoc.
Build and install html version of the piuparts manpage.
Modified: piatti/README.txt
===================================================================
--- piatti/README.txt 2009-04-05 23:24:37 UTC (rev 322)
+++ piatti/README.txt 2009-04-06 00:20:58 UTC (rev 323)
@@ -30,7 +30,7 @@
=== piuparts installation from svn source
-* sudo apt-get install apt python debootstrap lsof lsb-release python-debian make dpkg-dev docbook2x python-support docbook-xml dblatex docbook-xsl asciidoc
+* sudo apt-get install apt python debootstrap lsof lsb-release python-debian make dpkg-dev python-support asciidoc xmlto
* you need a webserver too, if you run the master
* Copy 'svn://svn.debian.org/svn/piuparts/piatti/home/piupartss/bin/update-piuparts-setup' on the host and run it. It assumes you want to set it up in '/org/piuparts.debian.org' and does all further svn checkouts as well as source code installation. It needs the piupartss and piupartsm user set up as described below, though.
* sudo ln -s /org/piuparts.debian.org/etc/ /etc/piuparts
Property changes on: trunk
___________________________________________________________________
Modified: svn:ignore
- README.html
README.pdf
piuparts.1
piuparts
docbook-xsl.css
+ README.html
piuparts.1.html
piuparts
docbook-xsl.css
Modified: trunk/Makefile
===================================================================
--- trunk/Makefile 2009-04-05 23:24:37 UTC (rev 322)
+++ trunk/Makefile 2009-04-06 00:20:58 UTC (rev 323)
@@ -20,17 +20,19 @@
all: install-conf install-doc install
install-doc:
- docbook2x-man --encoding=utf-8 piuparts.docbook
+ # build and install manual
a2x --copy -a toc -a toclevels=3 -f xhtml README.txt
- a2x -a toc -a toclevels=3 -f pdf README.txt
rm README.xml
install -d $(docdir)/
- for file in README.txt README.html docbook-xsl.css README.pdf; do \
+ for file in README.txt README.html docbook-xsl.css ; do \
install -m 0755 $$file $(docdir)/ ; done
-
+ # build and install manpage
+ a2x -f manpage piuparts.1.txt
install -d $(man1dir)
install -m 0644 piuparts.1 $(man1dir)
gzip -9f $(man1dir)/piuparts.1
+ a2x --copy -f xhtml piuparts.1.txt
+ install -m 0755 piuparts.1.html $(docdir)
install-conf:
install -d $(etcdir)/piuparts
@@ -56,4 +58,4 @@
python unittests.py
clean:
- rm -rf piuparts.1 piuparts README.pdf README.html
+ rm -rf piuparts.1 piuparts.1.html piuparts README.html docbook-xsl.css piuparts.html
Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog 2009-04-05 23:24:37 UTC (rev 322)
+++ trunk/debian/changelog 2009-04-06 00:20:58 UTC (rev 323)
@@ -40,8 +40,8 @@
- generate counts.txt (per section) with raw numbers of packages per state,
include these stats in the debug output (so it gets included in the mails
send by cron.)
- - generate sources.txt (per section) with state summary per source package
- (for the PTS to display a source packages piuparts state)
+ - generate sources.txt (per section) with a summary status per source
+ package (for the PTS to display a source packages piuparts state)
- generate html status pages for all source packages (to link from the PTS)
* Break backwards compatibility of the configuration files for master-slave-
mode. Merge those three into one: /etc/piuparts/piuparts/piuparts.conf.
@@ -54,13 +54,16 @@
- split install target into install-doc, install-conf and install, to aid
development and deployment from trunk.
* debian/control: depend on python (>>2.4), make dependency to python-debian
- unversioned and add build-dependencies for debhelper and asciidoc.
+ unversioned and add build-dependencies for debhelper, asciidoc and xmlto.
+ Remove build-dependencies on docbook2x and docbook-xml.
* Rewrite debian/rules using debhelper.
* Merge README, how-to-use-piuparts.txt and custom-scripts.txt into
README.txt, convert it to asciidoc and build pdf and html versions of it.
* Restructure and update README.txt to reflect the configuration changes in
master-slave mode.
* Add NEWS file.
+ * Rewrite piuparts manpage in asciidoc.
+ * Build and install html version of the piuparts manpage.
* Update debian/copyright to reflect that piuparts is licenced under GPL2+.
* Update FSF address in all files referencing the GPL.
* Remove unused file piuparts.css.
Modified: trunk/debian/control
===================================================================
--- trunk/debian/control 2009-04-05 23:24:37 UTC (rev 322)
+++ trunk/debian/control 2009-04-06 00:20:58 UTC (rev 323)
@@ -11,7 +11,7 @@
Priority: extra
Standards-Version: 3.8.0
Build-Depends: debhelper (>=5.0.42), dpkg-dev (>=1.13.26)
-Build-Depends-Indep: docbook2x, python-support, docbook-xml, asciidoc
+Build-Depends-Indep: python-support, asciidoc, xmlto
Vcs-Svn: svn://svn.debian.org/svn/piuparts/trunk/
Vcs-Browser: http://svn.debian.org/wsvn/piuparts/trunk/
Homepage: http://wiki.debian.org/piuparts
Modified: trunk/piuparts-report.py
===================================================================
--- trunk/piuparts-report.py 2009-04-05 23:24:37 UTC (rev 322)
+++ trunk/piuparts-report.py 2009-04-06 00:20:58 UTC (rev 323)
@@ -154,7 +154,7 @@
<tr class="titlerow">
<tr class="normalrow">
<td class="contentcell">
- <a href="/doc/piuparts.html" target="_blank">piuparts manpage</a>
+ <a href="/doc/piuparts.1.html" target="_blank">piuparts manpage</a>
</td>
</tr>
<tr class="titlerow">
Added: trunk/piuparts.1.txt
===================================================================
--- trunk/piuparts.1.txt (rev 0)
+++ trunk/piuparts.1.txt 2009-04-06 00:20:58 UTC (rev 323)
@@ -0,0 +1,168 @@
+piuparts(1)
+===========
+
+NAME
+----
+piuparts - .deb installation, upgrade, and removal testing suite
+
+SYNOPSIS
+--------
+*piuparts* ['-apvV'] ['-d' _distro_] ['-i' _filename_] ['-I' _regexp_] ['-l' _logfile_] ['-m' _url_] ['--bindmount' _dir_] [_package_] [_changes_file_]
+
+DESCRIPTION
+-----------
+*piuparts* tests that Debian packages handle installation, upgrading, and removal correctly. It does this by creating a minimal Debian installation in a chroot, and installing, upgrading, and removing packages in that environment, and comparing the state of the directory tree before and after. *piuparts* reports any files that have been added, removed, or modified during this process.
+
+*piuparts* is meant as a quality assurance tool for people who create Debian packages to test them before they upload them to the Debian package
+archive.
+
+By default, piuparts can do three different tests:
+
+. A simple install-purge test within one Debian distribution (chosen with the '-d' option, unstable by default). It sets up the chroot with the desired distribution, then installs and purges the packages, and reports problems.
+
+. A simple install-upgrade-purge test within one Debian distribution. This test is like the install-purge test, but install the packages first via *apt-get* and then from the package files given on the command line. If the command line has package names (option '-a' used), or the packages are not known to *apt-get* (new packages), this test is skipped, otherwise it is performed automatically.
+
+. An upgrade test between Debian releases. This test is enabled by using the '-d' option multiple times and disables the other two tests. It sets up the chroot with the first distribution named, then upgrades it to each successive one, and then remembers the directory tree state at the end. After this, it starts over with the chroot of the first distribution, installs the desired packages (via *apt-get*), and does the successive upgrading (via *apt-get dist-upgrade*). Then, if package files (and not just package names) were given on the command line, it installs them. Finally, it reports problems against the state of the directory tree at the last distribution compared with the state without the packages having been installed. This test can be quite slow to execute.
++
+Note that this does not work with experimental, because *apt-get* does not automatically upgrade to packages in experimental. To test a particular package or group of packages in experimental, use the second test.
+
+
+Command line arguments are the paths to package files (e.g., _piuparts_1.0-1_all.deb_), paths to changes files (e.g., _piuparts_1.0-1_i386.changes_), or names of packages, if the '--apt' option is given.
+
+When processing changes files, by default, every package in a changes file will be processed together with all individual packages given on the command line. Then each package given on the command line is processed in a single group. If the '--single-changes-list' is used, the packages in every changes file are processed together along with any individual packages that were given on the command line.
+
+*piuparts* outputs to the standard output some log messages to show what is going on. If a log file is used, the messages go there as well.
+
+*piuparts* needs to be run as root.
+
+OPTIONS
+-------
+Options must come before the other command line arguments.
+
+*-a, --apt*::
+ The package arguments on the command line are to be treated as package names and installed via *apt-get* instead of being names of package files, to be installed via *dpkg -i*.
+
+*-b tarball, --basetgz*='tarball'::
+ Use tarball as the contents of the initial chroot, instead of building a new one with debootstrap.
++
+The tarball can be created with the '-s' option, or you can use one that *pbuilder* has created (see '-p'). If you create one manually, make sure the root of the chroot is the root of the tarball.
+
+*-d* 'name', *--distribution*='name'::
+ Which Debian distribution to use: a code name (etch, lenny, sid) or experimental. The default is sid (i.e, unstable).
+
+*-D* 'flavor', *--defaults* 'flavor'::
+ Use default settings suitable for a particular flavor of Debian: either debian or ubuntu.
+
+*-i*' filename', *--ignore*='filename'::
+ Add a filename to the list of filenames to be ignored when comparing changes before and after installation. By default, piuparts ignores files that always change during a package installation and uninstallation, such as *dpkg* status files. The filename should be relative to the root of the chroot (e.g., _var/lib/dpkg/status_). This option can be used as many times as necessary.
+
+*-I* 'regexp', *--ignore-regexp*='regexp'::
+ Add a regular expression pattern to the list of patterns for filenames to be ignored when comparing changes before and after installation. This option can be used as many times as necessary.
+
+*-k, --keep-tmpdir*::
+ Don't remove the temporary directory for the chroot when the program ends.
+
+*--keep-sources-list*::
+ Don't modify the chroot's etc/apt/sources.list (only makes sense with '--basetgz').
+
+*--warn-on-others*::
+ Print a warning rather than failing if files are left behind, modified, or removed by a package that was not given on the command-line.
++
+This way, you can basically isolate the purge test to your own packages. If a package that is brought in as a dependency doesn't purge cleanly, the test will not fail because of it (but a warning message will be printed).
++
+Behavior with multple packages given on the command-line could be problematic, particularly if the dependency tree of one package in the list includes another in the list. Therefore, it is recommended to use this option with one package at a time.
+
+*--skip-minimize*::
+ Allow skip minimize chroot step. This is useful when you want to test several packages with piuparts. You can prepare a tarball already minimized and skip this step in all the tests.
+
+*--list-installed-files*::
+ List the files added to the chroot after the installation of the package and after the installation of the package dependencies.
+
+*--no-upgrade-test*::
+ Skip testing upgrade from an existing version in the archive.
+
+*--skip-cronfiles-test*::
+ Skip testing the output from the cron files left in the system after remove a package.
+
+*--scriptsdir*='DIR'::
+ Directory where are placed the custom scripts. For more information about this, read custom-scripts.txt
+
+*-l* 'filename', *--log-file*='filename'::
+ Write log file to _filename_ in addition to the standard output.
+
+*-m* 'url', *--mirror*='url'::
+ Which Debian mirror to use. The default is the first mirror named in _/etc/apt/sources.list_ or _http://ftp.debian.org/_ if none is found. This option may be used multiple times to use multiple mirrors. Only the first mirror is used with *debootstrap*.
++
+The 'components' that are used for a mirror can also be set with this option: a space separated list within the same argument (so you need to quote the entire argument in the shell). If no components are given explicitly, the usual Debian components are used (main, contrib, and non-free). For the mirrors read from _/etc/apt/sources.list_, the components are read from the same place.
++
+Note that file: addresses works if the directories are made accessible from within the chroot with '--bindmount'.
+
+*--bindmount*='dir'::
+ Bind-mount a directory inside the chroot.
+
+*-n, --no-ignores*::
+ Forget all built-in and other ignores that have been set so far. Any '-i' or '-I' arguments that come after this one will be obeyed, but none of the ones that come before.
+
+*-N, --no-symlinks*::
+ Don't check for broken symlinks.
+
+*-p, --pbuilder*::
+ Use _/var/cache/pbuilder/base.tgz_ as the base tarball. This is a shorthand so that you don't need to use '-b' for it.
+
+*-s* 'filename', *--save*='filename'::
+ Save the chroot, after it has been set up, as a tarball into _filename_. It can then be used with '-b'.
+
+*-t directory, --tmpdir*='directory'::
+ Use directory as the place where temporary files and directories are created. The default is the environment variable *TMPDIR*, or _/tmp_ if not set.
+
+*--single-changes-list*::
+ When processing changes files, piuparts will process the packages in each individual changes file seperately. This option will set piuparts to scan the packages of all changes files together along with any individual package files that may have been given on the command line.
+
+*-v, --verbose*::
+ This option no longer has any meaning, but it is still accepted for backwards compatibility.
+
+*-V, --version*::
+ Write out the version number of the program.
+
+EXAMPLES
+--------
+Assume that you have just built a new version of your Debian package, to be uploaded to Debian unstable. It is in _../foo_1.0-2_i386.deb_ and you would like to know whether it installs and uninstalls properly. Here's what you would do:
+
+piuparts ../foo_1.0-2_i386.deb
+
+If the package exists in the Debian archive already, the above command also tests that it upgrades properly.
+
+To do the same test, but using a particular mirror, and only the main component, you would do this:
+
+piuparts -m 'http://gytha/debian main' ../foo_1.0-2_i386.deb
+
+If you want to do the same as above but for your changes files, pass in your changes files when running piuparts, and piuparts will process each package in the changes files as though you had passed all those packages on the command line to piuparts yourself. For example:
+
+piuparts ../foo_1.0-2_i386.changes
+
+piuparts -m 'http://gytha/debian main' ../foo_1.0-2_i386.changes
+
+If you want to test that a package installs properly in the stable (etch) Debian release, then can be upgraded to the testing (lenny) and unstable (sid) versions, and then uninstalled without problems, you would give the following command:
+
+piuparts -a -d etch -d lenny -d sid foo
+
+ENVIRONMENT
+-----------
+*TMPDIR* Location for temporary files and directories. If not set, use _/tmp_. See also the '-t' ('--tmpdir') option.
+
+NOTES
+-----
+Outputs of commands run by piuparts are limited to the last megabyte. To change this limit, the source code needs to be edited.
+
+SEE ALSO
+--------
+*pbuilder*(1), *debootstrap*(8)
+
+AUTHOR
+------
+Lars Wirzenius (liw at iki.fi)
+
+DATE
+----
+2005-07-10
+
Modified: trunk/piuparts.docbook
===================================================================
--- trunk/piuparts.docbook 2009-04-05 23:24:37 UTC (rev 322)
+++ trunk/piuparts.docbook 2009-04-06 00:20:58 UTC (rev 323)
@@ -1,25 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Copyright 2005 Lars Wirzenius (liw at iki.fi)
-
-This program is free software; you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the
-Free Software Foundation; either version 2 of the License, or (at your
-option) any later version.
-
-This program is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
-
--->
-
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN"
"file:///usr/share/xml/docbook/schema/dtd/4.1.2/docbookx.dtd"
[]>
@@ -27,6 +7,7 @@
<refentry>
<refentryinfo>
+ <title>piuparts(1)</title>
<address>
<email>liw at iki.fi</email>
</address>
More information about the Piuparts-commits
mailing list