Merge branch 'stable-2.15'

* stable-2.15:
  Allow configuring base url of gitiles
  Fix URI for new UI

Change-Id: I386ea03b2505288bed824efbfb1d7360cfc84f0e
diff --git a/src/main/java/com/googlesource/gerrit/plugins/gitiles/GitilesWeblinks.java b/src/main/java/com/googlesource/gerrit/plugins/gitiles/GitilesWeblinks.java
index cf0e9df..267c435 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/gitiles/GitilesWeblinks.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/gitiles/GitilesWeblinks.java
@@ -63,7 +63,8 @@
 
     Config config = configFactory.getGlobalPluginConfig("gitiles");
     name = MoreObjects.firstNonNull(config.getString("gerrit", null, "linkname"), "browse");
-    baseUrl = baseGerritUrl + "plugins/" + pluginName;
+    baseUrl = MoreObjects.firstNonNull(config.getString("gerrit", null, "baseUrl"),
+        baseGerritUrl + "plugins/" + pluginName);
 
     target = MoreObjects.firstNonNull(config.getString("gerrit", null, "target"), Target.BLANK);
   }
diff --git a/src/main/resources/+Documentation/config.md b/src/main/resources/+Documentation/config.md
index 8b4a371..562603b 100644
--- a/src/main/resources/+Documentation/config.md
+++ b/src/main/resources/+Documentation/config.md
@@ -50,3 +50,17 @@
   [gerrit]
     noWebLinks = true
 ```
+
+The flag `gerrit.baseUrl` can be set to a path other than the default location
+that Gitiles is being exposed. By default, it's at the path to Gerrit + plugins/gitiles/
+
+When Gerrit is behind a reverse proxy, or via rewrite rules, Gitiles can be placed
+in easier-to-remember URLs.
+
+```
+  [gerrit]
+    baseUrl = https://gerrit.example.com/gitiles/
+```
+
+Note: If using this setting you possibly want to set Gerrit's auth.cookiePath to "/"
+if it's not running in document root already.