Buck: Build gwtgerrit without touching PolyGerrit deps

Introduce new :gwtgerrit target that only depends on non optimized GWT
UI module. For one that accelerates artifact creation, as in development
the optimized UI module is not needed, for another it skips building
PolyGerrit dependencies. As a side effect of this change, PolyGerrit is
not bundled any more, when safari or firefox user agents are used.

Change-Id: Ib908a8e3b840deae0a6f0899794dc37bc3526cb6
This commit is contained in:
David Ostrovsky 2015-12-01 08:06:51 +01:00 committed by David Ostrovsky
parent 18f76a6190
commit c43dd07c17
5 changed files with 18 additions and 3 deletions

View File

@ -8,6 +8,7 @@
docs = //Documentation:searchfree
firefox = //:firefox
gerrit = //:gerrit
gwtgerrit = //:gwtgerrit
headless = //:headless
polygerrit = //:polygerrit
release = //:release

1
BUCK
View File

@ -1,6 +1,7 @@
include_defs('//tools/build.defs')
gerrit_war(name = 'gerrit')
gerrit_war(name = 'gwtgerrit', ui = 'ui_dbg')
gerrit_war(name = 'headless', ui = None)
gerrit_war(name = 'chrome', ui = 'ui_chrome')
gerrit_war(name = 'firefox', ui = 'ui_firefox')

View File

@ -97,7 +97,7 @@ show documentation or dive into the implementation of a library JAR:
=== Gerrit Development WAR File
To build the Gerrit web application:
To build the Gerrit web application that includes GWT UI and PolyGerrit UI:
----
buck build gerrit
@ -109,6 +109,18 @@ The output executable WAR will be placed in:
buck-out/gen/gerrit/gerrit.war
----
To build the Gerrit web application that includes only GWT UI:
----
buck build gwtgerrit
----
The output executable WAR will be placed in:
----
buck-out/gen/gwtgerrit/gwtgerrit.war
----
=== Headless Mode

View File

@ -70,7 +70,7 @@ def gwt_genrule(module, deps, suffix = ""):
strict = True,
experimental_args = args,
vm_args = GWT_JVM_ARGS,
visibility = ['//:eclipse'],
visibility = ['PUBLIC'],
)
gwt_binary(

View File

@ -63,7 +63,8 @@ def war(
def gerrit_war(name, ui = 'ui_optdbg', context = [], docs = False, visibility = []):
ui_deps = []
if ui:
ui_deps.append('//polygerrit-ui/app:polygerrit_ui')
if ui == 'polygerrit' or ui == 'ui_optdbg' or ui == 'ui_optdbg_r':
ui_deps.append('//polygerrit-ui/app:polygerrit_ui')
if ui != 'polygerrit':
ui_deps.append('//gerrit-gwtui:%s' % ui)
war(