001/* 002 * SonarQube 003 * Copyright (C) 2009-2016 SonarSource SA 004 * mailto:contact AT sonarsource DOT com 005 * 006 * This program 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 * This program 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 */ 020package org.sonar.api; 021 022import org.sonar.api.batch.fs.FileSystem; 023 024/** 025 * Non-exhaustive list of constants of core properties. 026 * 027 * @since 1.11 028 */ 029public interface CoreProperties { 030 031 /** 032 * @since 3.0 033 */ 034 String ENCRYPTION_SECRET_KEY_PATH = "sonar.secretKeyPath"; 035 036 /** 037 * @since 2.11 038 */ 039 String CATEGORY_GENERAL = "general"; 040 041 /** 042 * @since 4.0 043 */ 044 String SUBCATEGORY_DATABASE_CLEANER = "databaseCleaner"; 045 046 /** 047 * @since 4.0 048 */ 049 String SUBCATEGORY_DUPLICATIONS = "duplications"; 050 051 /** 052 * @since 4.0 053 */ 054 String SUBCATEGORY_DIFFERENTIAL_VIEWS = "differentialViews"; 055 056 /** 057 * @since 5.1 058 */ 059 String SUBCATEGORY_LOOKNFEEL = "looknfeel"; 060 061 /** 062 * @since 5.1 063 */ 064 String SUBCATEGORY_ISSUES = "issues"; 065 066 /** 067 * @since 4.0 068 */ 069 String SUBCATEGORY_L10N = "localization"; 070 071 /** 072 * @since 2.11 073 */ 074 String CATEGORY_CODE_COVERAGE = "codeCoverage"; 075 076 /** 077 * @see #SUBCATEGORY_DUPLICATIONS 078 * @since 2.11 079 * @deprecated since 4.0. See http://jira.sonarsource.com/browse/SONAR-4660. Do not forget to remove the properties from core bundles 080 */ 081 @Deprecated 082 String CATEGORY_DUPLICATIONS = "duplications"; 083 084 /** 085 * @since 2.11 086 */ 087 String CATEGORY_SECURITY = "security"; 088 089 /** 090 * @see #SUBCATEGORY_L10N 091 * @since 2.11 092 * @deprecated since 4.0. See http://jira.sonarsource.com/browse/SONAR-4660. Do not forget to remove the properties from core bundles 093 */ 094 @Deprecated 095 String CATEGORY_L10N = "localization"; 096 097 /** 098 * @since 2.11 099 */ 100 String CATEGORY_JAVA = "java"; 101 102 /** 103 * @see #SUBCATEGORY_DIFFERENTIAL_VIEWS 104 * @since 2.11 105 * @deprecated since 4.0. See http://jira.sonarsource.com/browse/SONAR-4660. Do not forget to remove the properties from core bundles 106 */ 107 @Deprecated 108 String CATEGORY_DIFFERENTIAL_VIEWS = "differentialViews"; 109 110 /** 111 * @since 3.3 112 */ 113 String CATEGORY_EXCLUSIONS = "exclusions"; 114 115 /** 116 * @since 4.0 117 */ 118 String SUBCATEGORY_FILES_EXCLUSIONS = "files"; 119 120 /** 121 * @since 4.0 122 */ 123 String SUBCATEGORY_DUPLICATIONS_EXCLUSIONS = "duplications"; 124 125 /** 126 * @since 4.0 127 */ 128 String SUBCATEGORY_COVERAGE_EXCLUSIONS = "coverage"; 129 130 /** 131 * @since 3.7 132 */ 133 String CATEGORY_LICENSES = "licenses"; 134 135 /** 136 * @since 4.0 137 */ 138 String CATEGORY_TECHNICAL_DEBT = "technicalDebt"; 139 140 /* Global settings */ 141 String SONAR_HOME = "SONAR_HOME"; 142 String PROJECT_BRANCH_PROPERTY = "sonar.branch"; 143 String PROJECT_VERSION_PROPERTY = "sonar.projectVersion"; 144 145 /** 146 * @since 2.6 147 */ 148 String PROJECT_KEY_PROPERTY = "sonar.projectKey"; 149 150 /** 151 * @since 2.6 152 */ 153 String PROJECT_NAME_PROPERTY = "sonar.projectName"; 154 155 /** 156 * @since 2.6 157 */ 158 String PROJECT_DESCRIPTION_PROPERTY = "sonar.projectDescription"; 159 160 /** 161 * To determine value of this property use {@link FileSystem#encoding()}. 162 * 163 * @since 2.6 164 */ 165 String ENCODING_PROPERTY = "sonar.sourceEncoding"; 166 167 /** 168 * Value format is yyyy-MM-dd 169 */ 170 String PROJECT_DATE_PROPERTY = "sonar.projectDate"; 171 172 /** 173 * @deprecated since 4.2 projects are now multi-language 174 */ 175 @Deprecated 176 String PROJECT_LANGUAGE_PROPERTY = "sonar.language"; 177 178 /** 179 * @deprecated since 4.3. See http://jira.sonarsource.com/browse/SONAR-5185 180 */ 181 @Deprecated 182 String DYNAMIC_ANALYSIS_PROPERTY = "sonar.dynamicAnalysis"; 183 184 /* Exclusions */ 185 String PROJECT_INCLUSIONS_PROPERTY = "sonar.inclusions"; 186 String PROJECT_EXCLUSIONS_PROPERTY = "sonar.exclusions"; 187 188 /* Coverage exclusions */ 189 String PROJECT_COVERAGE_EXCLUSIONS_PROPERTY = "sonar.coverage.exclusions"; 190 191 /** 192 * @since 3.3 193 */ 194 String PROJECT_TEST_INCLUSIONS_PROPERTY = "sonar.test.inclusions"; 195 String PROJECT_TEST_EXCLUSIONS_PROPERTY = "sonar.test.exclusions"; 196 String GLOBAL_EXCLUSIONS_PROPERTY = "sonar.global.exclusions"; 197 String GLOBAL_TEST_EXCLUSIONS_PROPERTY = "sonar.global.test.exclusions"; 198 199 /* Sonar Core */ 200 201 /** 202 * @deprecated since 4.1. See http://jira.sonarsource.com/browse/SONAR-4875 203 */ 204 @Deprecated 205 String CORE_VIOLATION_LOCALE_PROPERTY = "sonar.violationLocale"; 206 207 String CORE_VIOLATION_LOCALE_DEFAULT_VALUE = "en"; 208 209 /** 210 * @deprecated since 4.3. See http://jira.sonarsource.com/browse/SONAR-5109 211 */ 212 @Deprecated 213 String CORE_SKIPPED_MODULES_PROPERTY = "sonar.skippedModules"; 214 215 /** 216 * @since 4.0 217 * @deprecated since 4.3. See http://jira.sonarsource.com/browse/SONAR-5109 218 */ 219 @Deprecated 220 String CORE_INCLUDED_MODULES_PROPERTY = "sonar.includedModules"; 221 222 String CORE_FORCE_AUTHENTICATION_PROPERTY = "sonar.forceAuthentication"; 223 boolean CORE_FORCE_AUTHENTICATION_DEFAULT_VALUE = false; 224 String CORE_ALLOW_USERS_TO_SIGNUP_PROPERTY = "sonar.allowUsersToSignUp"; 225 String CORE_DEFAULT_GROUP = "sonar.defaultGroup"; 226 String CORE_DEFAULT_GROUP_DEFAULT_VALUE = "sonar-users"; 227 boolean CORE_ALLOW_USERS_TO_SIGNUP_DEAULT_VALUE = false; 228 229 /** 230 * @deprecated since 2.14. See http://jira.sonarsource.com/browse/SONAR-3153. Replaced by {@link #CORE_AUTHENTICATOR_REALM}. 231 */ 232 @Deprecated 233 String CORE_AUTHENTICATOR_CLASS = "sonar.authenticator.class"; 234 235 /** 236 * @since 2.14 237 */ 238 String CORE_AUTHENTICATOR_REALM = "sonar.security.realm"; 239 240 String CORE_AUTHENTICATOR_IGNORE_STARTUP_FAILURE = "sonar.authenticator.ignoreStartupFailure"; 241 String CORE_AUTHENTICATOR_CREATE_USERS = "sonar.authenticator.createUsers"; 242 243 /** 244 * @since 3.6 245 * @deprecated since 5.4. This feature is not supported anymore. See http://jira.sonarsource.com/browse/SONAR-7219 246 */ 247 @Deprecated 248 String CORE_AUTHENTICATOR_UPDATE_USER_ATTRIBUTES = "sonar.security.updateUserAttributes"; 249 250 String SERVER_VERSION = "sonar.core.version"; 251 String SERVER_ID = "sonar.core.id"; 252 253 // format is yyyy-MM-dd'T'HH:mm:ssZ 254 String SERVER_STARTTIME = "sonar.core.startTime"; 255 256 /** 257 * @since 2.10 258 */ 259 String SERVER_BASE_URL = "sonar.core.serverBaseURL"; 260 261 /** 262 * @see #SERVER_BASE_URL 263 * @since 2.10 264 */ 265 String SERVER_BASE_URL_DEFAULT_VALUE = "http://localhost:9000"; 266 267 /* CPD */ 268 String CPD_PLUGIN = "cpd"; 269 270 /** 271 * @deprecated in 5.0 272 * @see <a href="https://jira.sonarsource.com/browse/SONAR-5339">SONAR-5339</a> 273 */ 274 @Deprecated 275 String CPD_SKIP_PROPERTY = "sonar.cpd.skip"; 276 277 /** 278 * @since 2.11 279 */ 280 String CPD_CROSS_PROJECT = "sonar.cpd.cross_project"; 281 282 /** 283 * @see #CPD_CROSS_PROJECT 284 * @since 2.11 285 */ 286 boolean CPD_CROSS_PROJECT_DEFAULT_VALUE = false; 287 288 /** 289 * @since 3.5 290 */ 291 String CPD_EXCLUSIONS = "sonar.cpd.exclusions"; 292 293 /* Design */ 294 295 /** 296 * Indicates whether Java bytecode analysis should be skipped. 297 * 298 * @since 2.0 299 */ 300 String DESIGN_SKIP_DESIGN_PROPERTY = "sonar.skipDesign"; 301 boolean DESIGN_SKIP_DESIGN_DEFAULT_VALUE = false; 302 303 /** 304 * Indicates whether Package Design Analysis should be skipped. 305 * 306 * @since 2.9 307 */ 308 String DESIGN_SKIP_PACKAGE_DESIGN_PROPERTY = "sonar.skipPackageDesign"; 309 boolean DESIGN_SKIP_PACKAGE_DESIGN_DEFAULT_VALUE = false; 310 311 /* Google Analytics */ 312 String GOOGLE_ANALYTICS_PLUGIN = "google-analytics"; 313 String GOOGLE_ANALYTICS_ACCOUNT_PROPERTY = "sonar.google-analytics.account"; 314 315 /** 316 * @since 2.11 317 */ 318 String ORGANISATION = "sonar.organisation"; 319 320 /** 321 * @since 2.11 322 */ 323 String PERMANENT_SERVER_ID = "sonar.server_id"; 324 325 /** 326 * @since 2.11 327 */ 328 String SERVER_ID_IP_ADDRESS = "sonar.server_id.ip_address"; 329 330 /** 331 * @since 3.3 332 */ 333 String LINKS_HOME_PAGE = "sonar.links.homepage"; 334 335 /** 336 * @since 3.3 337 */ 338 String LINKS_CI = "sonar.links.ci"; 339 340 /** 341 * @since 3.3 342 */ 343 String LINKS_ISSUE_TRACKER = "sonar.links.issue"; 344 345 /** 346 * @since 3.3 347 */ 348 String LINKS_SOURCES = "sonar.links.scm"; 349 350 /** 351 * @since 3.3 352 */ 353 String LINKS_SOURCES_DEV = "sonar.links.scm_dev"; 354 355 /** 356 * @since 3.4 357 */ 358 String LOGIN = "sonar.login"; 359 360 /** 361 * @since 3.4 362 */ 363 String PASSWORD = "sonar.password"; 364 365 /** 366 * @since 3.5 367 */ 368 String TASK = "sonar.task"; 369 370 /** 371 * @since 3.6 372 */ 373 String SCAN_TASK = "scan"; 374 375 /** 376 * @since 3.6 377 */ 378 String PROFILING_LOG_PROPERTY = "sonar.showProfiling"; 379 380 /** 381 * @deprecated replaced in v3.4 by properties specific to languages, for example sonar.java.coveragePlugin 382 * See http://jira.sonarsource.com/browse/SONARJAVA-39 for more details. 383 */ 384 @Deprecated 385 String CORE_COVERAGE_PLUGIN_PROPERTY = "sonar.core.codeCoveragePlugin"; 386 387 /** 388 * @since 3.7 389 * @deprecated in 4.0 no more used 390 */ 391 @Deprecated 392 String DRY_RUN_READ_TIMEOUT_SEC = "sonar.dryRun.readTimeout"; 393 394 /** 395 * @since 4.0 396 * @deprecated in 5.1 no more used 397 */ 398 @Deprecated 399 String PREVIEW_READ_TIMEOUT_SEC = "sonar.preview.readTimeout"; 400 401 /** 402 * @since 4.0 403 * @deprecated replaced in 5.2 by the permission 'provisioning' 404 */ 405 @Deprecated 406 String CORE_PREVENT_AUTOMATIC_PROJECT_CREATION = "sonar.preventAutoProjectCreation"; 407 408 /** 409 * @since 4.0 410 */ 411 String ANALYSIS_MODE = "sonar.analysis.mode"; 412 413 /** 414 * @since 4.0 415 * @deprecated since 5.2 the default mode is publish 416 */ 417 @Deprecated 418 String ANALYSIS_MODE_ANALYSIS = "analysis"; 419 420 /** 421 * @since 4.0 422 */ 423 String ANALYSIS_MODE_PREVIEW = "preview"; 424 425 /** 426 * @since 5.2 427 */ 428 String ANALYSIS_MODE_ISSUES = "issues"; 429 430 /** 431 * @since 5.2 432 */ 433 String ANALYSIS_MODE_PUBLISH = "publish"; 434 435 /** 436 * @since 4.0 437 * @deprecated since 5.2 438 */ 439 @Deprecated 440 String ANALYSIS_MODE_INCREMENTAL = "incremental"; 441 442 /** 443 * @since 4.0 444 */ 445 String PREVIEW_INCLUDE_PLUGINS = "sonar.preview.includePlugins"; 446 String PREVIEW_INCLUDE_PLUGINS_DEFAULT_VALUE = ""; 447 448 /** 449 * @since 4.0 450 */ 451 String PREVIEW_EXCLUDE_PLUGINS = "sonar.preview.excludePlugins"; 452 453 // SONAR-6704 add scmstats to the list 454 String PREVIEW_EXCLUDE_PLUGINS_DEFAULT_VALUE = "buildstability,devcockpit,pdfreport,report,views,jira,buildbreaker,scmstats"; 455 456 /** 457 * @since 4.0 458 */ 459 String WORKING_DIRECTORY = "sonar.working.directory"; 460 461 String WORKING_DIRECTORY_DEFAULT_VALUE = ".sonar"; 462 463 /** 464 * @since 5.2 465 */ 466 String GLOBAL_WORKING_DIRECTORY = "sonar.globalWorking.directory"; 467 String GLOBAL_WORKING_DIRECTORY_DEFAULT_VALUE = ""; 468 469 /** 470 * @since 4.2 471 */ 472 String CORE_AUTHENTICATOR_LOCAL_USERS = "sonar.security.localUsers"; 473 474 /** 475 * @since 4.0 476 */ 477 String HOURS_IN_DAY = "sonar.technicalDebt.hoursInDay"; 478 479 /** 480 * @since 4.5 481 * @deprecated no used anymore since 5.2 482 */ 483 @Deprecated 484 String SIZE_METRIC = "sonar.technicalDebt.sizeMetric"; 485 486 /** 487 * @since 4.5 488 */ 489 String DEVELOPMENT_COST = "sonar.technicalDebt.developmentCost"; 490 491 /** 492 * @since 4.5 493 */ 494 String DEVELOPMENT_COST_DEF_VALUE = "30"; 495 496 /** 497 * @since 4.5 498 */ 499 String RATING_GRID = "sonar.technicalDebt.ratingGrid"; 500 501 /** 502 * @since 4.5 503 */ 504 String RATING_GRID_DEF_VALUES = "0.05,0.1,0.2,0.5"; 505 506 /** 507 * @since 4.5 508 */ 509 String LANGUAGE_SPECIFIC_PARAMETERS = "languageSpecificParameters"; 510 511 /** 512 * @since 4.5 513 */ 514 String LANGUAGE_SPECIFIC_PARAMETERS_LANGUAGE_KEY = "language"; 515 516 /** 517 * @since 4.5 518 */ 519 String LANGUAGE_SPECIFIC_PARAMETERS_MAN_DAYS_KEY = "man_days"; 520 521 /** 522 * @since 4.5 523 */ 524 String LANGUAGE_SPECIFIC_PARAMETERS_SIZE_METRIC_KEY = "size_metric"; 525 526 /** 527 * @since 5.0 528 */ 529 String CATEGORY_SCM = "scm"; 530 531 /** 532 * @since 5.0 533 */ 534 String SCM_DISABLED_KEY = "sonar.scm.disabled"; 535 536 /** 537 * @since 5.0 538 */ 539 String SCM_PROVIDER_KEY = "sonar.scm.provider"; 540 541 /** 542 * @since 5.1 543 */ 544 String IMPORT_UNKNOWN_FILES_KEY = "sonar.import_unknown_files"; 545 546 /** 547 * @since 5.1 548 */ 549 String DEFAULT_ISSUE_ASSIGNEE = "sonar.issues.defaultAssigneeLogin"; 550 551}