~ubuntu-branches/ubuntu/raring/ipython/raring

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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/usr/bin/env python
"""IPython release script.

This should ONLY be run at real release time.
"""
from __future__ import print_function

from toollib import *

# Get main ipython dir, this will raise if it doesn't pass some checks
ipdir = get_ipdir()
tooldir = pjoin(ipdir, 'tools')
distdir = pjoin(ipdir, 'dist')

# Where I keep static backups of each release
ipbackupdir = os.path.expanduser('~/ipython/backup')

# Start in main IPython dir
cd(ipdir)

# Load release info
execfile(pjoin('IPython','core','release.py'))

# Build site addresses for file uploads
release_site = '%s/release/%s' % (archive, version)
backup_site =  '%s/backup/' % archive

# Start actual release process
print()
print('Releasing IPython')
print('=================')
print()
print('Version:', version)
print()
print('Source IPython directory:', ipdir)
print()

# Perform local backup, go to tools dir to run it.
cd(tooldir)
sh('./make_tarball.py')
sh('mv ipython-*.tgz %s' % ipbackupdir)

# Build release files
sh('./build_release %s' % ipdir)

# Register with the Python Package Index (PyPI)
print( 'Registering with PyPI...')
cd(ipdir)
sh('./setup.py register')

# Upload sdists
sh(sdists + ' upload')
cd(distdir)
print( 'Uploading distribution files...')

# Make target dir if it doesn't exist
sh('ssh %s "mkdir -p %s/release/%s" ' % (archive_user, archive_dir, version))
sh('scp * %s' % release_site)

print( 'Uploading backup files...')
cd(ipbackupdir)
sh('scp `ls -1tr *tgz | tail -1` %s' % backup_site)

print('Done!')