]>
Commit | Line | Data |
---|---|---|
64c4757e | 1 | #!/bin/sh |
f648834d N |
2 | # avoid silly sorting |
3 | export LANG=C | |
56eedc1a NB |
4 | arg=$1 |
5 | target=~/public_html/source/mdadm | |
1e0d770c NB |
6 | if [ " $arg" = " test" ] |
7 | then | |
8 | target=/tmp/mdadm-test | |
9 | rm -rf $target | |
10 | mkdir -p $target | |
11 | fi | |
64c4757e NB |
12 | if [ -d $target ] |
13 | then : | |
14 | else echo $target is not a directory | |
15 | exit 2 | |
16 | fi | |
b379508e | 17 | set `grep '^#define VERSION' ReadMe.c ` |
6f02172d | 18 | version=`echo $3 | sed -e 's/"//g'` |
850a3178 | 19 | grep "^.TH MDADM 8 .. v$version" mdadm.8.in > /dev/null 2>&1 || |
56eedc1a | 20 | { |
850a3178 | 21 | echo mdadm.8.in does not mention version $version. |
b9d77223 N |
22 | exit 1 |
23 | } | |
24 | grep "^.TH MDMON 8 .. v$version" mdmon.8 > /dev/null 2>&1 || | |
25 | { | |
26 | echo mdmon.8 does not mention version $version. | |
56eedc1a NB |
27 | exit 1 |
28 | } | |
39c5a909 NB |
29 | rpmv=`echo $version | tr - _` |
30 | grep "^Version: *$rpmv$" mdadm.spec > /dev/null 2>&1 || | |
56eb10c0 | 31 | { |
11a3e71d | 32 | echo mdadm.spec does not mention version $version. |
56eb10c0 NB |
33 | exit 1 |
34 | } | |
56eedc1a NB |
35 | if [ -f ANNOUNCE-$version ] |
36 | then : | |
37 | else | |
e5329c37 | 38 | echo ANNOUNCE-$version does not exist |
56eedc1a NB |
39 | exit 1 |
40 | fi | |
e5329c37 NB |
41 | if grep "^ANNOUNCE-$version\$" inventory |
42 | then : | |
43 | else { cat inventory ; echo ANNOUNCE-$version ; } | sort -o inventory | |
44 | fi | |
56eedc1a | 45 | |
52826846 | 46 | echo version = $version |
94d7a6c3 | 47 | base=mdadm-$rpmv.tar.gz |
56eedc1a NB |
48 | if [ " $arg" != " diff" ] |
49 | then | |
6f02172d N |
50 | if [ -f $target/$base ] |
51 | then | |
56eedc1a NB |
52 | echo $target/$base exists. |
53 | exit 1 | |
54 | fi | |
55 | trap "rm $target/$base; exit" 1 2 3 | |
94d7a6c3 | 56 | git archive --prefix=mdadm-$rpmv/ HEAD | gzip --best > $target/$base |
56eedc1a NB |
57 | chmod a+r $target/$base |
58 | ls -l $target/$base | |
e5329c37 NB |
59 | if tar tzf $target/$base | sed 's,[^/]*/,,' | sort | diff -u inventory - |
60 | then : correct files found | |
8431b2b2 | 61 | else echo "Extra files, or inventory is out-of-date" |
e5329c37 NB |
62 | rm $target/$base |
63 | exit 1 | |
64 | fi | |
1e0d770c | 65 | rpmbuild -ta $target/$base || exit 1 |
94d7a6c3 | 66 | find ~/rpmbuild/RPMS -name "*mdadm-$version-*" \ |
56eedc1a | 67 | -exec cp {} $target/RPM \; |
8431b2b2 NB |
68 | cp ANNOUNCE-$version $target/ANNOUNCE |
69 | cp ChangeLog $target/ChangeLog | |
1e0d770c NB |
70 | if [ " $arg" != " test" ] |
71 | then | |
1fbc5b7a N |
72 | echo -n "Confirm signing this release? " |
73 | read a | |
74 | if [ " $a" != " y" ]; then echo OK - bye. ; exit 1; fi | |
75 | if zcat $target/$base | gpg -ba > $target/$base.sign && gpg -ba $target/ANNOUNCE | |
76 | then | |
77 | kup put $target/$base $target/$base.sign \ | |
78 | /pub/linux/utils/raid/mdadm/mdadm-$version.tar.gz | |
79 | kup put $target/ANNOUNCE $target/ANNOUNCE.asc /pub/linux/utils/raid/mdadm/ANNOUNCE | |
80 | else | |
81 | echo signing failed | |
82 | exit 1 | |
83 | fi | |
1e0d770c | 84 | fi |
56eedc1a | 85 | else |
6f02172d N |
86 | if [ ! -f $target/$base ] |
87 | then | |
56eedc1a NB |
88 | echo $target/$base does not exist. |
89 | exit 1 | |
90 | fi | |
beca3d00 | 91 | ( cd .. ; ln -s mdadm.v2 mdadm-$version ; tar chf - --exclude=.git --exclude="TAGS" --exclude='*,v' --exclude='*~' --exclude='*.o' --exclude mdadm --exclude=mdadm'.[^ch0-9]' --exclude=RCS mdadm-$version ; rm mdadm-$version ) | gzip --best > /var/tmp/mdadm-new.tgz |
56eedc1a NB |
92 | mkdir /var/tmp/mdadm-old ; zcat $target/$base | ( cd /var/tmp/mdadm-old ; tar xf - ) |
93 | mkdir /var/tmp/mdadm-new ; zcat /var/tmp/mdadm-new.tgz | ( cd /var/tmp/mdadm-new ; tar xf - ) | |
6f02172d | 94 | diff -ru /var/tmp/mdadm-old /var/tmp/mdadm-new |
56eedc1a NB |
95 | rm -rf /var/tmp/mdadm-old /var/tmp/mdadm-new /var/tmp/mdadm-new.tgz |
96 | fi |