[Piuparts-devel] Bug#766543: fails upgrading real to virtual packages (missing --auto-deconfigure)
Andreas Beckmann
anbe at debian.org
Fri Nov 21 15:44:36 UTC 2014
On 2014-11-21 16:03, Holger Levsen wrote:
> On Freitag, 21. November 2014, Andreas Beckmann wrote:
>> Please use the --testdebs-repo approach for complex¹ upgrade scenarios.
>> The 'pass multiple .deb files' and 'pass .changes' approaches are not
>> able to do realistic updates (or even installation). So let's not add
>> another hack to a broken feature (using dpkg to manually install packages)
>>
>> ¹ involving more than one package
>
> shouldn't we then a.) either remove the feature or b.) more clearly spell out
> the problems?
b), and offer an easy way to do this: hand one (or more) .changes
file(s) or a local repository to a wrapper script and have that torture
all the packages found in there with piuparts. Maybe give a hint if you
are interested in testing upgrades from something else than stable,
testing and unstable to your packages.
once that works sufficiently well, we can do a), too.
Andreas
PS: I sometimes use something based on this script, but it is in no way
automatic
MIRROR=http://ftp.de.debian.org/debian
TARBALLDIR=/srv/piuparts/slave/basetgz
LOCAL=/tmp/000
#URL=http://
SUBDIR=.
logprefix=xx000
#FROM=lenny
#FROM=squeeze
FROM=wheezy
#VIA=squeeze
#VIA=squeeze-backports
#VIA=wheezy
#VIA=wheezy-backports
#VIA=jessie
#TO=squeeze
#TO=wheezy
#TO=jessie
TO=sid
#NO_UPGRADE_TEST=--no-upgrade-test
#WARN_ON_LEFTOVERS_AFTER_PURGE=--warn-on-leftovers-after-purge
#INSTALL_RECOMMENDS=--install-recommends
ARCH=amd64
#ARCH=i386
DISTRO=${FROM:-$TO}
if [ -n "$LOCAL" ]; then
URL=file://$LOCAL
GET_PACKAGES="cat $LOCAL/Packages"
else
GET_PACKAGES="wget $URL/$SUBDIR/Packages -O -"
fi
DEBS=$($GET_PACKAGES | perl -ne '$p = $1 if /^Package: (.*)/; print
"$p=$1\n" if /^Version: (.*)/;')
for p in $DEBS
do
v=${p#*=}
p=${p%=*}
l=${logprefix}${FROM:+-$FROM}${VIA:+-$VIA}${TO:+-$TO}_$p
test ! -f $l.log || continue
rm -f $l.log $l.faillog
sudo nice \
env
PYTHONPATH=/org/piuparts.debian.org/lib/python2.7/dist-packages \
~/bin/piuparts \
--skip-logrotatefiles-test \
--scriptsdir /etc/piuparts/scripts \
--warn-on-others \
--allow-database \
--proxy http://localhost:3128 \
${MIRROR:+--mirror $MIRROR} \
--tmpdir /tmp/piupartss \
-b ${TARBALLDIR:-.}/${DISTRO}_${ARCH}.tar.gz \
${FROM:+-d $FROM} \
${VIA:+-d $VIA} \
${TO:+-d $TO} \
--log-file $l.log \
${LOCAL:+--bindmount $LOCAL} \
--testdebs-repo "deb $URL $SUBDIR/" \
--do-not-verify-signatures \
--distupgrade-to-testdebs \
--dpkg-noforce-unsafe-io \
$NO_UPGRADE_TEST \
$WARN_ON_LEFTOVERS_AFTER_PURGE \
$INSTALL_RECOMMENDS \
--apt $p=$v
test $? = 0 || mv $l.log $l.faillog
done
More information about the Piuparts-devel
mailing list