]>
git.proxmox.com Git - rustc.git/blob - debian/make_orig-dl_tarball.py
11 deb_dir
= os
.path
.dirname(os
.path
.realpath(sys
.argv
[0]))
12 src_root_dir
= os
.path
.realpath(os
.path
.join(deb_dir
, '..'))
13 src_root_parent_dir
= os
.path
.realpath(os
.path
.join(src_root_dir
, '..'))
14 snapshot_dir
= os
.path
.join(src_root_dir
, 'src', 'etc')
16 os
.environ
['CFG_SRC_DIR'] = src_root_dir
18 os
.chdir(src_root_dir
)
19 ps
= subprocess
.Popen('dpkg-parsechangelog', stdout
=subprocess
.PIPE
)
20 version
= ps
.stdout
.read()
21 regex
= re
.compile('^Version:\s*(\S+)\s*$', re
.MULTILINE
)
22 mo
= regex
.search(version
)
25 upstream_version
= version
.split('-')[0]
27 sys
.path
.append(snapshot_dir
)
28 from snapshot
import determine_curr_snapshot
31 for arch
in ('i386', 'x86_64'):
32 snapshots
[arch
] = determine_curr_snapshot(arch
+ '-unknown-linux')
34 http
= urllib3
.PoolManager()
36 def create_dl_tarball():
37 dl_tarfile
= 'rust_' + upstream_version
+ '.orig-dl.tar.gz'
38 dl_tarfile
= os
.path
.join(src_root_parent_dir
, dl_tarfile
)
39 tar
= tarfile
.open(dl_tarfile
, 'w:gz')
40 url_base
= 'https://static.rust-lang.org/stage0-snapshots/'
41 for arch
in snapshots
.iterkeys():
42 snapshot
= snapshots
[arch
]
43 url
= url_base
+ snapshot
44 print 'Downloading', snapshot
, '...',
46 r
= http
.request('GET', url
)
48 assert(r
.status
== 200)
49 filelike
= StringIO
.StringIO(r
.data
)
50 tarinfo
= tarfile
.TarInfo(snapshot
)
51 tarinfo
.size
= len(filelike
.buf
)
52 print 'Writing to', dl_tarfile
, '...',
53 tar
.addfile(tarinfo
, filelike
)