Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(565)

Side by Side Diff: chrome/common/extensions/docs/server2/build_server.py

Issue 10546078: Extension docs server: APIDataSource (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Minor changes Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 # This script is used to copy all dependencies into the local directory. 6 # This script is used to copy all dependencies into the local directory.
7 # The package of files can then be uploaded to App Engine. 7 # The package of files can then be uploaded to App Engine.
8 import os 8 import os
9 import shutil 9 import shutil
10 import sys 10 import sys
11 11
12 THIRD_PARTY_DIR = os.path.join(sys.path[0], os.pardir, os.pardir, os.pardir, 12 THIRD_PARTY_DIR = os.path.join(sys.path[0], os.pardir, os.pardir, os.pardir,
13 os.pardir, os.pardir, 'third_party') 13 os.pardir, os.pardir, 'third_party')
14 LOCAL_THIRD_PARTY_DIR = os.path.join(sys.path[0], 'third_party') 14 LOCAL_THIRD_PARTY_DIR = os.path.join(sys.path[0], 'third_party')
15 TOOLS_DIR = os.path.join(sys.path[0], os.pardir, os.pardir, os.pardir,
16 os.pardir, os.pardir, 'tools')
17
18 SCHEMA_COMPILER_FILES = ['model.py']
19
20 def MakeInit(path):
21 path = os.path.join(path, '__init__.py')
22 with open(os.path.join(path), 'w') as f:
23 os.utime(os.path.join(path), None)
24
25 def CopyThirdParty(src, dest, files=None):
26 dest_path = os.path.join(LOCAL_THIRD_PARTY_DIR, dest)
27 if not files:
28 shutil.copytree(src, dest_path)
29 MakeInit(dest_path)
30 return
31 try:
32 os.makedirs(dest_path)
33 except:
34 pass
35 MakeInit(dest_path)
36 for filename in files:
37 shutil.copy(os.path.join(src, filename), os.path.join(dest_path, filename))
15 38
16 def main(): 39 def main():
17 shutil.rmtree(LOCAL_THIRD_PARTY_DIR, True) 40 shutil.rmtree(LOCAL_THIRD_PARTY_DIR, True)
18 shutil.copytree(os.path.join(THIRD_PARTY_DIR, 'handlebar'),
19 os.path.join(LOCAL_THIRD_PARTY_DIR, 'handlebar'))
20 41
21 with open(os.path.join(LOCAL_THIRD_PARTY_DIR, '__init__.py'), 'w') as f: 42 CopyThirdParty(os.path.join(THIRD_PARTY_DIR, 'handlebar'), 'handlebar')
22 os.utime(os.path.join(LOCAL_THIRD_PARTY_DIR, '__init__.py'), None) 43 CopyThirdParty(os.path.join(TOOLS_DIR, 'json_schema_compiler'),
44 'json_schema_compiler',
45 SCHEMA_COMPILER_FILES)
46 CopyThirdParty(TOOLS_DIR, 'json_schema_compiler', ['json_comment_eater.py'])
47 MakeInit(LOCAL_THIRD_PARTY_DIR)
23 48
24 shutil.copy(os.path.join(LOCAL_THIRD_PARTY_DIR, '__init__.py'), 49 # To be able to use the Handlebar class we need this import in __init__.py.
25 os.path.join(LOCAL_THIRD_PARTY_DIR, 'handlebar')) 50 with open(os.path.join(LOCAL_THIRD_PARTY_DIR,
26 with open( 51 'handlebar',
27 os.path.join(LOCAL_THIRD_PARTY_DIR, 'handlebar/__init__.py'), 'a') as f: 52 '__init__.py'), 'a') as f:
28 f.write('\nfrom handlebar import Handlebar\n') 53 f.write('from handlebar import Handlebar\n')
29 54
30 if __name__ == '__main__': 55 if __name__ == '__main__':
31 main() 56 main()
OLDNEW
« no previous file with comments | « chrome/common/extensions/docs/server2/api_data_source_test.py ('k') | chrome/common/extensions/docs/server2/echo_handler.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698