Support to enable/disable the Jira integration in the UI On the ProjectInfoScreen there is now a dropdown list for the plugin.its-jira.enabled parameter which offers the values true, false, enforced and INHERIT. Project owners can change this parameter and save it. If the Jira integration is enforced by a parent project the dropdown list is disabled. Change-Id: I440b0fcee112bf4d0dea9339e6080c1fcd9a23b7 Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/jira/JiraModule.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/jira/JiraModule.java index 8448ac3..5677556 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/hooks/jira/JiraModule.java +++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/jira/JiraModule.java
@@ -20,6 +20,7 @@ import com.google.gerrit.extensions.annotations.PluginName; import com.google.gerrit.server.config.GerritServerConfig; +import com.google.gerrit.server.config.PluginConfigFactory; import com.google.inject.AbstractModule; import com.google.inject.Inject; @@ -32,12 +33,14 @@ private final String pluginName; private final Config gerritConfig; + private final PluginConfigFactory pluginCfgFactory; @Inject - public JiraModule(@PluginName final String pluginName, - @GerritServerConfig final Config config) { + public JiraModule(@PluginName String pluginName, + @GerritServerConfig Config config, PluginConfigFactory pluginCfgFactory) { this.pluginName = pluginName; this.gerritConfig = config; + this.pluginCfgFactory = pluginCfgFactory; } @Override @@ -46,7 +49,7 @@ LOG.info("JIRA is configured as ITS"); bind(ItsFacade.class).toInstance(new JiraItsFacade(pluginName, gerritConfig)); - install(new ItsHookModule()); + install(new ItsHookModule(pluginName, pluginCfgFactory)); } } }
diff --git a/src/main/resources/Documentation/config.md b/src/main/resources/Documentation/config.md index 55087e9..c11aec4 100644 --- a/src/main/resources/Documentation/config.md +++ b/src/main/resources/Documentation/config.md
@@ -29,6 +29,12 @@ a project can enforce the Jira integration for all child projects by setting `plugin.its-jira.enabled` to `enforced`. +On the project info screen there is a dropdown list for the +`plugin.its-jira.enabled` parameter which offers the values `true`, +`false`, `enforced` and `INHERIT`. Project owners can change this +parameter and save it. If the Jira integration is enforced by a parent +project the dropdown list is disabled. + The Jira integration can be limited to specific branches by setting `plugin.its-jira.branch`. The branches may be configured using explicit branch names, ref patterns, or regular expressions. Multiple branches