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

Unified Diff: webrtc/tools/testing/build_apprtc_collider.py

Issue 2861653005: Moving scripts to download and build apprtc/collider. (Closed)
Patch Set: removing download_node.py (it seems unused) Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | webrtc/tools/testing/build_mercurial_local.py » ('j') | webrtc/tools/testing/setup_apprtc.py » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/tools/testing/build_apprtc_collider.py
diff --git a/webrtc/tools/testing/build_apprtc_collider.py b/webrtc/tools/testing/build_apprtc_collider.py
new file mode 100755
index 0000000000000000000000000000000000000000..23961b03bffe15ddfc60c37b492cd417b43d998b
--- /dev/null
+++ b/webrtc/tools/testing/build_apprtc_collider.py
@@ -0,0 +1,59 @@
+#!/usr/bin/env python
+# Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
+#
+# Use of this source code is governed by a BSD-style license
+# that can be found in the LICENSE file in the root of the source
+# tree. An additional intellectual property rights grant can be found
+# in the file PATENTS. All contributing project authors may
+# be found in the AUTHORS file in the root of the source tree.
+
+"""Builds the AppRTC collider using the golang toolchain.
+
+The golang toolchain is downloaded by download_golang.py. We use that here
+to build the AppRTC collider server.
+"""
+
+import os
+import shutil
+import subprocess
+import sys
+import tempfile
+
+import utils
+
+
+def main():
+ apprtc_dir = os.path.join('apprtc', 'src')
+ golang_workspace = os.path.join('src', 'out', 'go-workspace')
+ utils.RemoveDirectory(golang_workspace)
+
+ golang_workspace_src = os.path.join(golang_workspace, 'src')
+
+ collider_dir = os.path.join(apprtc_dir, 'collider')
+ shutil.copytree(collider_dir, golang_workspace_src,
+ ignore=shutil.ignore_patterns('.svn', '.git'))
+
+ golang_binary = 'go%s' % ('.exe' if utils.GetPlatform() == 'win' else '')
+ golang_path = os.path.join('go', 'bin', golang_binary)
+
+ golang_env = os.environ.copy()
+ golang_env['GOROOT'] = os.path.abspath('go')
+ golang_env['GOPATH'] = os.path.abspath(golang_workspace)
+ golang_env['PATH'] += os.pathsep + os.path.abspath('mercurial')
+ subprocess.check_call([golang_path, 'get', 'collidermain'],
+ env=golang_env)
+ subprocess.check_call([golang_path, 'build', 'collidermain'],
+ env=golang_env)
+
+ # Delete everything in the workspace except the build artifacts.
+ go_bin_dir = os.path.join(golang_workspace, 'bin')
+ tmp_dir = tempfile.mkdtemp()
+ shutil.move(go_bin_dir, tmp_dir)
+ utils.RemoveDirectory(golang_workspace)
+ os.makedirs(golang_workspace)
+ shutil.move(os.path.join(tmp_dir, 'bin'), go_bin_dir)
+ os.rmdir(tmp_dir)
+
+if __name__ == '__main__':
+ sys.exit(main())
+
« no previous file with comments | « no previous file | webrtc/tools/testing/build_mercurial_local.py » ('j') | webrtc/tools/testing/setup_apprtc.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698