#!/bin/sh # IPython release script PYVER=`python -V 2>&1 | awk '{print $2}' | awk -F '.' '{print $1$2}' ` version=`ipython -Version` ipdir=~/ipython/ipython ipbackupdir=~/ipython/backup echo echo "Releasing IPython version $version" echo "==================================" # Perform local backup cd $ipdir/tools ./make_tarball.py mv ipython-*.tgz $ipbackupdir # Clean up build/dist directories rm -rf $ipdir/build/* rm -rf $ipdir/dist/* # Build source and binary distros cd $ipdir ./setup.py sdist --formats=gztar # Build version-specific RPMs, where we must use the --python option to ensure # that the resulting RPM is really built with the requested python version (so # things go to lib/python2.X/...) #python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4 #python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5 # Build eggs python2.4 ./setup_bdist_egg.py python2.5 ./setup_bdist_egg.py # Call the windows build separately, so that the extra Windows scripts don't # get pulled into Unix builds (setup.py has code which checks for # bdist_wininst) ./setup.py bdist_wininst --install-script=ipython_win_post_install.py # Change name so retarded Vista runs the installer correctly rename 's/win32/win32-setup/' $ipdir/dist/*.exe # Register with the Python Package Index (PyPI) echo "Registering with PyPI..." cd $ipdir ./setup.py register # Upload all files cd $ipdir/dist echo "Uploading distribution files..." scp * ipython@ipython.scipy.org:www/dist/ echo "Uploading backup files..." cd $ipbackupdir scp `ls -1tr *tgz | tail -1` ipython@ipython.scipy.org:www/backup/ echo "Done!"