7018b5eded21c4a1a01e8102afd0c08930d63d90
[platform/framework/web/crosswalk-tizen.git] / script / lib / config.py
1 #!/usr/bin/env python
2
3 import errno
4 import os
5 import platform
6 import sys
7
8
9 BASE_URL = os.getenv('LIBCHROMIUMCONTENT_MIRROR') or \
10     'https://s3.amazonaws.com/github-janky-artifacts/libchromiumcontent'
11 LIBCHROMIUMCONTENT_COMMIT = os.getenv('LIBCHROMIUMCONTENT_COMMIT') or \
12     'b4dd78df3f4fa271057ecdaa54441501e63e7c55'
13
14 PLATFORM = {
15   'cygwin': 'win32',
16   'darwin': 'darwin',
17   'linux2': 'linux',
18   'win32': 'win32',
19 }[sys.platform]
20
21 verbose_mode = False
22
23
24 def get_platform_key():
25   if os.environ.has_key('MAS_BUILD'):
26     return 'mas'
27   else:
28     return PLATFORM
29
30
31 def get_target_arch():
32   try:
33     target_arch_path = os.path.join(__file__, '..', '..', '..', 'vendor',
34                                     'brightray', 'vendor', 'download',
35                                     'libchromiumcontent', '.target_arch')
36     with open(os.path.normpath(target_arch_path)) as f:
37       return f.read().strip()
38   except IOError as e:
39     if e.errno != errno.ENOENT:
40       raise
41
42   return 'x64'
43
44
45 def get_chromedriver_version():
46   return 'v2.21'
47
48 def get_env_var(name):
49   value = os.environ.get('ELECTRON_' + name, '')
50   if not value:
51     # TODO Remove ATOM_SHELL_* fallback values
52     value = os.environ.get('ATOM_SHELL_' + name, '')
53     if value:
54       print 'Warning: Use $ELECTRON_' + name + ' instead of $ATOM_SHELL_' + name
55   return value
56
57
58 def s3_config():
59   config = (get_env_var('S3_BUCKET'),
60             get_env_var('S3_ACCESS_KEY'),
61             get_env_var('S3_SECRET_KEY'))
62   message = ('Error: Please set the $ELECTRON_S3_BUCKET, '
63              '$ELECTRON_S3_ACCESS_KEY, and '
64              '$ELECTRON_S3_SECRET_KEY environment variables')
65   assert all(len(c) for c in config), message
66   return config
67
68
69 def enable_verbose_mode():
70   print 'Running in verbose mode'
71   global verbose_mode
72   verbose_mode = True
73
74
75 def is_verbose_mode():
76   return verbose_mode
77
78
79 def get_zip_name(name, version, suffix=''):
80   arch = get_target_arch()
81   if arch == 'arm':
82     arch += 'v7l'
83   zip_name = '{0}-{1}-{2}-{3}'.format(name, version, get_platform_key(), arch)
84   if suffix:
85     zip_name += '-' + suffix
86   return zip_name + '.zip'