You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CoreProperties.java 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544
  1. /*
  2. * SonarQube
  3. * Copyright (C) 2009-2019 SonarSource SA
  4. * mailto:info AT sonarsource DOT com
  5. *
  6. * This program is free software; you can redistribute it and/or
  7. * modify it under the terms of the GNU Lesser General Public
  8. * License as published by the Free Software Foundation; either
  9. * version 3 of the License, or (at your option) any later version.
  10. *
  11. * This program is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. * Lesser General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU Lesser General Public License
  17. * along with this program; if not, write to the Free Software Foundation,
  18. * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  19. */
  20. package org.sonar.api;
  21. import org.sonar.api.batch.fs.FileSystem;
  22. import org.sonar.api.platform.Server;
  23. /**
  24. * Non-exhaustive list of constants of core properties.
  25. *
  26. * @since 1.11
  27. */
  28. public interface CoreProperties {
  29. /**
  30. * @since 3.0
  31. */
  32. String ENCRYPTION_SECRET_KEY_PATH = "sonar.secretKeyPath";
  33. /**
  34. * @since 2.11
  35. */
  36. String CATEGORY_GENERAL = "general";
  37. /**
  38. * @since 4.0
  39. */
  40. String SUBCATEGORY_DATABASE_CLEANER = "databaseCleaner";
  41. /**
  42. * @since 7.6
  43. */
  44. String SUBCATEGORY_MODULES = "subProjects";
  45. /**
  46. * @since 4.0
  47. */
  48. String SUBCATEGORY_DUPLICATIONS = "duplications";
  49. /**
  50. * @since 6.6
  51. */
  52. String SUBCATEGORY_BRANCHES = "Branches";
  53. /**
  54. * @since 4.0
  55. */
  56. String SUBCATEGORY_DIFFERENTIAL_VIEWS = "differentialViews";
  57. /**
  58. * @since 5.1
  59. */
  60. String SUBCATEGORY_LOOKNFEEL = "looknfeel";
  61. /**
  62. * @since 5.1
  63. */
  64. String SUBCATEGORY_ISSUES = "issues";
  65. /**
  66. * @since 4.0
  67. */
  68. String SUBCATEGORY_L10N = "localization";
  69. /**
  70. * @since 7.2
  71. */
  72. String CATEGORY_EXTERNAL_ISSUES = "externalIssues";
  73. /**
  74. * @since 2.11
  75. */
  76. String CATEGORY_CODE_COVERAGE = "codeCoverage";
  77. /**
  78. * @since 2.11
  79. */
  80. String CATEGORY_SECURITY = "security";
  81. /**
  82. * @since 2.11
  83. * @deprecated since 6.0
  84. */
  85. @Deprecated
  86. String CATEGORY_JAVA = "java";
  87. /**
  88. * @since 3.3
  89. */
  90. String CATEGORY_EXCLUSIONS = "exclusions";
  91. /**
  92. * @since 4.0
  93. */
  94. String SUBCATEGORY_FILES_EXCLUSIONS = "files";
  95. /**
  96. * @since 4.0
  97. */
  98. String SUBCATEGORY_DUPLICATIONS_EXCLUSIONS = "duplications";
  99. /**
  100. * @since 4.0
  101. */
  102. String SUBCATEGORY_COVERAGE_EXCLUSIONS = "coverage";
  103. /**
  104. * @since 6.1
  105. */
  106. String SUBCATEGORY_EMAIL = "email";
  107. /**
  108. * @since 3.7
  109. */
  110. String CATEGORY_LICENSES = "licenses";
  111. /**
  112. * @since 4.0
  113. */
  114. String CATEGORY_TECHNICAL_DEBT = "technicalDebt";
  115. /* Global settings */
  116. String SONAR_HOME = "SONAR_HOME";
  117. /**
  118. * @deprecated since 6.7. This feature is deprecated in favor of the new branch feature.
  119. * @see <a href="https://redirect.sonarsource.com/doc/branches.html">https://redirect.sonarsource.com/doc/branches.html/a>
  120. */
  121. @Deprecated
  122. String PROJECT_BRANCH_PROPERTY = "sonar.branch";
  123. String PROJECT_VERSION_PROPERTY = "sonar.projectVersion";
  124. /**
  125. * @since 2.6
  126. */
  127. String PROJECT_KEY_PROPERTY = "sonar.projectKey";
  128. /**
  129. * @since 2.6
  130. */
  131. String PROJECT_NAME_PROPERTY = "sonar.projectName";
  132. /**
  133. * @since 2.6
  134. */
  135. String PROJECT_DESCRIPTION_PROPERTY = "sonar.projectDescription";
  136. /**
  137. * To determine value of this property use {@link FileSystem#encoding()}.
  138. *
  139. * @since 2.6
  140. */
  141. String ENCODING_PROPERTY = "sonar.sourceEncoding";
  142. /**
  143. * Value format is yyyy-MM-dd
  144. */
  145. String PROJECT_DATE_PROPERTY = "sonar.projectDate";
  146. /**
  147. * @since 6.6
  148. */
  149. String LONG_LIVED_BRANCHES_REGEX = "sonar.branch.longLivedBranches.regex";
  150. /**
  151. * @deprecated since 4.2 projects are now multi-language
  152. */
  153. @Deprecated
  154. String PROJECT_LANGUAGE_PROPERTY = "sonar.language";
  155. /* Exclusions */
  156. String PROJECT_INCLUSIONS_PROPERTY = "sonar.inclusions";
  157. String PROJECT_EXCLUSIONS_PROPERTY = "sonar.exclusions";
  158. /* Coverage exclusions */
  159. String PROJECT_COVERAGE_EXCLUSIONS_PROPERTY = "sonar.coverage.exclusions";
  160. /**
  161. * @since 3.3
  162. */
  163. String PROJECT_TEST_INCLUSIONS_PROPERTY = "sonar.test.inclusions";
  164. String PROJECT_TEST_EXCLUSIONS_PROPERTY = "sonar.test.exclusions";
  165. String GLOBAL_EXCLUSIONS_PROPERTY = "sonar.global.exclusions";
  166. String GLOBAL_TEST_EXCLUSIONS_PROPERTY = "sonar.global.test.exclusions";
  167. /* Sonar Core */
  168. String CORE_FORCE_AUTHENTICATION_PROPERTY = "sonar.forceAuthentication";
  169. boolean CORE_FORCE_AUTHENTICATION_DEFAULT_VALUE = false;
  170. /**
  171. * @deprecated since 6.3. This feature is not supported anymore
  172. * @see <a href="https://jira.sonarsource.com/browse/SONAR-7762">SONAR-7762/a>
  173. */
  174. @Deprecated
  175. String CORE_ALLOW_USERS_TO_SIGNUP_PROPERTY = "sonar.allowUsersToSignUp";
  176. /**
  177. * @deprecated since 6.4. The default group is hardcoded to 'sonar-users'
  178. * @see <a href="https://jira.sonarsource.com/browse/SONAR-9014">SONAR-9014/a>
  179. */
  180. @Deprecated
  181. String CORE_DEFAULT_GROUP = "sonar.defaultGroup";
  182. /**
  183. * @deprecated since 6.4. The default group is hardcoded to 'sonar-users'
  184. * @see <a href="https://jira.sonarsource.com/browse/SONAR-9014">SONAR-9014/a>
  185. */
  186. @Deprecated
  187. String CORE_DEFAULT_GROUP_DEFAULT_VALUE = "sonar-users";
  188. boolean CORE_ALLOW_USERS_TO_SIGNUP_DEAULT_VALUE = false;
  189. /**
  190. * @deprecated since 2.14. See http://jira.sonarsource.com/browse/SONAR-3153. Replaced by {@link #CORE_AUTHENTICATOR_REALM}.
  191. */
  192. @Deprecated
  193. String CORE_AUTHENTICATOR_CLASS = "sonar.authenticator.class";
  194. /**
  195. * @since 2.14
  196. * @deprecated since 7.1, this setting should not be used by plugin
  197. */
  198. @Deprecated
  199. String CORE_AUTHENTICATOR_REALM = "sonar.security.realm";
  200. /**
  201. * @deprecated since 7.1, this setting should not be used by plugin
  202. */
  203. @Deprecated
  204. String CORE_AUTHENTICATOR_IGNORE_STARTUP_FAILURE = "sonar.authenticator.ignoreStartupFailure";
  205. /**
  206. * @deprecated since 6.3. This feature is not supported anymore
  207. * @see <a href="https://jira.sonarsource.com/browse/SONAR-8208">SONAR-8208/a>
  208. */
  209. @Deprecated
  210. String CORE_AUTHENTICATOR_CREATE_USERS = "sonar.authenticator.createUsers";
  211. /**
  212. * @since 3.6
  213. * @deprecated since 5.4. This feature is not supported anymore. See http://jira.sonarsource.com/browse/SONAR-7219
  214. */
  215. @Deprecated
  216. String CORE_AUTHENTICATOR_UPDATE_USER_ATTRIBUTES = "sonar.security.updateUserAttributes";
  217. String SERVER_ID = "sonar.core.id";
  218. // format is yyyy-MM-dd'T'HH:mm:ssZ
  219. String SERVER_STARTTIME = "sonar.core.startTime";
  220. /**
  221. * This property defines the SonarQubeServer base url, such as <i>http://yourhost.yourdomain/sonar</i>.
  222. * When this property is not set, the base url of the SonarQube server is provided by {@link Server#getURL()}.
  223. *
  224. * @since 2.10
  225. */
  226. String SERVER_BASE_URL = "sonar.core.serverBaseURL";
  227. /**
  228. * @see #SERVER_BASE_URL
  229. * @since 2.10
  230. * @deprecated since 5.6. This constant default value is incorrect if a host and/or a port and/or a context have been configured.
  231. * The correct default value when {@link #SERVER_BASE_URL} is not set is provided by {@link Server#getURL()}.
  232. */
  233. @Deprecated
  234. String SERVER_BASE_URL_DEFAULT_VALUE = "http://localhost:9000";
  235. /**
  236. * @since 2.11
  237. * @deprecated since 6.7
  238. */
  239. @Deprecated
  240. String CPD_CROSS_PROJECT = "sonar.cpd.cross_project";
  241. /**
  242. * @since 3.5
  243. */
  244. String CPD_EXCLUSIONS = "sonar.cpd.exclusions";
  245. /**
  246. * @since 2.11
  247. * @deprecated in 6.7. See {@link Server#getPermanentServerId()}
  248. */
  249. @Deprecated
  250. String ORGANISATION = "sonar.organisation";
  251. /**
  252. * @since 2.11
  253. * @deprecated in 6.7. See {@link Server#getPermanentServerId()}
  254. */
  255. @Deprecated
  256. String PERMANENT_SERVER_ID = "sonar.server_id";
  257. /**
  258. * @since 2.11
  259. * @deprecated in 6.7. See {@link Server#getPermanentServerId()}
  260. */
  261. @Deprecated
  262. String SERVER_ID_IP_ADDRESS = "sonar.server_id.ip_address";
  263. /**
  264. * @since 3.3
  265. */
  266. String LINKS_HOME_PAGE = "sonar.links.homepage";
  267. /**
  268. * @since 3.3
  269. */
  270. String LINKS_CI = "sonar.links.ci";
  271. /**
  272. * @since 3.3
  273. */
  274. String LINKS_ISSUE_TRACKER = "sonar.links.issue";
  275. /**
  276. * @since 3.3
  277. */
  278. String LINKS_SOURCES = "sonar.links.scm";
  279. /**
  280. * @since 3.3
  281. * @deprecated since 7.1, developer connection link is no more feed
  282. */
  283. @Deprecated
  284. String LINKS_SOURCES_DEV = "sonar.links.scm_dev";
  285. /**
  286. * @since 3.4
  287. */
  288. String LOGIN = "sonar.login";
  289. /**
  290. * @since 3.4
  291. */
  292. String PASSWORD = "sonar.password";
  293. /**
  294. * @since 3.5
  295. * @deprecated since 7.6
  296. */
  297. @Deprecated
  298. String TASK = "sonar.task";
  299. /**
  300. * @since 3.6
  301. * @deprecated since 7.6
  302. */
  303. @Deprecated
  304. String SCAN_TASK = "scan";
  305. /**
  306. * @since 3.6
  307. */
  308. // TODO remove?
  309. String PROFILING_LOG_PROPERTY = "sonar.showProfiling";
  310. /**
  311. * @since 4.0
  312. * @deprecated in 5.1 no more used
  313. */
  314. @Deprecated
  315. String PREVIEW_READ_TIMEOUT_SEC = "sonar.preview.readTimeout";
  316. /**
  317. * @since 4.0
  318. * @deprecated replaced in 5.2 by the permission 'provisioning'
  319. */
  320. @Deprecated
  321. String CORE_PREVENT_AUTOMATIC_PROJECT_CREATION = "sonar.preventAutoProjectCreation";
  322. /**
  323. * @since 4.0
  324. */
  325. String ANALYSIS_MODE = "sonar.analysis.mode";
  326. /**
  327. * @since 4.0
  328. * @deprecated since 5.2 the default mode is publish
  329. */
  330. @Deprecated
  331. String ANALYSIS_MODE_ANALYSIS = "analysis";
  332. /**
  333. * @since 4.0
  334. * @deprecated since 7.3 preview mode deprecated since 6.6
  335. */
  336. @Deprecated
  337. String ANALYSIS_MODE_PREVIEW = "preview";
  338. /**
  339. * @since 5.2
  340. * @deprecated since 7.3 issues mode deprecated since 6.6
  341. */
  342. @Deprecated
  343. String ANALYSIS_MODE_ISSUES = "issues";
  344. /**
  345. * @since 5.2
  346. */
  347. String ANALYSIS_MODE_PUBLISH = "publish";
  348. /**
  349. * @since 4.0
  350. */
  351. String PREVIEW_INCLUDE_PLUGINS = "sonar.preview.includePlugins";
  352. String PREVIEW_INCLUDE_PLUGINS_DEFAULT_VALUE = "";
  353. /**
  354. * @since 4.0
  355. */
  356. String PREVIEW_EXCLUDE_PLUGINS = "sonar.preview.excludePlugins";
  357. String PREVIEW_EXCLUDE_PLUGINS_DEFAULT_VALUE = "devcockpit,pdfreport,governance,ldap,authaad,authgithub,authbitbucket,googleanalytics";
  358. /**
  359. * @since 4.0
  360. */
  361. String WORKING_DIRECTORY = "sonar.working.directory";
  362. String WORKING_DIRECTORY_DEFAULT_VALUE = ".sonar";
  363. /**
  364. * @since 5.2
  365. */
  366. String GLOBAL_WORKING_DIRECTORY = "sonar.globalWorking.directory";
  367. String GLOBAL_WORKING_DIRECTORY_DEFAULT_VALUE = "";
  368. /**
  369. * @since 4.2
  370. * @deprecated no more used since 5.5
  371. */
  372. @Deprecated
  373. String CORE_AUTHENTICATOR_LOCAL_USERS = "sonar.security.localUsers";
  374. /**
  375. * @since 4.0
  376. * @deprecated no more used since 6.3. See https://jira.sonarsource.com/browse/SONAR-8610
  377. */
  378. @Deprecated
  379. String HOURS_IN_DAY = "sonar.technicalDebt.hoursInDay";
  380. /**
  381. * @since 4.5
  382. * @deprecated no used anymore since 5.2
  383. */
  384. @Deprecated
  385. String SIZE_METRIC = "sonar.technicalDebt.sizeMetric";
  386. /**
  387. * @since 4.5
  388. */
  389. String DEVELOPMENT_COST = "sonar.technicalDebt.developmentCost";
  390. /**
  391. * @since 4.5
  392. */
  393. String DEVELOPMENT_COST_DEF_VALUE = "30";
  394. /**
  395. * @since 4.5
  396. */
  397. String RATING_GRID = "sonar.technicalDebt.ratingGrid";
  398. /**
  399. * @since 4.5
  400. */
  401. String RATING_GRID_DEF_VALUES = "0.05,0.1,0.2,0.5";
  402. /**
  403. * @since 4.5
  404. */
  405. String LANGUAGE_SPECIFIC_PARAMETERS = "languageSpecificParameters";
  406. /**
  407. * @since 4.5
  408. */
  409. String LANGUAGE_SPECIFIC_PARAMETERS_LANGUAGE_KEY = "language";
  410. /**
  411. * @since 4.5
  412. */
  413. String LANGUAGE_SPECIFIC_PARAMETERS_MAN_DAYS_KEY = "man_days";
  414. /**
  415. * @since 4.5
  416. */
  417. String LANGUAGE_SPECIFIC_PARAMETERS_SIZE_METRIC_KEY = "size_metric";
  418. /**
  419. * @since 5.0
  420. */
  421. String CATEGORY_SCM = "scm";
  422. /**
  423. * @since 5.0
  424. */
  425. String SCM_DISABLED_KEY = "sonar.scm.disabled";
  426. /**
  427. * @since 7.6
  428. */
  429. String SCM_EXCLUSIONS_DISABLED_KEY = "sonar.scm.exclusions.disabled";
  430. /**
  431. * @since 5.0
  432. */
  433. String SCM_PROVIDER_KEY = "sonar.scm.provider";
  434. /**
  435. * @since 5.1
  436. * @deprecated since 6.3. No longer taken into consideration as all files are always imported.
  437. */
  438. @Deprecated
  439. String IMPORT_UNKNOWN_FILES_KEY = "sonar.import_unknown_files";
  440. /**
  441. * @since 5.1
  442. */
  443. String DEFAULT_ISSUE_ASSIGNEE = "sonar.issues.defaultAssigneeLogin";
  444. /**
  445. * @since 7.6
  446. */
  447. String MODULE_LEVEL_ARCHIVED_SETTINGS = "sonar.subproject.settings.archived";
  448. }