Accepting request 298179 from openSUSE:Tools

Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/298179
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/build-compare?expand=0&rev=88
This commit is contained in:
Dominique Leuenberger 2015-04-23 05:55:42 +00:00 committed by Git OBS Bridge
commit 24ba64deb0
4 changed files with 57 additions and 38 deletions

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Mon Apr 13 08:55:39 UTC 2015 - olaf@aepfle.de
- 2015.04.13
- 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

View File

@ -21,7 +21,7 @@ Summary: Build Result Compare Script
License: GPL-2.0+
Group: Development/Tools/Building
Url: https://github.com/openSUSE/build-compare
Version: 2015.03.20
Version: 2015.04.13
Release: 0
Source1: COPYING
Source2: same-build-result.sh

View File

@ -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
;;

View File

@ -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; then
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