-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 1.8 Date: Thu, 21 Jun 2012 22:17:26 +0200 Source: piuparts Binary: piuparts piuparts-master piuparts-slave piuparts-common Architecture: source all Version: 0.45 Distribution: unstable Urgency: low Maintainer: piuparts developers team <piuparts-devel@lists.alioth.debian.org> Changed-By: Holger Levsen <holger@debian.org> Description: piuparts - .deb package installation, upgrading, and removal testing tool piuparts-common - common piuparts components piuparts-master - piuparts master components piuparts-slave - piuparts slave components Closes: 359154 530733 531134 531135 585861 652934 654423 657740 658044 658962 663702 668752 668756 673919 674498 674672 Changes: piuparts (0.45) unstable; urgency=low . [ Holger Levsen ] * Merge piatti.git into piuparts.git, so that piatti.git has become obsolete now. Update documentation accordingly. * Further split packaging into piuparts-master, piuparts-slave and piuparts-common binary packages (Closes: #585861) and cleanup dependencies. * Update piuparts.NEWS about master+slave packages. * Switch to debhelper8 packaging. * debian/copyright: use versioned URI of the machine-readable copyright file, thanks lintian. * Move /etc/sudoers.d/piuparts to piuparts-slave package. * piuparts-master: depend on tango-icon-theme and drop sunny.png and weather-severe-alert.png and use links instead. * Reviewed and merged/cherry-picked all of the following changes. . [ David Steele ] * Remove debian/postinst as it was only dealing with lenny time area configuration files. * Added server configuration files for apache, sudo, and cron. * Use dh_install, in preparation for multiple package build. * Added packaging to create the piuparts-server package out of the old piatti directory tree (Closes: #652934). - Create and configure piupartss and piupartsm users. - Coordinate ssh keys between master and slave users. - Create working directory tree for each under /var/lib/piuparts * packagesdb.py: - Calculate recursive reverse dependency count, and store in PackagesDB. - Calculate the count of packages being blocked by a failed package. * piuparts-report.py: - Release Section object when section processing is complete. (Closes: #673919) - Display reverse dependency counts and block counts to failure summaries. - Sort the failed-testing and cannot-be-tested summaries by block count. (Closes: #674498) - Replace O(n^2) search in remove_old_logs() with a hash piuparts-report run time improved 20% on mature environment. - Another search fix in create_package_summaries (find_links_to_logs) yielding a 10x speedup for piuparts-report runs. (Closes: #674672) - Cleanup/wrap some long source lines. - Cleanup/wrap some long html lines. - Allow the html root to be changed from / (piuparts.conf: e.g. [global] doc-root = /piuparts/). . [ Andreas Beckmann ] * piuparts.py: - Implement --install-remove-install option to test installation in config-files-remaining state. (Closes: #359154) - Report leftover symlinks with target. - Report leftover directories with a trailing slash. - Allow ignore entries to specifically match directories. - Ignore patterns need to match the full filename, not a substring. - Cleanup and regroup ignore lists. + Remove many obsolete entries not needed for squeeze or later. + Group ignore entries into piuparts state, system state, package management, logfiles, home directories, application data, and HACKS. - Add to ignored_files/ignored_patterns: + Default system logfiles as created by syslogd in /var/log/ + Common empty directories in /etc not removed due to dpkg bug #316521 + cdebconf status files + /boot/grub/ + /etc/X11/default-display-manager + /etc/aliases.db + /etc/apt/trusted.gpg.d/.*.gpg~ + /etc/network/interfaces + /etc/news/whoami + /usr/share/keyrings/debian-archive-removed-keys.gpg~ + /var/crash/ + /var/lib/citadel/(data/.*)? + /var/lib/gozerbot/ + /var/lib/nagios/ (Closes: #668756) + /var/lib/openvswitch/(pki/.*)? + /var/spool/powerdns/ (Closes: #531134, #531135) - Implement a timeout for commands being run in the chroot. - Set time limit to 30 minutes per command. (Closes: #654423) - Terminate all processes running inside the chroot before removing the chroot; also in case piuparts aborts due to an error. - Continue killing running processes as long as new processes get spawned in the chroot. - Perform chroot cleanup after receiving Ctrl-C/SIGINT, too. - Let Chroot register/de-register the cleanup panic handler. - Remove temp_tgz on error exit. - Remove metapackage build directory on error exit. (Closes: #663702) - Don't remove eatmydata when minimizing a chroot. (Closes: #658962) - Add support for version-qualified package arguments (--apt foo=1.2-3). - Switch fallback mirror to http://cdn.debian.net/debian. * piuparts.conf: - Defaults for all [section] settings can be set in the [global] section. - Change master-command to not include the section name so that it can be set in the [global] section. The section name will be given as an argument to this command. - Make doc-root default to "/". - New per section key: area (set to one of main, contrib, non-free). - New defaults: mirror=http://cdn.debian.net/debian, area=main. - Compute URLs from mirror, distro, area, arch. - Removed deprecated keys: known_circular_depends, packages-url, sources-url. * master/db/report: Add a new category /affected/ for failed logs where the bug is in a dependency, but only exposed by the package being tested. - In the BTS these are reported as (Closes: #657740) Package: buggy-package Version: buggy-version Affects: package-under-test Found: package-under-test/tested-version - Reschedule /affected/ logs like /fail/ logs. * piupartslib/conf.py: - Add support for getting default values from a special section. - Add methods to get mirror, distro, area, arch from config file or defaults. - Add methods to compute URLs to Packages and Sources files. * piupartslib/packagesdb.py: - Do not consider a package as "untestable" if untestable/ contains a logfile from an obsolete version of that package. - Simplify handling of package and dependency states. - Do not inherit 'dependency-does-not-exist' state (which may be fixed in the package) but propagate it to 'dependency-cannot-be-tested'. - Remove 'no-dependency-from-alternatives-exists' state and use 'dependency-does-not-exist' instead. - Remove 'unknown-preferred-alternative' state as it interferes with circular dependencies involving alternatives and virtual packages. - Fix state resolution of package dependencies containing alternatives, virtual packages and circular dependencies. - Remove 'circular-dependency' state. - Stop using static known_circular_depends. - Compute dependency cycles and test packages on such cycles if all non-circular dependencies are satisfied. - Consider any combination of two error states for the blocking count. - Always run create_subdirs() during initialization. * piuparts-master.py: - Remove known_circular_depends handling. - Reduce logfile verboseness: do not include received logs. - Always chdir to master_directory, do not rely on being run from there. - Record timestamps of submitted logs in submissions.txt. * piuparts-slave.py: - Randomize waiting time (between 60 and 180 seconds) if master is busy. - Sleep until the next section can be tried, but at least 1 minute. - Simplify and merge Section.setup() into Section.__init__(). - Generate master command: use global setting and append section. - Test the 'dpkg' package for creating/updating a base_tgz. - Don't update the tarball for disabled sections. - Rewrite starting piuparts. - Rewrite stopping piuparts for more reliable cleanup. - Introduce Ctrl-C/SIGINT handling: press Ctrl-C once to exit after the current piuparts test has finished, press Ctrl-C again to cleanly terminate the currently running test, press Ctrl-C again to abort any ongoing cleanup. - Pass a version qualified package name (foo=1.2-3) to piuparts to ensure the correct package version gets tested. - Increase verboseness for untestable packages. - Remove idle.stamp functionality. * piuparts-report.py: - Remove known_circular_depends handling. - Exclude obsolete states from generated report. - Establish packagesdb working directory in Section. - Handle logs in /affected/ directories. - detect_well_known_errors: Add bug links if bugs are known. - New known problem: "packages have been kept back". - Report rdeps and blocking counts in all error state reports. - Fix another race with logfiles disappearing while copying. * piuparts-analyze.py: - Don't report further bugs/versions if we found a match. - Classify logs with bugs filed into /bugged/ or /affected/. - Write .bug files with links to the BTS. * detect_archive_issues: Only consider logs older than one day for marking as "untestable" to allow piuparts-analyze to handle the log first. * Replace all references to lenny and squeeze with squeeze and wheezy. * Add/update several bug reporting templates. * Add custom scripts to aid debugging common problems in maintainer scripts. * Add custom script for squeeze to ensure adduser, ucf, and install-info are not purged. * Add custom scripts to enable/perform additional cleanup procedures to reduce the "FAIL: Package purging left files on system" errors if --warn-on-leftovers-after-purge is not used. (Closes: #668752) * Ship custom scripts in the piuparts package. * Comment sudoers and crontabs shipped in the master/slave packages, requiring explicit editing after installation to activate them. * Bump debhelper and dpkg dependencies for using dpkg-maintscript-helper. * Remove obsolete /etc/piuparts/piuparts.conf from old piuparts package. * Ship /etc/piuparts/piuparts.conf in the piuparts-slave package. * Create missing home directories if the piupartsm/piupartss users remain from a previously purged installation. . [ Leo Iannacone ] * piuparts.py: add --existing-chroot option, specify a directory as source for the chroot, instead of building a new one with debootstrap or decompressing an archived one. (Closes: #658044) . [ Mika Pflüger ] * piuparts.py: Remove obsolete functions shellquote, apt_get_knows, and append_to_file. . [ Mehdi Abaakouk ] * piuparts.py: Add support for schroot. (Closes: #530733) Checksums-Sha1: 1e3bf68fb0f8b1ab05a549e820be16212a7f9e80 1829 piuparts_0.45.dsc de3878bd35b831a31821fe664245c274275ce66c 148621 piuparts_0.45.tar.gz 037537b59636651a1cff0346f0805c01110ffa8f 82718 piuparts_0.45_all.deb 8cc7560dc04a134cc13174d21a4729d5243052c9 76054 piuparts-master_0.45_all.deb 25fe88bc904a88b19821cc94675886c7c3a25c5a 33560 piuparts-slave_0.45_all.deb 607e9025f6b3f93222c67a0eab68f6aff68a8441 31578 piuparts-common_0.45_all.deb Checksums-Sha256: 884e81896e068203de6ca9d217b59d62d6d0e76fa4b2f3b8bb3e9b25202e716d 1829 piuparts_0.45.dsc d0df980a327ab5767622bae28aaf6188e5a72de32922e32eb956d678c095315c 148621 piuparts_0.45.tar.gz 4e912a317f355d6a7dd89ffb54ff4363a37afafa9426ef6152e7bfcb7de9aa51 82718 piuparts_0.45_all.deb da43a6dacff3c6d0ff0f291db8dcd5975862dc1a0a29e9dfa0112bff32bcd674 76054 piuparts-master_0.45_all.deb dd464f6efb40a9f7f33f5bc4f170b66dca80d3747dc1f9eaac4704b314b286b3 33560 piuparts-slave_0.45_all.deb 8778a563bc71e521d726eec2f172127ce9bd66c43d20202d467fced144c07986 31578 piuparts-common_0.45_all.deb Files: d820812610ec2a145c44904740bd0b55 1829 devel extra piuparts_0.45.dsc 904ef75d39fc0fb5797668c9cf8591e2 148621 devel extra piuparts_0.45.tar.gz 8c76de74556daa82227a30526e3cc3c5 82718 devel extra piuparts_0.45_all.deb c39d5634cd8f3b6be7ec1f876b2d606a 76054 devel extra piuparts-master_0.45_all.deb afcb9608a2d62a4ece3500b34e2063c0 33560 devel extra piuparts-slave_0.45_all.deb 2a66851fd6806b5bc04d13a016ba9c2c 31578 devel extra piuparts-common_0.45_all.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iQIVAwUBT+OCxAkauFYGmqocAQgZmw//Ug5Va7hgQNDqn91GZZh8zZ7qy6Rpjvjj vhYpKb8IkhZ0rUkQPSTX99DNihcDqpVCgGWQHGJk2zoBWdK2fztKXZzXXxvJfAna vzF4oz5cZK3jp5/TTkkcpolB8MjAVomwbsPHdMFSdhyLAxaDaKOFOqE6wG2z8ClX zXi4fCGEVpCaqdveQSjX1bGOrrB44/zTdaxc8eaUnxLOY69jlbDCZnn0D2g5Oelf 2W446B2SbaLJNupNs7bbYFgDFUq8Zkxn2s7XFlnOXS7Y14o//ivOuMijc+nMCEgC cLSpoMg+FG2m29+YWrWFhHJfGj98EDAGgmuAaCz1Wt7WGv1n5OZRqVANO2+xbedd 2rf0Immb+5PVgCJI0jaboE+FuJW8n0uQ9Dmi/s0YPDQc5vaBA4XBqjyoTbTbl3Mi nIjEOoYWQuhGgAYNfJACds3L5kFPpIRVpkP5eTHOKxXfUekmnP4ww5FxY/7/CaVL X97LHBZVOiIBamNCv/pjXbYkUSaboqdwjqPpL8WDPGsMtCCdVpGhNbG0BTAbXjX5 40/K8aLgdaxzD7+0hMmNGfKGmqa/CSzjcTit2kjq8nQW+MfBnazwTk3XPmNwTMCZ WLUOzZ/VXlZ5PsNmKsnXXw/yLgzdktgf5zQeuTuoTm9PMNNfoudYV0rXgx8ICso0 XEO6tnRSgqo= =DC+j -----END PGP SIGNATURE----- Accepted: piuparts-common_0.45_all.deb to main/p/piuparts/piuparts-common_0.45_all.deb piuparts-master_0.45_all.deb to main/p/piuparts/piuparts-master_0.45_all.deb piuparts-slave_0.45_all.deb to main/p/piuparts/piuparts-slave_0.45_all.deb piuparts_0.45.dsc to main/p/piuparts/piuparts_0.45.dsc piuparts_0.45.tar.gz to main/p/piuparts/piuparts_0.45.tar.gz piuparts_0.45_all.deb to main/p/piuparts/piuparts_0.45_all.deb