001 /*
002 * SonarQube, open source software quality management tool.
003 * Copyright (C) 2008-2014 SonarSource
004 * mailto:contact AT sonarsource DOT com
005 *
006 * SonarQube is free software; you can redistribute it and/or
007 * modify it under the terms of the GNU Lesser General Public
008 * License as published by the Free Software Foundation; either
009 * version 3 of the License, or (at your option) any later version.
010 *
011 * SonarQube is distributed in the hope that it will be useful,
012 * but WITHOUT ANY WARRANTY; without even the implied warranty of
013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014 * Lesser General Public License for more details.
015 *
016 * You should have received a copy of the GNU Lesser General Public License
017 * along with this program; if not, write to the Free Software Foundation,
018 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
019 */
020 package org.sonar.api;
021
022 /**
023 * Non-exhaustive list of constants of core properties.
024 *
025 * @since 1.11
026 */
027 public interface CoreProperties {
028
029 /**
030 * @since 3.0
031 */
032 String ENCRYPTION_SECRET_KEY_PATH = "sonar.secretKeyPath";
033
034 /**
035 * @since 2.11
036 */
037 String CATEGORY_GENERAL = "general";
038
039 /**
040 * @since 4.0
041 */
042 String SUBCATEGORY_DATABASE_CLEANER = "databaseCleaner";
043
044 /**
045 * @since 4.0
046 */
047 String SUBCATEGORY_DUPLICATIONS = "duplications";
048
049 /**
050 * @since 4.0
051 */
052 String SUBCATEGORY_DIFFERENTIAL_VIEWS = "differentialViews";
053
054 /**
055 * @since 4.0
056 */
057 String SUBCATEGORY_L10N = "localization";
058
059 /**
060 * @since 2.11
061 */
062 String CATEGORY_CODE_COVERAGE = "codeCoverage";
063
064 /**
065 * @see #SUBCATEGORY_DUPLICATIONS
066 * @since 2.11
067 * @deprecated since 4.0. See http://jira.codehaus.org/browse/SONAR-4660. Do not forget to remove the properties from core bundles
068 */
069 @Deprecated
070 String CATEGORY_DUPLICATIONS = "duplications";
071
072 /**
073 * @since 2.11
074 */
075 String CATEGORY_SECURITY = "security";
076
077 /**
078 * @see #SUBCATEGORY_L10N
079 * @since 2.11
080 * @deprecated since 4.0. See http://jira.codehaus.org/browse/SONAR-4660. Do not forget to remove the properties from core bundles
081 */
082 @Deprecated
083 String CATEGORY_L10N = "localization";
084
085 /**
086 * @since 2.11
087 */
088 String CATEGORY_JAVA = "java";
089
090 /**
091 * @see #SUBCATEGORY_DIFFERENTIAL_VIEWS
092 * @since 2.11
093 * @deprecated since 4.0. See http://jira.codehaus.org/browse/SONAR-4660. Do not forget to remove the properties from core bundles
094 */
095 @Deprecated
096 String CATEGORY_DIFFERENTIAL_VIEWS = "differentialViews";
097
098 /**
099 * @since 3.3
100 */
101 String CATEGORY_EXCLUSIONS = "exclusions";
102
103 /**
104 * @since 4.0
105 */
106 String SUBCATEGORY_FILES_EXCLUSIONS = "files";
107
108 /**
109 * @since 4.0
110 */
111 String SUBCATEGORY_DUPLICATIONS_EXCLUSIONS = "duplications";
112
113 /**
114 * @since 4.0
115 */
116 String SUBCATEGORY_COVERAGE_EXCLUSIONS = "coverage";
117
118 /**
119 * @since 3.7
120 */
121 String CATEGORY_LICENSES = "licenses";
122
123 /**
124 * @since 4.0
125 */
126 String CATEGORY_TECHNICAL_DEBT = "technicalDebt";
127
128 /* Global settings */
129 String SONAR_HOME = "SONAR_HOME";
130 String PROJECT_BRANCH_PROPERTY = "sonar.branch";
131 String PROJECT_VERSION_PROPERTY = "sonar.projectVersion";
132
133 /**
134 * @since 2.6
135 */
136 String PROJECT_KEY_PROPERTY = "sonar.projectKey";
137
138 /**
139 * @since 2.6
140 */
141 String PROJECT_NAME_PROPERTY = "sonar.projectName";
142
143 /**
144 * @since 2.6
145 */
146 String PROJECT_DESCRIPTION_PROPERTY = "sonar.projectDescription";
147
148 /**
149 * To determine value of this property use {@link org.sonar.api.resources.ProjectFileSystem#getSourceCharset()}.
150 *
151 * @since 2.6
152 */
153 String ENCODING_PROPERTY = "sonar.sourceEncoding";
154
155 /**
156 * Value format is yyyy-MM-dd
157 */
158 String PROJECT_DATE_PROPERTY = "sonar.projectDate";
159
160 /**
161 * @deprecated since 4.2 projects are now multi-language
162 */
163 @Deprecated
164 String PROJECT_LANGUAGE_PROPERTY = "sonar.language";
165
166 /**
167 * @deprecated since 4.3. See http://jira.codehaus.org/browse/SONAR-5185
168 */
169 @Deprecated
170 String DYNAMIC_ANALYSIS_PROPERTY = "sonar.dynamicAnalysis";
171
172 /* Exclusions */
173 String PROJECT_INCLUSIONS_PROPERTY = "sonar.inclusions";
174 String PROJECT_EXCLUSIONS_PROPERTY = "sonar.exclusions";
175
176 /* Coverage exclusions */
177 String PROJECT_COVERAGE_EXCLUSIONS_PROPERTY = "sonar.coverage.exclusions";
178
179 /**
180 * @since 3.3
181 */
182 String PROJECT_TEST_INCLUSIONS_PROPERTY = "sonar.test.inclusions";
183 String PROJECT_TEST_EXCLUSIONS_PROPERTY = "sonar.test.exclusions";
184 String GLOBAL_EXCLUSIONS_PROPERTY = "sonar.global.exclusions";
185 String GLOBAL_TEST_EXCLUSIONS_PROPERTY = "sonar.global.test.exclusions";
186 /**
187 * @deprecated since 4.2. See http://jira.codehaus.org/browse/SONAR-5058
188 */
189 @Deprecated
190 String GLOBAL_TEST_EXCLUSIONS_DEFAULT = "";
191
192 /**
193 * @deprecated since 2.5. See discussion from http://jira.codehaus.org/browse/SONAR-1873
194 */
195 @Deprecated
196 String REUSE_RULES_CONFIGURATION_PROPERTY = "sonar.reuseExistingRulesConfiguration";
197
198 /* Sonar Core */
199
200 /**
201 * @deprecated since 4.1. See http://jira.codehaus.org/browse/SONAR-4875
202 */
203 @Deprecated
204 String CORE_VIOLATION_LOCALE_PROPERTY = "sonar.violationLocale";
205
206 String CORE_VIOLATION_LOCALE_DEFAULT_VALUE = "en";
207 /**
208 * @deprecated since 4.5.1.
209 */
210 @Deprecated
211 String CORE_IMPORT_SOURCES_PROPERTY = "sonar.importSources";
212 boolean CORE_IMPORT_SOURCES_DEFAULT_VALUE = true;
213
214 /**
215 * @deprecated since 4.3. See http://jira.codehaus.org/browse/SONAR-5109
216 */
217 @Deprecated
218 String CORE_SKIPPED_MODULES_PROPERTY = "sonar.skippedModules";
219
220 /**
221 * @since 4.0
222 * @deprecated since 4.3. See http://jira.codehaus.org/browse/SONAR-5109
223 */
224 @Deprecated
225 String CORE_INCLUDED_MODULES_PROPERTY = "sonar.includedModules";
226
227 /**
228 * @deprecated since 3.6. See http://jira.codehaus.org/browse/SONAR-4145
229 */
230 @Deprecated
231 String CORE_TENDENCY_DEPTH_PROPERTY = "tendency.depth";
232
233 /**
234 * @deprecated since 2.5. See http://jira.codehaus.org/browse/SONAR-4145
235 */
236 @Deprecated
237 int CORE_TENDENCY_DEPTH_DEFAULT_VALUE = 30;
238
239 String CORE_FORCE_AUTHENTICATION_PROPERTY = "sonar.forceAuthentication";
240 boolean CORE_FORCE_AUTHENTICATION_DEFAULT_VALUE = false;
241 String CORE_ALLOW_USERS_TO_SIGNUP_PROPERTY = "sonar.allowUsersToSignUp";
242 String CORE_DEFAULT_GROUP = "sonar.defaultGroup";
243 String CORE_DEFAULT_GROUP_DEFAULT_VALUE = "sonar-users";
244 boolean CORE_ALLOW_USERS_TO_SIGNUP_DEAULT_VALUE = false;
245
246 /**
247 * @deprecated since 2.14. See http://jira.codehaus.org/browse/SONAR-3153. Replaced by {@link #CORE_AUTHENTICATOR_REALM}.
248 */
249 @Deprecated
250 String CORE_AUTHENTICATOR_CLASS = "sonar.authenticator.class";
251
252 /**
253 * @since 2.14
254 */
255 String CORE_AUTHENTICATOR_REALM = "sonar.security.realm";
256
257 String CORE_AUTHENTICATOR_IGNORE_STARTUP_FAILURE = "sonar.authenticator.ignoreStartupFailure";
258 String CORE_AUTHENTICATOR_CREATE_USERS = "sonar.authenticator.createUsers";
259
260 /**
261 * @since 3.6
262 */
263 String CORE_AUTHENTICATOR_UPDATE_USER_ATTRIBUTES = "sonar.security.updateUserAttributes";
264
265 String SERVER_VERSION = "sonar.core.version";
266 String SERVER_ID = "sonar.core.id";
267
268 // format is yyyy-MM-dd'T'HH:mm:ssZ
269 String SERVER_STARTTIME = "sonar.core.startTime";
270
271 /**
272 * @deprecated since 3.6. See http://jira.codehaus.org/browse/SONAR-4145
273 */
274 @Deprecated
275 String SKIP_TENDENCIES_PROPERTY = "sonar.skipTendencies";
276
277 /**
278 * @deprecated since 3.6. See http://jira.codehaus.org/browse/SONAR-4145
279 */
280 @Deprecated
281 boolean SKIP_TENDENCIES_DEFAULT_VALUE = false;
282
283 /**
284 * @since 2.10
285 */
286 String SERVER_BASE_URL = "sonar.core.serverBaseURL";
287
288 /**
289 * @see #SERVER_BASE_URL
290 * @since 2.10
291 */
292 String SERVER_BASE_URL_DEFAULT_VALUE = "http://localhost:9000";
293
294 /* CPD */
295 String CPD_PLUGIN = "cpd";
296
297 /**
298 * @deprecated in 3.1
299 */
300 @Deprecated
301 String CPD_MINIMUM_TOKENS_PROPERTY = "sonar.cpd.minimumTokens";
302
303 /**
304 * @deprecated in 3.1
305 */
306 @Deprecated
307 int CPD_MINIMUM_TOKENS_DEFAULT_VALUE = 100;
308
309 /**
310 * @deprecated in 3.1
311 */
312 @Deprecated
313 String CPD_IGNORE_LITERALS_PROPERTY = "sonar.cpd.ignore_literals";
314
315 /**
316 * @deprecated in 3.1
317 */
318 @Deprecated
319 String CPD_IGNORE_LITERALS_DEFAULT_VALUE = "true";
320
321 /**
322 * @deprecated in 3.1
323 */
324 @Deprecated
325 String CPD_IGNORE_IDENTIFIERS_PROPERTY = "sonar.cpd.ignore_identifiers";
326
327 /**
328 * @deprecated in 3.1
329 */
330 @Deprecated
331 String CPD_IGNORE_IDENTIFIERS_DEFAULT_VALUE = "false";
332
333 String CPD_SKIP_PROPERTY = "sonar.cpd.skip";
334
335 /**
336 * @since 2.11
337 * @deprecated in 3.1
338 */
339 @Deprecated
340 String CPD_ENGINE = "sonar.cpd.engine";
341
342 /**
343 * @see #CPD_ENGINE
344 * @since 2.11
345 * @deprecated in 3.1
346 */
347 @Deprecated
348 String CPD_ENGINE_DEFAULT_VALUE = "sonar";
349
350 /**
351 * @since 2.11
352 */
353 String CPD_CROSS_PROJECT = "sonar.cpd.cross_project";
354
355 /**
356 * @see #CPD_CROSS_PROJECT
357 * @since 2.11
358 */
359 boolean CPD_CROSS_RPOJECT_DEFAULT_VALUE = false;
360
361 /**
362 * @since 3.5
363 */
364 String CPD_EXCLUSIONS = "sonar.cpd.exclusions";
365
366 /* Design */
367
368 /**
369 * Indicates whether Java bytecode analysis should be skipped.
370 *
371 * @since 2.0
372 */
373 String DESIGN_SKIP_DESIGN_PROPERTY = "sonar.skipDesign";
374 boolean DESIGN_SKIP_DESIGN_DEFAULT_VALUE = false;
375
376 /**
377 * Indicates whether Package Design Analysis should be skipped.
378 *
379 * @since 2.9
380 */
381 String DESIGN_SKIP_PACKAGE_DESIGN_PROPERTY = "sonar.skipPackageDesign";
382 boolean DESIGN_SKIP_PACKAGE_DESIGN_DEFAULT_VALUE = false;
383
384 /* Google Analytics */
385 String GOOGLE_ANALYTICS_PLUGIN = "google-analytics";
386 String GOOGLE_ANALYTICS_ACCOUNT_PROPERTY = "sonar.google-analytics.account";
387
388 /* Time machine periods */
389 String TIMEMACHINE_PERIOD_PREFIX = "sonar.timemachine.period";
390 String TIMEMACHINE_MODE_PREVIOUS_ANALYSIS = "previous_analysis";
391 String TIMEMACHINE_MODE_DATE = "date";
392 String TIMEMACHINE_MODE_VERSION = "version";
393 String TIMEMACHINE_MODE_DAYS = "days";
394 String TIMEMACHINE_MODE_PREVIOUS_VERSION = "previous_version";
395 String TIMEMACHINE_DEFAULT_PERIOD_1 = TIMEMACHINE_MODE_PREVIOUS_ANALYSIS;
396 String TIMEMACHINE_DEFAULT_PERIOD_2 = "30";
397 String TIMEMACHINE_DEFAULT_PERIOD_3 = TIMEMACHINE_MODE_PREVIOUS_VERSION;
398 String TIMEMACHINE_DEFAULT_PERIOD_4 = "";
399 String TIMEMACHINE_DEFAULT_PERIOD_5 = "";
400
401 /**
402 * @since 2.11
403 */
404 String ORGANISATION = "sonar.organisation";
405
406 /**
407 * @since 2.11
408 */
409 String PERMANENT_SERVER_ID = "sonar.server_id";
410
411 /**
412 * @since 2.11
413 */
414 String SERVER_ID_IP_ADDRESS = "sonar.server_id.ip_address";
415
416 /**
417 * @since 3.3
418 */
419 String LINKS_HOME_PAGE = "sonar.links.homepage";
420
421 /**
422 * @since 3.3
423 */
424 String LINKS_CI = "sonar.links.ci";
425
426 /**
427 * @since 3.3
428 */
429 String LINKS_ISSUE_TRACKER = "sonar.links.issue";
430
431 /**
432 * @since 3.3
433 */
434 String LINKS_SOURCES = "sonar.links.scm";
435
436 /**
437 * @since 3.3
438 */
439 String LINKS_SOURCES_DEV = "sonar.links.scm_dev";
440
441 /**
442 * @since 3.4
443 */
444 String LOGIN = "sonar.login";
445
446 /**
447 * @since 3.4
448 */
449 String PASSWORD = "sonar.password";
450
451 /**
452 * @since 3.4
453 */
454 String DRY_RUN = "sonar.dryRun";
455
456 /**
457 * @since 3.5
458 */
459 String TASK = "sonar.task";
460
461 /**
462 * @since 3.6
463 */
464 String SCAN_TASK = "scan";
465
466 /**
467 * @since 3.6
468 */
469 String PROFILING_LOG_PROPERTY = "sonar.showProfiling";
470
471 /**
472 * @deprecated replaced in v3.4 by properties specific to languages, for example sonar.java.coveragePlugin
473 * See http://jira.codehaus.org/browse/SONARJAVA-39 for more details.
474 */
475 @Deprecated
476 String CORE_COVERAGE_PLUGIN_PROPERTY = "sonar.core.codeCoveragePlugin";
477
478 /**
479 * @since 3.7
480 * @deprecated in 4.0 replaced by {@link CoreProperties#PREVIEW_READ_TIMEOUT_SEC}
481 */
482 @Deprecated
483 String DRY_RUN_READ_TIMEOUT_SEC = "sonar.dryRun.readTimeout";
484
485 /**
486 * @since 4.0
487 */
488 String PREVIEW_READ_TIMEOUT_SEC = "sonar.preview.readTimeout";
489
490 /**
491 * @since 4.0
492 */
493 String CORE_PREVENT_AUTOMATIC_PROJECT_CREATION = "sonar.preventAutoProjectCreation";
494
495 /**
496 * @since 4.0
497 */
498 String ANALYSIS_MODE = "sonar.analysis.mode";
499
500 /**
501 * @since 4.0
502 */
503 String ANALYSIS_MODE_ANALYSIS = "analysis";
504
505 /**
506 * @since 4.0
507 */
508 String ANALYSIS_MODE_PREVIEW = "preview";
509
510 /**
511 * @since 4.0
512 */
513 String ANALYSIS_MODE_INCREMENTAL = "incremental";
514
515 /**
516 * @since 4.4
517 */
518 String ANALYSIS_MODE_SENSOR = "sensor";
519
520 /**
521 * @since 4.0
522 */
523 String PREVIEW_INCLUDE_PLUGINS = "sonar.preview.includePlugins";
524 String PREVIEW_INCLUDE_PLUGINS_DEFAULT_VALUE = "";
525
526 /**
527 * @since 4.0
528 */
529 String PREVIEW_EXCLUDE_PLUGINS = "sonar.preview.excludePlugins";
530 String PREVIEW_EXCLUDE_PLUGINS_DEFAULT_VALUE = "buildstability,devcockpit,pdfreport,report,scmactivity,views,jira,buildbreaker";
531
532 /**
533 * @since 4.0
534 */
535 String WORKING_DIRECTORY = "sonar.working.directory";
536 String WORKING_DIRECTORY_DEFAULT_VALUE = ".sonar";
537
538 String BATCH_INCLUDE_PLUGINS = "sonar.includePlugins";
539 String BATCH_EXCLUDE_PLUGINS = "sonar.excludePlugins";
540
541 /**
542 * @since 3.4
543 * @deprecated in 4.0 replaced by {@link CoreProperties#PREVIEW_INCLUDE_PLUGINS}
544 */
545 @Deprecated
546 String DRY_RUN_INCLUDE_PLUGINS = "sonar.dryRun.includePlugins";
547 /**
548 * @since 3.4
549 * @deprecated in 4.0 replaced by {@link CoreProperties#PREVIEW_INCLUDE_PLUGINS_DEFAULT_VALUE}
550 */
551 @Deprecated
552 String DRY_RUN_INCLUDE_PLUGINS_DEFAULT_VALUE = PREVIEW_INCLUDE_PLUGINS_DEFAULT_VALUE;
553
554 /**
555 * @since 3.4
556 * @deprecated in 4.0 replaced by {@link CoreProperties#PREVIEW_EXCLUDE_PLUGINS}
557 */
558 @Deprecated
559 String DRY_RUN_EXCLUDE_PLUGINS = "sonar.dryRun.excludePlugins";
560 /**
561 * @since 3.4
562 * @deprecated in 4.0 replaced by {@link CoreProperties#PREVIEW_EXCLUDE_PLUGINS_DEFAULT_VALUE}
563 */
564 @Deprecated
565 String DRY_RUN_EXCLUDE_PLUGINS_DEFAULT_VALUE = PREVIEW_EXCLUDE_PLUGINS_DEFAULT_VALUE;
566
567 /**
568 * @since 4.2
569 */
570 String CORE_AUTHENTICATOR_LOCAL_USERS = "sonar.security.localUsers";
571
572 /**
573 * @since 4.0
574 */
575 String HOURS_IN_DAY = "sonar.technicalDebt.hoursInDay";
576
577 /**
578 * @since 4.5
579 */
580 String SIZE_METRIC = "sonar.technicalDebt.sizeMetric";
581
582 /**
583 * @since 4.5
584 */
585 String DEVELOPMENT_COST = "sonar.technicalDebt.developmentCost";
586
587 /**
588 * @since 4.5
589 */
590 String DEVELOPMENT_COST_DEF_VALUE = "30";
591
592 /**
593 * @since 4.5
594 */
595 String RATING_GRID = "sonar.technicalDebt.ratingGrid";
596
597 /**
598 * @since 4.5
599 */
600 String RATING_GRID_DEF_VALUES = "0.1,0.2,0.5,1";
601
602 /**
603 * @since 4.5
604 */
605 String LANGUAGE_SPECIFIC_PARAMETERS = "languageSpecificParameters";
606
607 /**
608 * @since 4.5
609 */
610 String LANGUAGE_SPECIFIC_PARAMETERS_LANGUAGE_KEY = "language";
611
612 /**
613 * @since 4.5
614 */
615 String LANGUAGE_SPECIFIC_PARAMETERS_MAN_DAYS_KEY = "man_days";
616
617 /**
618 * @since 4.5
619 */
620 String LANGUAGE_SPECIFIC_PARAMETERS_SIZE_METRIC_KEY = "size_metric";
621 }