#!/bin/sh # Test packages and make sure they are not corrupt # # XXX stale, and better to do this individually at the time the # package is copied in # configurable variables pb=/var/portbuild if [ $# -ne 2 ]; then echo "prunebad " exit 1 fi arch=$1 branch=$2 shift 2 . ${pb}/${arch}/portbuild.conf . ${pb}/scripts/buildenv buildenv ${pb} ${arch} ${branch} cd ${pb}/${arch}/${branch} if [ -f .packagelock ]; then exit; fi touch .packagelock cd packages/All if [ ! -f .packagestamp ]; then newfiles=$(find . -name \*${PKGSUFFIX}) else newfiles=$(find . -name \*${PKGSUFFIX} -newer ../../.packagestamp) fi touch ../../.packagestamp echo Checking $newfiles mkdir -p ${pb}/${arch}/${branch}/bad echo "checking packages" for i in ${newfiles}; do if ! ${PKGZIPCMD} -t $i; then echo "Warning: package $i is bad, moving to ${pb}/${arch}/${branch}/bad" # the latest link will be left behind... mv $i ${pb}/${arch}/${branch}/bad rm ../*/$i fi done cd ../.. rm .packagelock