electron/script/upload-windows-pdb.py

49 lines
1.2 KiB
Python
Raw Normal View History

2014-11-07 20:19:26 +08:00
#!/usr/bin/env python
import os
2014-11-07 20:51:25 +08:00
import glob
import sys
2014-11-07 20:19:26 +08:00
2015-04-12 12:00:02 +08:00
from lib.config import s3_config
2016-05-25 09:10:46 -07:00
from lib.util import electron_gyp, execute, rm_rf, safe_mkdir, s3put
2014-11-07 20:19:26 +08:00
SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
SYMBOLS_DIR = 'dist\\symbols'
2014-11-10 23:33:56 +08:00
DOWNLOAD_DIR = 'vendor\\brightray\\vendor\\download\\libchromiumcontent'
2016-05-25 09:10:46 -07:00
PROJECT_NAME = electron_gyp()['project_name%']
PRODUCT_NAME = electron_gyp()['product_name%']
2014-11-07 20:19:26 +08:00
PDB_LIST = [
'out\\R\\{0}.exe.pdb'.format(PROJECT_NAME),
2015-04-11 22:15:50 +08:00
'out\\R\\node.dll.pdb',
2014-11-07 20:19:26 +08:00
]
def main():
os.chdir(SOURCE_ROOT)
rm_rf(SYMBOLS_DIR)
safe_mkdir(SYMBOLS_DIR)
for pdb in PDB_LIST:
run_symstore(pdb, SYMBOLS_DIR, PRODUCT_NAME)
2014-11-07 20:19:26 +08:00
2014-11-07 20:51:25 +08:00
bucket, access_key, secret_key = s3_config()
files = glob.glob(SYMBOLS_DIR + '/*.pdb/*/*.pdb')
2014-11-10 23:07:57 +08:00
files = [f.lower() for f in files]
2014-11-07 20:51:25 +08:00
upload_symbols(bucket, access_key, secret_key, files)
2014-11-07 20:19:26 +08:00
def run_symstore(pdb, dest, product):
execute(['symstore', 'add', '/r', '/f', pdb, '/s', dest, '/t', product])
2014-11-07 20:51:25 +08:00
def upload_symbols(bucket, access_key, secret_key, files):
2014-11-10 23:33:56 +08:00
s3put(bucket, access_key, secret_key, SYMBOLS_DIR, 'atom-shell/symbols',
files)
2014-11-07 20:51:25 +08:00
2014-11-07 20:19:26 +08:00
if __name__ == '__main__':
sys.exit(main())