File: make_release.sh

package info (click to toggle)
python-fuse 1%3A0.2-pre3-9
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 308 kB
  • ctags: 281
  • sloc: python: 962; ansic: 951; sh: 42; makefile: 11
file content (36 lines) | stat: -rw-r--r-- 1,492 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/sh -e

# Works only in the hg repo incarnation of the source tree.
# Mercurial, docutils, setuptools needs to be installed.

setupdotpy_version=`python setup.py -V`

# Finding out Mercurial cset until which we want to log
hgid=`hg id | awk '{print $1}'`
if echo $hgid | grep -q '+$'; then
    echo "you have outstanding changes, don't make a release" >&2
    exit 1
fi
hgrev=`hg log --template '{node|short} {rev}\n' | awk "{if (\\$1 ~ /$hgid/) { print \\$2 }}"`
hgtiprev=`hg log --template '{rev}' -r tip`
if ! [ $hgrev -eq $hgtiprev ]; then
    (echo "*************"
     echo "Warning: you are making a release from an older state of the code!"
     echo "*************") >&2
fi
if hg log --template '{tags}' -r $hgid | egrep -q "(^| )$setupdotpy_version($| )"; then
    log_to=$hgid
elif [ $hgrev -gt 0 ] &&
     hg log --template '{desc}' -r $hgid |  grep -q "Added tag $setupdotpy_version for changeset" &&
     hg log --template '{tags}' -r $(($hgrev - 1)) | egrep -q "(^| )$setupdotpy_version($| )"; then
    log_to=$(($hgrev - 1))
else
    echo "HG tag '$hg_tag' doesn't match reported program version '$setupdotpy_version'" >&2
    exit 1
fi

hg log --style util/fusepychangelog.tmpl -r $log_to:0 > Changelog
rst2html.py --stylesheet util/voidspace-fusepy.css README.new_fusepy_api > README.new_fusepy_api.html
(hg manif | grep -v '^\.' && echo Changelog && echo README.new_fusepy_api.html) | sed 's/^/include /' > MANIFEST.in
python setup.py sdist
python setup.py bdist_egg