##// END OF EJS Templates
Minor updates to release scripts, new backup one using SVN (a lot simpler).
fperez -
Show More
@@ -0,0 +1,22 b''
1 #!/bin/sh
2
3 # Simple backup script for ipython, to keep around a static copy of the whole
4 # project at the current version point. We do this by exporting from SVN.
5
6 # Config here
7 IPYTHONSVN=$HOME/ipython/svn/ipython/trunk
8 BACKUPDIR=$HOME/ipython/backup
9
10 ####
11 # Code begins
12 IPVERSION=`ipython -Version`
13 IPX=ipython-$IPVERSION
14 ARCHIVE=$BACKUPDIR/$IPX.tgz
15
16 svn export $IPYTHONSVN $IPX
17
18 tar czf $ARCHIVE $IPX
19
20 rm -rf $IPX
21
22 echo "Backup left in: $ARCHIVE"
@@ -1,102 +1,95 b''
1 1 #!/bin/sh
2 2 # IPython release script
3 3
4 4 PYVER=`python -V 2>&1 | awk '{print $2}' | awk -F '.' '{print $1$2}' `
5 5 version=`ipython -Version`
6 6 ipdir=~/ipython/ipython
7 7
8 8 echo
9 9 echo "Releasing IPython version $version"
10 10 echo "=================================="
11 11
12 12 echo "Marking ChangeLog with release information and making NEWS file..."
13 13
14 14 # Stamp changelog and save a copy of the status at each version, in case later
15 15 # we want the NEWS file to start from a point before the very last release (if
16 16 # very small interim releases have no significant changes).
17 17
18 18 cd $ipdir/doc
19 19 cp ChangeLog ChangeLog.old
20 20 cp ChangeLog ChangeLog.$version
21 21 daystamp=`date +%Y-%m-%d`
22 22 echo $daystamp " ***" Released version $version > ChangeLog
23 23 echo >> ChangeLog
24 24 cat ChangeLog.old >> ChangeLog
25 25 rm ChangeLog.old
26 26
27 27 # Build NEWS file
28 28 echo "Changes between the last two releases (major or minor)" > NEWS
29 29 echo "Note that this is an auto-generated diff of the ChangeLogs" >> NEWS
30 30 echo >> NEWS
31 31 diff ChangeLog.previous ChangeLog | grep -v '^0a' | sed 's/^> //g' >> NEWS
32 32 cp ChangeLog ChangeLog.previous
33 33
34 34 # Clean up build/dist directories
35 35 rm -rf $ipdir/build/*
36 36 rm -rf $ipdir/dist/*
37 37
38 38 # Perform local backup
39 39 cd $ipdir/tools
40 ./bkp.py
40 ./bkp.sh
41 41
42 42 # Build source and binary distros
43 43 cd $ipdir
44 44 ./setup.py sdist --formats=gztar
45 #./setup.py bdist_rpm --release=py$PYVER
46 python2.3 ./setup.py bdist_rpm --release=py23 --python=/usr/bin/python2.3
47 45
48 # A 2.4-specific RPM, where we must use the --python option to ensure that
49 # the resulting RPM is really built with 2.4 (so things go to
50 # lib/python2.4/...)
46 # Build version-specific RPMs, where we must use the --python option to ensure
47 # that the resulting RPM is really built with the requested python version (so
48 # things go to lib/python2.X/...)
49 python2.3 ./setup.py bdist_rpm --release=py23 --python=/usr/bin/python2.3
51 50 python2.4 ./setup.py bdist_rpm --release=py24 --python=/usr/bin/python2.4
52 51
53 # Build eggs
54 python2.3 ./eggsetup.py bdist_egg
55 python2.4 ./eggsetup.py bdist_egg
52 # Build egg
53 ./eggsetup.py bdist_egg
56 54
57 55 # Call the windows build separately, so that the extra Windows scripts don't
58 56 # get pulled into Unix builds (setup.py has code which checks for
59 57 # bdist_wininst)
60 #./setup.py bdist_wininst --install-script=ipython_win_post_install.py
61
62 # For now, make the win32 installer with a hand-built 2.3.5 python, which is
63 # the only one that fixes a crash in the post-install phase.
64 $HOME/tmp/local/bin/python2.3 setup.py bdist_wininst \
65 --install-script=ipython_win_post_install.py
58 ./setup.py bdist_wininst --install-script=ipython_win_post_install.py
66 59
67 60 # Register with the Python Package Index (PyPI)
68 61 echo "Registering with PyPI..."
69 62 cd $ipdir
70 63 ./setup.py register
71 64
72 65 # Upload all files
73 66 cd $ipdir/dist
74 67 echo "Uploading distribution files..."
75 68 scp * ipython@ipython.scipy.org:www/dist/
76 69
77 70 echo "Uploading backup files..."
78 71 cd ~/ipython/backup
79 72 scp `ls -1tr | tail -1` ipython@ipython.scipy.org:www/backup/
80 73
81 74 echo "Updating webpage..."
82 75 cd $ipdir/doc
83 76 www=~/ipython/homepage
84 77 cp ChangeLog NEWS $www
85 78 rm -rf $www/doc/*
86 79 cp -r manual.pdf manual/ $www/doc
87 80 cd $www
88 81 ./update
89 82
90 83 # Alert package maintainers
91 84 echo "Alerting package maintainers..."
92 85 maintainers='fperez@colorado.edu ariciputi@users.sourceforge.net jack@xiph.org tretkowski@inittab.de dryice@hotpop.com willmaier@ml1.net'
93 86 #maintainers='fperez@colorado.edu'
94 87
95 88 for email in $maintainers
96 89 do
97 90 echo "Emailing $email..."
98 91 mail -s "[Package maintainer notice] A new IPython is out. Version: $version" \
99 92 $email < NEWS
100 93 done
101 94
102 95 echo "Done!"
@@ -1,28 +1,30 b''
1 1 #!/bin/sh
2 2
3 3 # release test
4 4
5 5 # clean up build/dist directories
6 6 rm -rf ~/ipython/ipython/build/*
7 7 rm -rf ~/ipython/ipython/dist/*
8 8
9 9 # build source distros
10 10 cd ~/ipython/ipython
11 11
12 12 ./setup.py sdist --formats=gztar
13 13
14 # Build rpms
14 15 python2.3 ./setup.py bdist_rpm --release=py23 --python=/usr/bin/python2.3
15 16 python2.4 ./setup.py bdist_rpm --release=py24 --python=/usr/bin/python2.4
16 17
17 18 # Build eggs
18 python2.3 ./eggsetup.py bdist_egg
19 python2.4 ./eggsetup.py bdist_egg
19 ./eggsetup.py bdist_egg
20 20
21 21 # Call the windows build separately, so that the extra Windows scripts don't
22 22 # get pulled into Unix builds (setup.py has code which checks for
23 23 # bdist_wininst)
24 24
25 25 # For now, make the win32 installer with a hand-built 2.3.5 python, which is
26 26 # the only one that fixes a crash in the post-install phase.
27 $HOME/tmp/local/bin/python2.3 setup.py bdist_wininst \
28 --install-script=ipython_win_post_install.py
27 #$HOME/tmp/local/bin/python2.3 setup.py bdist_wininst \
28 # --install-script=ipython_win_post_install.py
29
30 ./setup.py bdist_wininst --install-script=ipython_win_post_install.py
General Comments 0
You need to be logged in to leave comments. Login now