Verify packages downloaded by yumdownloader (#229)

This commit is contained in:
Marek Marczykowski 2011-06-23 12:20:14 +02:00
parent 3341ed2c5f
commit 2492505537
5 changed files with 8 additions and 0 deletions

View File

@ -97,6 +97,7 @@ update-repo:
iso: iso:
ln -sf `pwd` /tmp/qubes-installer ln -sf `pwd` /tmp/qubes-installer
revisor --cli --config=conf/qubes-install.conf --model=qubes-x86_64 --install-dvd revisor --cli --config=conf/qubes-install.conf --model=qubes-x86_64 --install-dvd
rpm --checksig build/work/revisor-install/R1-Beta1/qubes-x86_64/x86_64/os/Packages/*.rpm | grep -v pgp && exit 1
clean: clean:
rm -fr rpm/SOURCES/*.bz2 rm -fr rpm/SOURCES/*.bz2

View File

@ -202,6 +202,7 @@ else
BASEARCH=`python -c "import rpmUtils.arch; \ BASEARCH=`python -c "import rpmUtils.arch; \
print rpmUtils.arch.getBaseArch(myarch=rpmUtils.arch.getCanonArch(skipRpmPlatform = True));"` print rpmUtils.arch.getBaseArch(myarch=rpmUtils.arch.getCanonArch(skipRpmPlatform = True));"`
yumdownloader -c $yumconf anaconda || exit 1 yumdownloader -c $yumconf anaconda || exit 1
rpm --checksig anaconda*rpm | grep -v pgp && exit 1
rpm2cpio anaconda*rpm | cpio --quiet -iumd './usr*' rpm2cpio anaconda*rpm | cpio --quiet -iumd './usr*'
rm -f anaconda*rpm rm -f anaconda*rpm
popd popd

View File

@ -1077,6 +1077,7 @@ for KERNELARCH in $arches; do
yumdownloader -c $yumconf --archlist=$KERNELARCH $kpackage yumdownloader -c $yumconf --archlist=$KERNELARCH $kpackage
kpackage="$kpackage.rpm" kpackage="$kpackage.rpm"
rpm --checksig $kpackage.rpm | grep -v pgp && exit 1
if [ ! -f "$kpackage" ]; then if [ ! -f "$kpackage" ]; then
echo "kernel ($kernelvers) doesn't exist for $KERNELARCH. skipping" echo "kernel ($kernelvers) doesn't exist for $KERNELARCH. skipping"
continue continue
@ -1101,12 +1102,14 @@ for KERNELARCH in $arches; do
# expand out any available firmware too # expand out any available firmware too
for p in $(repoquery -c $yumconf '*firmware*') ; do for p in $(repoquery -c $yumconf '*firmware*') ; do
yumdownloader -c $yumconf $p yumdownloader -c $yumconf $p
rpm --checksig *firmware*.rpm | grep -v pgp && exit 1
rpm2cpio *firmware*.rpm | (cd $KERNELROOT; cpio --quiet -iumd) rpm2cpio *firmware*.rpm | (cd $KERNELROOT; cpio --quiet -iumd)
rm -f *firmware*.rpm rm -f *firmware*.rpm
done done
# and get XEN Hypervisor # and get XEN Hypervisor
for p in $(repoquery -c $yumconf 'xen-hypervisor') ; do for p in $(repoquery -c $yumconf 'xen-hypervisor') ; do
yumdownloader -c $yumconf $p yumdownloader -c $yumconf $p
rpm --checksig xen-hypervisor*.rpm | grep -v pgp && exit 1
rpm2cpio xen-hypervisor*.rpm | (cd $KERNELROOT; cpio --quiet -iumd) rpm2cpio xen-hypervisor*.rpm | (cd $KERNELROOT; cpio --quiet -iumd)
rm -f xen-hypervisor*.rpm rm -f xen-hypervisor*.rpm
done done

View File

@ -169,6 +169,7 @@ prepareEfiTree() {
ydcmd="yumdownloader -c $yumconf $grubpkg" ydcmd="yumdownloader -c $yumconf $grubpkg"
echo "(grubpkg) $ydcmd" echo "(grubpkg) $ydcmd"
$ydcmd $ydcmd
rpm --checksig $grubpkg.rpm | grep -v pgp && exit 1
rpm2cpio $grubpkg.rpm | (cd $KERNELROOT; cpio --quiet -iumd) rpm2cpio $grubpkg.rpm | (cd $KERNELROOT; cpio --quiet -iumd)
cp -av $KERNELROOT/boot/efi/EFI/redhat/grub.efi $MBD_BOOTTREE_TMP/EFI/BOOT/grub.efi cp -av $KERNELROOT/boot/efi/EFI/redhat/grub.efi $MBD_BOOTTREE_TMP/EFI/BOOT/grub.efi
@ -195,6 +196,7 @@ prepareEfiTree() {
ydcmd="yumdownloader -c ${yumconf} ${artpkg}" ydcmd="yumdownloader -c ${yumconf} ${artpkg}"
echo "(artpkg) $ydcmd" echo "(artpkg) $ydcmd"
$ydcmd $ydcmd
rpm --checksig ${artpkg}.rpm | grep -v pgp && exit 1
rpm2cpio ${artpkg}.rpm | (cd $KERNELROOT; cpio --quiet -iumd) rpm2cpio ${artpkg}.rpm | (cd $KERNELROOT; cpio --quiet -iumd)
cp -av $KERNELROOT/boot/grub/splash.xpm.gz $MBD_BOOTTREE_TMP/$SPLASHPATH cp -av $KERNELROOT/boot/grub/splash.xpm.gz $MBD_BOOTTREE_TMP/$SPLASHPATH

View File

@ -213,6 +213,7 @@ else
BASEARCH=`python -c "import rpmUtils.arch; \ BASEARCH=`python -c "import rpmUtils.arch; \
print rpmUtils.arch.getBaseArch(myarch=rpmUtils.arch.getCanonArch(skipRpmPlatform = True));"` print rpmUtils.arch.getBaseArch(myarch=rpmUtils.arch.getCanonArch(skipRpmPlatform = True));"`
yumdownloader -c $yumconf anaconda || exit 1 yumdownloader -c $yumconf anaconda || exit 1
rpm --checksig anaconda*rpm | grep -v pgp && exit 1
rpm2cpio anaconda*rpm | cpio --quiet -iumd './usr*' rpm2cpio anaconda*rpm | cpio --quiet -iumd './usr*'
rm -f anaconda*rpm rm -f anaconda*rpm
popd popd