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

Unified Diff: scripts/slave/recipes/chromium_gn.py

Issue 211473006: Add GN (the build tool) to the chromium.linux buildbots and try jobs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: update w/ review feedback Created 6 years, 9 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
Index: scripts/slave/recipes/chromium_gn.py
diff --git a/scripts/slave/recipes/chromium_gn.py b/scripts/slave/recipes/chromium_gn.py
new file mode 100644
index 0000000000000000000000000000000000000000..6f2505af832ebf02a71fd182ac1a67098135ae20
--- /dev/null
+++ b/scripts/slave/recipes/chromium_gn.py
@@ -0,0 +1,51 @@
+# Copyright 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.
+
+DEPS = [
+ 'chromium',
+ 'gclient',
+ 'platform',
+ 'properties',
+]
+
+
+def GenSteps(api):
+ api.gclient.set_config('chromium')
+ yield api.gclient.checkout(revert=True)
+
+ # TODO(dpranke): The build_config should probably be a property passed
+ # in from slaves.cfg, but that doesn't exist today, so we need a lookup
+ # mechanism to map bot name to build_config.
+ build_config = {
+ 'Linux GN (dbg)': 'Debug',
+ }[api.properties.get('buildername')]
+
+ api.chromium.set_config('chromium', BUILD_CONFIG=build_config)
+ yield api.chromium.runhooks(run_gyp=False)
+
+ yield api.chromium.run_gn('//out/' + build_config)
iannucci 2014/03/28 22:40:42 I think that if this must be not-really-a-path, th
Dirk Pranke 2014/03/28 23:52:06 I think once we can get rid of the need to specify
+
+ yield api.chromium.compile_with_ninja('compile', api.chromium.output_dir)
+
+ # TODO(dpranke): crbug.com/353854. Run gn_unittests and other tests
+ # when they are also being run as part of the try jobs.
+
+
+def GenTests(api):
+ yield (
+ api.test('unittest_basic') +
+ api.properties.generic(buildername='Linux GN (dbg)') +
+ api.platform.name('linux')
+ )
+
+ # TODO(dpranke): This test should actually produce the same result
+ # as the previous test, but it specifically matches what is run
+ # on the "Linux GN (dbg)" bot. We should have one 'simulation' test
+ # for each bot config. Ideally this should live somewhere else
+ # closer to the master tests.
+ yield (
+ api.test('full_chromium_linux_Linux_GN__dbg_') +
+ api.properties.generic(buildername='Linux GN (dbg)') +
+ api.platform.name('linux')
+ )

Powered by Google App Engine
This is Rietveld 408576698