]> source.dussan.org Git - sonarqube.git/commitdiff
SONARCLOUD-63 SONARCLOUD-74 Return Prismic access token from api/navigation/global
authorGrégoire Aubert <gregoire.aubert@sonarsource.com>
Tue, 12 Jun 2018 15:13:32 +0000 (17:13 +0200)
committerSonarTech <sonartech@sonarsource.com>
Thu, 21 Jun 2018 18:21:28 +0000 (20:21 +0200)
server/sonar-process/src/main/java/org/sonar/process/ProcessProperties.java
server/sonar-server/src/main/java/org/sonar/server/ui/ws/GlobalAction.java
server/sonar-server/src/test/java/org/sonar/server/ui/ws/GlobalActionTest.java

index bb23304fbb339f3b34e0fea03da817844b3391b8..6c5deb927c7403771b4729db9de28f89b6aff3c5 100644 (file)
@@ -108,6 +108,9 @@ public class ProcessProperties {
     SONAR_UPDATECENTER_ACTIVATE("sonar.updatecenter.activate", "true"),
 
     SONARCLOUD_ENABLED("sonar.sonarcloud.enabled", "false"),
+
+    SONAR_PRISMIC_ACCESS_TOKEN("sonar.prismic.accessToken", ""),
+
     BITBUCKETCLOUD_APP_KEY("sonar.bitbucketcloud.appKey", "sonarcloud"),
     BITBUCKETCLOUD_ENDPOINT("sonar.bitbucketcloud.endpoint", "https://api.bitbucket.org"),
 
index 644f10c8c4ae3180cb35916e82d661a34ced8702..f69de5baed515cb5117ca337dbc9d745009c5beb 100644 (file)
@@ -51,6 +51,8 @@ import static org.sonar.core.config.WebConstants.SONAR_LF_ENABLE_GRAVATAR;
 import static org.sonar.core.config.WebConstants.SONAR_LF_GRAVATAR_SERVER_URL;
 import static org.sonar.core.config.WebConstants.SONAR_LF_LOGO_URL;
 import static org.sonar.core.config.WebConstants.SONAR_LF_LOGO_WIDTH_PX;
+import static org.sonar.process.ProcessProperties.Property.SONARCLOUD_ENABLED;
+import static org.sonar.process.ProcessProperties.Property.SONAR_PRISMIC_ACCESS_TOKEN;
 import static org.sonar.process.ProcessProperties.Property.SONAR_UPDATECENTER_ACTIVATE;
 
 public class GlobalAction implements NavigationWsAction, Startable {
@@ -96,6 +98,10 @@ public class GlobalAction implements NavigationWsAction, Startable {
   @Override
   public void start() {
     this.systemSettingValuesByKey.put(SONAR_UPDATECENTER_ACTIVATE.getKey(), config.get(SONAR_UPDATECENTER_ACTIVATE.getKey()).orElse(null));
+    boolean isOnSonarCloud = config.getBoolean(SONARCLOUD_ENABLED.getKey()).orElse(false);
+    if (isOnSonarCloud) {
+      this.systemSettingValuesByKey.put(SONAR_PRISMIC_ACCESS_TOKEN.getKey(), config.get(SONAR_PRISMIC_ACCESS_TOKEN.getKey()).orElse(null));
+    }
   }
 
   @Override
index d70c3b92fdf27a7ce135c3d78cee1e4ef61de1c6..b0cb60037e90fc9d29ada5b22c0fd4829cb2d05e 100644 (file)
@@ -126,6 +126,19 @@ public class GlobalActionTest {
       "}");
   }
 
+  @Test
+  public void return_prismic_setting_on_sonarcloud_only() {
+    settings.setProperty("sonar.sonarcloud.enabled", true);
+    settings.setProperty("sonar.prismic.accessToken", "secret");
+    init();
+
+    assertJson(call()).isSimilarTo("{" +
+      "  \"settings\": {" +
+      "    \"sonar.prismic.accessToken\": \"secret\"" +
+      "  }" +
+      "}");
+  }
+
   @Test
   public void return_deprecated_logo_settings() {
     init();