forked from pool/build-compare
- Show hint if pkg-diff.sh returns non-zero
- Adjust intending in same-build-result.sh - Handle /usr/src/packages/OTHER - Handle "setuid directory" OBS-URL: https://build.opensuse.org/package/show/openSUSE:Tools/build-compare?expand=0&rev=179
This commit is contained in:
parent
30706038f0
commit
393948f2a4
@ -1,3 +1,11 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 13 08:55:39 UTC 2015 - olaf@aepfle.de
|
||||
|
||||
- Show hint if pkg-diff.sh returns non-zero
|
||||
- Adjust intending in same-build-result.sh
|
||||
- Handle /usr/src/packages/OTHER
|
||||
- Handle "setuid directory"
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 20 18:58:22 UTC 2015 - olaf@aepfle.de
|
||||
|
||||
|
@ -689,7 +689,7 @@ check_single_file()
|
||||
return 1
|
||||
fi
|
||||
;;
|
||||
directory|setuid,\ directory|sticky,\ directory)
|
||||
directory|setuid\ directory|setuid,\ directory|sticky,\ directory)
|
||||
# tar might package directories - ignore them here
|
||||
return 0
|
||||
;;
|
||||
|
@ -76,18 +76,19 @@ for opac in ${OLDRPMS[*]}; do
|
||||
oname=`$rpmqp $opac`
|
||||
nname=`$rpmqp $npac`
|
||||
if test "$oname" != "$nname"; then
|
||||
echo "names differ: $oname $nname"
|
||||
exit 1
|
||||
echo "names differ: $oname $nname"
|
||||
exit 1
|
||||
fi
|
||||
case "$opac" in
|
||||
*debuginfo*)
|
||||
echo "skipping -debuginfo package"
|
||||
echo "skipping -debuginfo package"
|
||||
;;
|
||||
*)
|
||||
bash $CMPSCRIPT "$opac" "$npac" || SUCCESS=0
|
||||
if test $SUCCESS -eq 0 -a -z "$check_all"; then
|
||||
bash $CMPSCRIPT "$opac" "$npac" || SUCCESS=0
|
||||
if test $SUCCESS -eq 0 -a -z "$check_all"; then
|
||||
echo "differences between $opac and $npac"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@ -98,43 +99,52 @@ if [ -n "${NEWRPMS[0]}" ]; then
|
||||
fi
|
||||
|
||||
# Compare rpmlint.log files
|
||||
OTHERDIR=/home/abuild/rpmbuild/OTHER
|
||||
|
||||
if test -e $OLDDIR/rpmlint.log -a -e $OTHERDIR/rpmlint.log; then
|
||||
file1=`mktemp`
|
||||
file2=`mktemp`
|
||||
echo "comparing $OLDDIR/rpmlint.log and $OTHERDIR/rpmlint.log"
|
||||
# Sort the files first since the order of messages is not deterministic
|
||||
# Remove release from files
|
||||
sort -u $OLDDIR/rpmlint.log|sed -e "s,$ver_rel1,@VERSION@-@RELEASE@,g" -e "s|/tmp/rpmlint\..*spec|.spec|g" > $file1
|
||||
sort -u $OTHERDIR/rpmlint.log|sed -e "s,$ver_rel2,@VERSION@-@RELEASE@,g" -e "s|/tmp/rpmlint\..*spec|.spec|g" > $file2
|
||||
if ! cmp -s $file1 $file2; then
|
||||
echo "rpmlint.log files differ:"
|
||||
diff -u $file1 $file2 |head -n 20
|
||||
SUCCESS=0
|
||||
fi
|
||||
rm $file1 $file2
|
||||
elif test -e $OTHERDIR/rpmlint.log; then
|
||||
echo "rpmlint.log is new"
|
||||
SUCCESS=0
|
||||
if test -d /home/abuild/rpmbuild/OTHER; then
|
||||
OTHERDIR=/home/abuild/rpmbuild/OTHER
|
||||
elif test -d /usr/src/packages/OTHER
|
||||
OTHERDIR=/usr/src/packages/OTHER
|
||||
else
|
||||
echo "no OTHERDIR"
|
||||
OTHERDIR=
|
||||
fi
|
||||
|
||||
appdatas=`cd $OTHERDIR && find . -name *-appdata.xml`
|
||||
for xml in $appdatas; do
|
||||
# compare appstream data
|
||||
if test -e $OLDDIR/$xml -a -e $OTHERDIR/$xml; then
|
||||
file1=$OLDDIR/$xml
|
||||
file2=$OTHERDIR/$xml
|
||||
if test -n "$OTHERDIR"; then
|
||||
if test -e $OLDDIR/rpmlint.log -a -e $OTHERDIR/rpmlint.log; then
|
||||
file1=`mktemp`
|
||||
file2=`mktemp`
|
||||
echo "comparing $OLDDIR/rpmlint.log and $OTHERDIR/rpmlint.log"
|
||||
# Sort the files first since the order of messages is not deterministic
|
||||
# Remove release from files
|
||||
sort -u $OLDDIR/rpmlint.log|sed -e "s,$ver_rel1,@VERSION@-@RELEASE@,g" -e "s|/tmp/rpmlint\..*spec|.spec|g" > $file1
|
||||
sort -u $OTHERDIR/rpmlint.log|sed -e "s,$ver_rel2,@VERSION@-@RELEASE@,g" -e "s|/tmp/rpmlint\..*spec|.spec|g" > $file2
|
||||
if ! cmp -s $file1 $file2; then
|
||||
echo "$xml files differ:"
|
||||
diff -u0 $file1 $file2 |head -n 20
|
||||
echo "rpmlint.log files differ:"
|
||||
diff -u $file1 $file2 |head -n 20
|
||||
SUCCESS=0
|
||||
fi
|
||||
elif test -e $OTHERDIR/$xml; then
|
||||
echo "$xml is new"
|
||||
rm $file1 $file2
|
||||
elif test -e $OTHERDIR/rpmlint.log; then
|
||||
echo "rpmlint.log is new"
|
||||
SUCCESS=0
|
||||
fi
|
||||
done
|
||||
|
||||
appdatas=`cd $OTHERDIR && find . -name *-appdata.xml`
|
||||
for xml in $appdatas; do
|
||||
# compare appstream data
|
||||
if test -e $OLDDIR/$xml -a -e $OTHERDIR/$xml; then
|
||||
file1=$OLDDIR/$xml
|
||||
file2=$OTHERDIR/$xml
|
||||
if ! cmp -s $file1 $file2; then
|
||||
echo "$xml files differ:"
|
||||
diff -u0 $file1 $file2 |head -n 20
|
||||
SUCCESS=0
|
||||
fi
|
||||
elif test -e $OTHERDIR/$xml; then
|
||||
echo "$xml is new"
|
||||
SUCCESS=0
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if test $SUCCESS -eq 0; then
|
||||
exit 1
|
||||
|
Loading…
Reference in New Issue
Block a user