| Index: tools/dartium/deploy_aar.py
|
| diff --git a/tools/dartium/deploy_aar.py b/tools/dartium/deploy_aar.py
|
| deleted file mode 100755
|
| index ac8205bad979be65f51be2fd222a537332422435..0000000000000000000000000000000000000000
|
| --- a/tools/dartium/deploy_aar.py
|
| +++ /dev/null
|
| @@ -1,142 +0,0 @@
|
| -#!/usr/bin/env python
|
| -#
|
| -# Copyright (c) 2014 The Chromium Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -
|
| -import glob
|
| -import optparse
|
| -import os.path
|
| -import re
|
| -import subprocess
|
| -import sys
|
| -import utils
|
| -
|
| -# FIXME: integrate this helper script into the build instead of hardcoding
|
| -# these paths.
|
| -RESOURCE_AAR_PATTERN = 'content_shell_apk/resource_aar/*.aar'
|
| -CONTENT_SHELL_APK_AAR = 'content_shell_apk/content_shell_apk.aar'
|
| -
|
| -SRC_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)),
|
| - "..", "..", "..")
|
| -
|
| -DART_DIR = os.path.join(SRC_PATH, 'dart')
|
| -CHROME_VERSION_PATH = os.path.join(SRC_PATH, 'chrome', 'VERSION')
|
| -
|
| -def main():
|
| - parser = optparse.OptionParser()
|
| - parser.add_option('--mode', dest='mode',
|
| - action='store', type='string',
|
| - help='Build mode (Debug or Release)')
|
| - parser.add_option('--repo', action='store', type='string',
|
| - help='Local Maven repository (defaults to ~/.m2)')
|
| - (options, args) = parser.parse_args()
|
| - mode = options.mode
|
| - version = GetVersion()
|
| - if not (mode in ['debug', 'release']):
|
| - raise Exception('Invalid build mode')
|
| -
|
| - mode = 'Debug' if mode == 'debug' else 'Release'
|
| -
|
| - build_root = os.path.join('out', mode)
|
| -
|
| - aars = glob.glob(os.path.join(build_root, RESOURCE_AAR_PATTERN))
|
| - aars.append(os.path.join(build_root, CONTENT_SHELL_APK_AAR))
|
| -
|
| - flags = [
|
| - '-DgroupId=org.dartlang',
|
| - '-Dversion=%s' % version,
|
| - '-Dpackaging=aar'
|
| - ]
|
| - if options.repo:
|
| - flags.append('-DlocalRepositoryPath=%s' % options.repo)
|
| -
|
| - for aar_file in aars:
|
| - artifact_id = os.path.splitext(os.path.basename(aar_file))[0]
|
| - cmd = [
|
| - 'mvn',
|
| - 'install:install-file',
|
| - '-Dfile=%s' % aar_file,
|
| - '-DartifactId=%s' % artifact_id,
|
| - ]
|
| - cmd.extend(flags)
|
| - utils.runCommand(cmd)
|
| -
|
| -def GetVersion():
|
| - version = GetChromeVersion()
|
| - return '%d.%d.%d-%05d-%06d' % (
|
| - version[0],
|
| - version[1],
|
| - version[2],
|
| - version[3],
|
| - GetDartSVNRevision())
|
| -
|
| -def GetChromeVersion():
|
| - version = []
|
| - for line in file(CHROME_VERSION_PATH).readlines():
|
| - version.append(int(line.strip().split('=')[1]))
|
| -
|
| - return version
|
| -
|
| -def GetDartSVNRevision():
|
| - # When building from tarball use tools/SVN_REVISION
|
| - svn_revision_file = os.path.join(DART_DIR, 'tools', 'SVN_REVISION')
|
| - try:
|
| - with open(svn_revision_file) as fd:
|
| - return int(fd.read())
|
| - except:
|
| - pass
|
| -
|
| - custom_env = dict(os.environ)
|
| - custom_env['LC_MESSAGES'] = 'en_GB'
|
| - p = subprocess.Popen(['svn', 'info'], stdout = subprocess.PIPE,
|
| - stderr = subprocess.STDOUT, shell = IsWindows(),
|
| - env = custom_env,
|
| - cwd = DART_DIR)
|
| - output, _ = p.communicate()
|
| - revision = ParseSvnInfoOutput(output)
|
| - if revision:
|
| - return int(revision)
|
| -
|
| - # Check for revision using git (Note: we can't use git-svn because in a
|
| - # pure-git checkout, "git-svn anyCommand" just hangs!). We look an arbitrary
|
| - # number of commits backwards (100) to get past any local commits.
|
| - p = subprocess.Popen(['git', 'log', '-100'], stdout = subprocess.PIPE,
|
| - stderr = subprocess.STDOUT, shell=IsWindows(), cwd = DART_DIR)
|
| - output, _ = p.communicate()
|
| - revision = ParseGitInfoOutput(output)
|
| - if revision:
|
| - return int(revision)
|
| -
|
| - # In the rare off-chance that git log -100 doesn't have a svn repo number,
|
| - # attempt to use "git svn info."
|
| - p = subprocess.Popen(['git', 'svn', 'info'], stdout = subprocess.PIPE,
|
| - stderr = subprocess.STDOUT, shell=IsWindows(), cwd = DART_DIR)
|
| - output, _ = p.communicate()
|
| - revision = ParseSvnInfoOutput(output)
|
| - if revision:
|
| - return int(revision)
|
| -
|
| - # Only fail on the buildbot in case of a SVN client version mismatch.
|
| - user = GetUserName()
|
| - return '0'
|
| -
|
| -def ParseGitInfoOutput(output):
|
| - """Given a git log, determine the latest corresponding svn revision."""
|
| - for line in output.split('\n'):
|
| - tokens = line.split()
|
| - if len(tokens) > 0 and tokens[0] == 'git-svn-id:':
|
| - return tokens[1].split('@')[1]
|
| - return None
|
| -
|
| -def ParseSvnInfoOutput(output):
|
| - revision_match = re.search('Last Changed Rev: (\d+)', output)
|
| - if revision_match:
|
| - return revision_match.group(1)
|
| - return None
|
| -
|
| -def IsWindows():
|
| - return (sys.platform=='win32')
|
| -
|
| -if __name__ == '__main__':
|
| - main()
|
|
|