Adrian Schröter
569ce08603
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Tools/release-compare?expand=0&rev=1
44 lines
1.2 KiB
Bash
44 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
out=/.build.packages/obsgendiff
|
|
outreleased=/.build.packages/obsgendiff.released
|
|
|
|
echo "Running obsgendiff data differ..."
|
|
|
|
# extract released obsgendiff aggregates
|
|
for obsgendiff in /.build.packages/SOURCES/*.obsgendiff; do
|
|
[ -e "$obsgendiff" ] || continue
|
|
mkdir -p "${outreleased}"
|
|
tar xfv "$obsgendiff" -C "${outreleased}"
|
|
done
|
|
|
|
# create changelogs based on the packaged rpms
|
|
mkdir -p $out/{changelogs,disturl}
|
|
for packages in /.build.packages/KIWI/*.packages; do
|
|
cat "$packages" | while read line; do
|
|
IFS='|' read -r -a a <<< "$line"
|
|
name="${a[0]}"
|
|
rpm="${name}.rpm"
|
|
|
|
# only the worker knows where it was downloaded from....
|
|
file=`find /.build.packages/SOURCES/repos/ -name $rpm`
|
|
rpm -qp "$file" --changelog 2>/dev/null > $out/changelogs/${name}
|
|
rpm -qp "$file" --qf '%{DISTURL}\n' 2>/dev/null > $out/disturl/${name}
|
|
done
|
|
|
|
# create archive
|
|
cd $out
|
|
gendiff=${packages%.packages}.obsgendiff
|
|
tar cfJ /.build.packages/OTHER/${gendiff##*/} *
|
|
cd -
|
|
done
|
|
|
|
# create diff to released archive
|
|
# NOTE: it had to be published or it won't exist
|
|
if [ -d "${outreleased}" ]; then
|
|
diff -urN "${outreleased}/" "$out/" > /.build.packages/OTHER/changelog.diff
|
|
fi
|
|
|
|
exit 0
|
|
|