aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/sonar-ce/src/test/java/org/sonar/ce/container/ComputeEngineContainerImplTest.java2
-rw-r--r--server/sonar-db-dao/src/main/java/org/sonar/db/DaoModule.java3
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/step/PersistAnalysisPropertiesStep.java3
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/webhook/WebhookPayloadFactoryImpl.java4
-rw-r--r--sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java2
-rw-r--r--sonar-core/src/main/java/org/sonar/core/config/WebhookProperties.java98
-rw-r--r--sonar-core/src/test/java/org/sonar/core/config/CorePropertyDefinitionsTest.java2
-rw-r--r--sonar-scanner-engine/src/main/java/org/sonar/scanner/report/ContextPropertiesPublisher.java5
8 files changed, 10 insertions, 109 deletions
diff --git a/server/sonar-ce/src/test/java/org/sonar/ce/container/ComputeEngineContainerImplTest.java b/server/sonar-ce/src/test/java/org/sonar/ce/container/ComputeEngineContainerImplTest.java
index 3ab7291a64c..bf87bddc653 100644
--- a/server/sonar-ce/src/test/java/org/sonar/ce/container/ComputeEngineContainerImplTest.java
+++ b/server/sonar-ce/src/test/java/org/sonar/ce/container/ComputeEngineContainerImplTest.java
@@ -120,7 +120,7 @@ public class ComputeEngineContainerImplTest {
+ 26 // level 1
+ 53 // content of DaoModule
+ 3 // content of EsSearchModule
- + 59 // content of CorePropertyDefinitions
+ + 57 // content of CorePropertyDefinitions
+ 1 // StopFlagContainer
);
assertThat(
diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/DaoModule.java b/server/sonar-db-dao/src/main/java/org/sonar/db/DaoModule.java
index 5db426bc69f..eeb23ef31ad 100644
--- a/server/sonar-db-dao/src/main/java/org/sonar/db/DaoModule.java
+++ b/server/sonar-db-dao/src/main/java/org/sonar/db/DaoModule.java
@@ -93,8 +93,6 @@ public class DaoModule extends Module {
CeTaskInputDao.class,
ComponentDao.class,
ComponentKeyUpdaterDao.class,
- ProjectLinkDao.class,
- LiveMeasureDao.class,
CustomMeasureDao.class,
DefaultQProfileDao.class,
DuplicationDao.class,
@@ -116,6 +114,7 @@ public class DaoModule extends Module {
PermissionTemplateCharacteristicDao.class,
PermissionTemplateDao.class,
PluginDao.class,
+ ProjectLinkDao.class,
ProjectQgateAssociationDao.class,
PropertiesDao.class,
PurgeDao.class,
diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/step/PersistAnalysisPropertiesStep.java b/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/step/PersistAnalysisPropertiesStep.java
index a9e25697027..3ca4d4a33e7 100644
--- a/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/step/PersistAnalysisPropertiesStep.java
+++ b/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/step/PersistAnalysisPropertiesStep.java
@@ -29,13 +29,14 @@ import org.sonar.server.computation.task.projectanalysis.analysis.AnalysisMetada
import org.sonar.server.computation.task.projectanalysis.batch.BatchReportReader;
import org.sonar.server.computation.task.step.ComputationStep;
+import static org.sonar.core.config.CorePropertyDefinitions.SONAR_ANALYSIS;
+
/**
* Persist analysis properties
* Only properties starting with "sonar.analysis" or "sonar.pullrequest" will be persisted in database
*/
public class PersistAnalysisPropertiesStep implements ComputationStep {
- private static final String SONAR_ANALYSIS = "sonar.analysis.";
private static final String SONAR_PULL_REQUEST = "sonar.pullrequest.";
private final DbClient dbClient;
diff --git a/server/sonar-server/src/main/java/org/sonar/server/webhook/WebhookPayloadFactoryImpl.java b/server/sonar-server/src/main/java/org/sonar/server/webhook/WebhookPayloadFactoryImpl.java
index c957607c495..96c24d254fb 100644
--- a/server/sonar-server/src/main/java/org/sonar/server/webhook/WebhookPayloadFactoryImpl.java
+++ b/server/sonar-server/src/main/java/org/sonar/server/webhook/WebhookPayloadFactoryImpl.java
@@ -35,7 +35,7 @@ import org.sonar.server.qualitygate.EvaluatedCondition;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import static java.lang.String.format;
-import static org.sonar.core.config.WebhookProperties.ANALYSIS_PROPERTY_PREFIX;
+import static org.sonar.core.config.CorePropertyDefinitions.SONAR_ANALYSIS;
@ComputeEngineSide
public class WebhookPayloadFactoryImpl implements WebhookPayloadFactory {
@@ -91,7 +91,7 @@ public class WebhookPayloadFactoryImpl implements WebhookPayloadFactory {
.beginObject();
properties.entrySet()
.stream()
- .filter(prop -> prop.getKey().startsWith(ANALYSIS_PROPERTY_PREFIX))
+ .filter(prop -> prop.getKey().startsWith(SONAR_ANALYSIS))
.forEach(prop -> writer.prop(prop.getKey(), prop.getValue()));
writer.endObject();
}
diff --git a/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java b/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java
index 01acaad196a..286d0ece9be 100644
--- a/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java
+++ b/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java
@@ -38,6 +38,7 @@ public class CorePropertyDefinitions {
public static final String LEAK_PERIOD_MODE_VERSION = "version";
public static final String LEAK_PERIOD_MODE_DAYS = "days";
public static final String LEAK_PERIOD_MODE_PREVIOUS_VERSION = "previous_version";
+ public static final String SONAR_ANALYSIS = "sonar.analysis.";
private static final String DEFAULT_LEAK_PERIOD = LEAK_PERIOD_MODE_PREVIOUS_VERSION;
@@ -60,7 +61,6 @@ public class CorePropertyDefinitions {
defs.addAll(DebtProperties.all());
defs.addAll(PurgeProperties.all());
defs.addAll(EmailSettings.definitions());
- defs.addAll(WebhookProperties.all());
defs.addAll(ScannerProperties.all());
defs.addAll(asList(
diff --git a/sonar-core/src/main/java/org/sonar/core/config/WebhookProperties.java b/sonar-core/src/main/java/org/sonar/core/config/WebhookProperties.java
deleted file mode 100644
index 91c654f8468..00000000000
--- a/sonar-core/src/main/java/org/sonar/core/config/WebhookProperties.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * SonarQube
- * Copyright (C) 2009-2018 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.core.config;
-
-import java.util.List;
-import org.sonar.api.PropertyType;
-import org.sonar.api.config.PropertyDefinition;
-import org.sonar.api.config.PropertyFieldDefinition;
-import org.sonar.api.resources.Qualifiers;
-
-import static java.util.Arrays.asList;
-
-public class WebhookProperties {
-
- public static final String GLOBAL_KEY = "sonar.webhooks.global";
- public static final String PROJECT_KEY = "sonar.webhooks.project";
- public static final String NAME_FIELD = "name";
- public static final String URL_FIELD = "url";
-
- /**
- * Maximum allowed number of webhooks per type (globally or per project).
- * That is required to not become a DoS attacker, for instance
- * if thousands of webhooks are configured.
- * Important - note that this number is written in full in {@link #DESCRIPTION}.
- */
- public static final long MAX_WEBHOOKS_PER_TYPE = 10;
-
- /**
- * Prefix of the properties to be automatically exported from scanner to payload
- */
- public static final String ANALYSIS_PROPERTY_PREFIX = "sonar.analysis.";
-
- private static final String CATEGORY = "webhooks";
- private static final String DESCRIPTION = "Webhooks are used to notify external services when a project analysis is done. " +
- "An HTTP POST request including a JSON payload is sent to each of the first ten provided URLs. <br/>" +
- "Learn more in the <a href=\"https://redirect.sonarsource.com/doc/webhooks.html\">Webhooks documentation</a>.";
- private static final String URL_DESCRIPTION = "Server endpoint that will receive the webhook payload, for example 'http://my_server/foo'. " +
- "If HTTP Basic authentication is used, HTTPS is recommended to avoid man in the middle attacks. " +
- "Example: 'https://myLogin:myPassword@my_server/foo'";
-
- private WebhookProperties() {
- // only static stuff
- }
-
- static List<PropertyDefinition> all() {
- return asList(
- PropertyDefinition.builder(GLOBAL_KEY)
- .category(CATEGORY)
- .name("Webhooks")
- .description(DESCRIPTION)
- .fields(
- PropertyFieldDefinition.build(NAME_FIELD)
- .name("Name")
- .type(PropertyType.STRING)
- .build(),
- PropertyFieldDefinition.build(URL_FIELD)
- .name("URL")
- .type(PropertyType.STRING)
- .description(URL_DESCRIPTION)
- .build())
- .build(),
-
- PropertyDefinition.builder(PROJECT_KEY)
- .category(CATEGORY)
- .name("Project Webhooks")
- .description(DESCRIPTION)
- .onlyOnQualifiers(Qualifiers.PROJECT)
- .fields(
- PropertyFieldDefinition.build(NAME_FIELD)
- .name("Name")
- .type(PropertyType.STRING)
- .build(),
- PropertyFieldDefinition.build(URL_FIELD)
- .name("URL")
- .type(PropertyType.STRING)
- .description(URL_DESCRIPTION)
- .build())
- .build());
- }
-
-}
diff --git a/sonar-core/src/test/java/org/sonar/core/config/CorePropertyDefinitionsTest.java b/sonar-core/src/test/java/org/sonar/core/config/CorePropertyDefinitionsTest.java
index b3054a31a22..a3cfb1e2bc5 100644
--- a/sonar-core/src/test/java/org/sonar/core/config/CorePropertyDefinitionsTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/config/CorePropertyDefinitionsTest.java
@@ -30,7 +30,7 @@ public class CorePropertyDefinitionsTest {
@Test
public void all() {
List<PropertyDefinition> defs = CorePropertyDefinitions.all();
- assertThat(defs).hasSize(59);
+ assertThat(defs).hasSize(57);
}
@Test
diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/report/ContextPropertiesPublisher.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/report/ContextPropertiesPublisher.java
index 55b5eb9cadc..48384ca95cf 100644
--- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/report/ContextPropertiesPublisher.java
+++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/report/ContextPropertiesPublisher.java
@@ -24,13 +24,12 @@ import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import javax.annotation.Nonnull;
+import org.sonar.core.config.CorePropertyDefinitions;
import org.sonar.scanner.config.DefaultConfiguration;
import org.sonar.scanner.protocol.output.ScannerReport;
import org.sonar.scanner.protocol.output.ScannerReportWriter;
import org.sonar.scanner.repository.ContextPropertiesCache;
-import static org.sonar.core.config.WebhookProperties.ANALYSIS_PROPERTY_PREFIX;
-
public class ContextPropertiesPublisher implements ReportPublisherStep {
private final ContextPropertiesCache cache;
@@ -51,7 +50,7 @@ public class ContextPropertiesPublisher implements ReportPublisherStep {
// properties that are automatically included to report so that
// they can be included to webhook payloads
Stream<ScannerReport.ContextProperty> fromSettings = config.getProperties().entrySet().stream()
- .filter(e -> e.getKey().startsWith(ANALYSIS_PROPERTY_PREFIX))
+ .filter(e -> e.getKey().startsWith(CorePropertyDefinitions.SONAR_ANALYSIS))
.map(transformer);
writer.writeContextProperties(Stream.concat(fromCache, fromSettings).collect(Collectors.toList()));