libchromiumcontent/script/bootstrap

41 строка
937 B
Python
Executable File

#!/usr/bin/env python
import contextlib
import os
import shutil
import subprocess
import sys
SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
def main():
os.chdir(SOURCE_ROOT)
result = (subprocess.call(['git', 'submodule', 'sync']) or
subprocess.call(['git', 'submodule', 'update',
'--init', '--recursive']))
if result:
return result
# Setup boto.
with scoped_cwd(os.path.join('vendor', 'boto')):
subprocess.call([sys.executable, 'setup.py', 'build'])
# On windows python assumes all script names end with .py, if we don't
# do so some modules like multiprocessing would break.
shutil.copy(os.path.join('bin', 's3put'), os.path.join('bin', 's3put.py'))
@contextlib.contextmanager
def scoped_cwd(path):
cwd = os.getcwd()
os.chdir(path)
try:
yield
finally:
os.chdir(cwd)
if __name__ == '__main__':
sys.exit(main())