gerrit/gerrit-httpd
Dave Borowitz 7cadbc0c0c Serve PolyGerrit static paths
PolyGerrit is a purely static web app. This means all UI-related
endpoints just serve static content.

In the developer case, the mapping looks like:
  / => polygerrit-ui/app/index.html
  /bower_components/* => polygerrit-ui/bower_components/*
  /* => polygerrit-ui/app/*

In addition, PolyGerrit uses the HTML5 history API, which among other
things replaces fragments used by GWT (#/c/1234) with actual paths
(/c/1234). This means all paths formerly dispatched in Dispatcher.java
have to be served as app/index.html, except for a few that are
currently overlapping with the REST API (/projects and /groups/).

We are still using PolyGerrit's native build system, which means the
build steps in README.md need to be run on setup and any time
dependencies change. This is the step that is responsible for setting
up polygerrit-ui/bower_components/.

In the compiled WAR case, lots of minification and inlining happens,
so we just need to serve static content out of /polygerrit_ui/* in the
WAR file. Note that WAR file integration is not implemented yet, since
a) we need to tweak the buck build to allow this, and b) we need to do
license auditing before inlining a bunch of code into the UI.

Change-Id: I9d000f6fa1ae75e966593c174f43c9f366f7dcff
2015-11-12 18:39:59 -05:00
..
src Serve PolyGerrit static paths 2015-11-12 18:39:59 -05:00
BUCK Serve GWT UI from ResourceServlet 2015-11-09 14:47:26 -05:00