virtualenv / refresh-support-files.py

"""
Refresh any files in support-files/ that come from elsewhere
"""

import os
import urllib
import sys

here = os.path.dirname(__file__)
support_files = os.path.join(here, 'support-files')

files = [
    ('http://peak.telecommunity.com/dist/ez_setup.py', 'ez_setup.py'),
    ('http://pypi.python.org/packages/2.5/s/setuptools/setuptools-0.6c9-py2.5.egg', 'setuptools-0.6c9-py2.5.egg'),
    ('http://pypi.python.org/packages/2.4/s/setuptools/setuptools-0.6c9-py2.4.egg', 'setuptools-0.6c9-py2.4.egg'),
    ]

def main():
    for url, filename in files:
        print 'fetching', url, '...',
        sys.stdout.flush()
        f = urllib.urlopen(url)
        content = f.read()
        f.close()
        print 'done.'
        filename = os.path.join(support_files, filename)
        if os.path.exists(filename):
            f = open(filename, 'rb')
            cur_content = f.read()
            f.close()
        else:
            cur_content = ''
        if cur_content == content:
            print '  %s up-to-date' % filename
        else:
            print '  overwriting %s' % filename
            f = open(filename, 'wb')
            f.write(content)
            f.close()

if __name__ == '__main__':
    main()
    
            
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.