提交 c1c92246 编写于 作者: J John McCutchan

Allow big_red_button to take path arguments

BUG=
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/1227103002 .
上级 caafb616
......@@ -4,52 +4,82 @@
# Make a commit, upload it, land it.
# Useful links:
# http://stackoverflow.com/questions/14665518/api-to-automatically-upload-apk-to-google-play
# https://developers.google.com/resources/api-libraries/documentation/androidpublisher/v2/python/latest/androidpublisher_v2.edits.apks.html
import argparse
import os
import subprocess
DEFAULT_MOJO_ROOT = '/src/mojo/src'
DEFAULT_SKY_SDK_ROOT = '/src/sky_sdk'
DEFAULT_DEMO_SITE_ROOT = '/src/domokit.github.io'
def run(cwd, args):
print 'RUNNING:', ' '.join(args), 'IN:', cwd
subprocess.check_call(args, cwd=cwd)
# Input paths:
# FIXME: These could be args?
MOJO_ROOT = '/src/mojo/src'
SKY_SDK_ROOT = '/src/sky_sdk'
DEMO_SITE_ROOT = '/src/domokit.github.io'
# Derived paths:
DART_SDK_ROOT = os.path.join(MOJO_ROOT, 'third_party/dart-sdk/dart-sdk')
PUB_PATH = os.path.join(DART_SDK_ROOT, 'bin/pub')
PACKAGES_ROOT = os.path.join(SKY_SDK_ROOT, 'packages')
run(MOJO_ROOT, ['git', 'pull', '--rebase'])
run(MOJO_ROOT, ['gclient', 'sync'])
run(MOJO_ROOT, ['mojo/tools/mojob.py', 'gn', '--android', '--release'])
run(MOJO_ROOT, ['mojo/tools/mojob.py', 'build', '--android', '--release'])
# Run tests?
run(SKY_SDK_ROOT, ['git', 'reset', '--hard', 'origin/master'])
run(MOJO_ROOT, [
'sky/tools/deploy_sdk.py',
'--non-interactive',
'--commit',
SKY_SDK_ROOT
])
# tag for version?
run(DEMO_SITE_ROOT, ['git', 'reset', '--hard', 'origin/master'])
run(MOJO_ROOT, ['mojo/tools/deploy_domokit_site.py', DEMO_SITE_ROOT])
# tag for version?
for package in os.listdir(PACKAGES_ROOT):
package_path = os.path.join(PACKAGES_ROOT, package)
if not os.path.isdir(package_path):
continue
run(package_path, [PUB_PATH, 'publish', '--force'])
run(SKY_SDK_ROOT, ['git', 'push'])
run(DEMO_SITE_ROOT, ['git', 'push'])
# http://stackoverflow.com/questions/14665518/api-to-automatically-upload-apk-to-google-play
# https://developers.google.com/resources/api-libraries/documentation/androidpublisher/v2/python/latest/androidpublisher_v2.edits.apks.html
\ No newline at end of file
def main():
parser = argparse.ArgumentParser(description='Deploy!')
parser.add_argument('--mojo-root',
action='store',
type=str,
metavar='mojo_root',
help='Path to mojo/src',
default=DEFAULT_MOJO_ROOT)
parser.add_argument('--sky-sdk-root',
action='store',
type=str,
metavar='sky_sdk_root',
help='Path to sky_sdk',
default=DEFAULT_SKY_SDK_ROOT)
parser.add_argument('--demo-site-root',
action='store',
type=str,
metavar='demo_site_root',
help='Path to domokit.github.io',
default=DEFAULT_DEMO_SITE_ROOT)
args = parser.parse_args()
mojo_root = args.mojo_root
sky_sdk_root = args.sky_sdk_root
demo_site_root = args.demo_site_root
# Derived paths:
dart_sdk_root = os.path.join(mojo_root, 'third_party/dart-sdk/dart-sdk')
pub_path = os.path.join(dart_sdk_root, 'bin/pub')
packages_root = os.path.join(sky_sdk_root, 'packages')
run(mojo_root, ['git', 'pull', '--rebase'])
run(mojo_root, ['gclient', 'sync'])
run(mojo_root, ['mojo/tools/mojob.py', 'gn', '--android', '--release'])
run(mojo_root, ['mojo/tools/mojob.py', 'build', '--android', '--release'])
# Run tests?
run(sky_sdk_root, ['git', 'reset', '--hard', 'origin/master'])
run(mojo_root, [
'sky/tools/deploy_sdk.py',
'--non-interactive',
'--commit',
sky_sdk_root
])
# tag for version?
run(demo_site_root, ['git', 'reset', '--hard', 'origin/master'])
run(mojo_root, ['mojo/tools/deploy_domokit_site.py', demo_site_root])
# tag for version?
for package in os.listdir(packages_root):
package_path = os.path.join(packages_root, package)
if not os.path.isdir(package_path):
continue
run(package_path, [pub_path, 'publish', '--force'])
run(sky_sdk_root, ['git', 'push'])
run(demo_site_root, ['git', 'push'])
if __name__ == '__main__':
sys.exit(main())
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册