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 9.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416
  1. /*
  2. * SonarQube
  3. * Copyright (C) 2009-2021 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. * @deprecated since 8.1. Database cleaning now has a dedicated category {@link CoreProperties#CATEGORY_HOUSEKEEPING}.
  40. */
  41. @Deprecated
  42. String SUBCATEGORY_DATABASE_CLEANER = "databaseCleaner";
  43. /**
  44. * @since 7.6
  45. */
  46. String SUBCATEGORY_MODULES = "subProjects";
  47. /**
  48. * @since 4.0
  49. */
  50. String SUBCATEGORY_DUPLICATIONS = "duplications";
  51. /**
  52. * @since 8.2
  53. */
  54. String CATEGORY_ALM_INTEGRATION = "almintegration";
  55. /**
  56. * @since 8.1
  57. */
  58. String CATEGORY_HOUSEKEEPING = "housekeeping";
  59. /**
  60. * @since 6.6
  61. */
  62. String SUBCATEGORY_BRANCHES_AND_PULL_REQUESTS = "branchesAndPullRequests";
  63. /**
  64. * @since 8.1
  65. */
  66. String SUBCATEGORY_GENERAL = "general";
  67. /**
  68. * @since 4.0
  69. */
  70. String SUBCATEGORY_DIFFERENTIAL_VIEWS = "differentialViews";
  71. /**
  72. * @since 5.1
  73. */
  74. String SUBCATEGORY_LOOKNFEEL = "looknfeel";
  75. /**
  76. * @since 5.1
  77. */
  78. String SUBCATEGORY_ISSUES = "issues";
  79. /**
  80. * @since 8.9
  81. */
  82. String SUBCATEGORY_QUALITY_GATE = "qualityGate";
  83. /**
  84. * @since 4.0
  85. */
  86. String SUBCATEGORY_L10N = "localization";
  87. /**
  88. * @since 7.2
  89. */
  90. String CATEGORY_EXTERNAL_ISSUES = "externalIssues";
  91. /**
  92. * @since 2.11
  93. */
  94. String CATEGORY_CODE_COVERAGE = "codeCoverage";
  95. /**
  96. * @since 2.11
  97. */
  98. String CATEGORY_SECURITY = "security";
  99. /**
  100. * @since 3.3
  101. */
  102. String CATEGORY_EXCLUSIONS = "exclusions";
  103. /**
  104. * @since 4.0
  105. */
  106. String SUBCATEGORY_FILES_EXCLUSIONS = "files";
  107. /**
  108. * @since 4.0
  109. */
  110. String SUBCATEGORY_DUPLICATIONS_EXCLUSIONS = "duplications";
  111. /**
  112. * @since 4.0
  113. */
  114. String SUBCATEGORY_COVERAGE_EXCLUSIONS = "coverage";
  115. /**
  116. * @since 6.1
  117. */
  118. String SUBCATEGORY_EMAIL = "email";
  119. /**
  120. * @since 3.7
  121. */
  122. String CATEGORY_LICENSES = "licenses";
  123. /**
  124. * @since 4.0
  125. */
  126. String CATEGORY_TECHNICAL_DEBT = "technicalDebt";
  127. /* Global settings */
  128. String SONAR_HOME = "SONAR_HOME";
  129. String PROJECT_VERSION_PROPERTY = "sonar.projectVersion";
  130. String BUILD_STRING_PROPERTY = "sonar.buildString";
  131. /**
  132. * @since 2.6
  133. */
  134. String PROJECT_KEY_PROPERTY = "sonar.projectKey";
  135. /**
  136. * @since 2.6
  137. */
  138. String PROJECT_NAME_PROPERTY = "sonar.projectName";
  139. /**
  140. * @since 2.6
  141. */
  142. String PROJECT_DESCRIPTION_PROPERTY = "sonar.projectDescription";
  143. /**
  144. * To determine value of this property use {@link FileSystem#encoding()}.
  145. *
  146. * @since 2.6
  147. */
  148. String ENCODING_PROPERTY = "sonar.sourceEncoding";
  149. /**
  150. * Value format is yyyy-MM-dd
  151. */
  152. String PROJECT_DATE_PROPERTY = "sonar.projectDate";
  153. /* Exclusions */
  154. String PROJECT_INCLUSIONS_PROPERTY = "sonar.inclusions";
  155. String PROJECT_EXCLUSIONS_PROPERTY = "sonar.exclusions";
  156. /* Coverage exclusions */
  157. String PROJECT_COVERAGE_EXCLUSIONS_PROPERTY = "sonar.coverage.exclusions";
  158. /**
  159. * @since 3.3
  160. */
  161. String PROJECT_TEST_INCLUSIONS_PROPERTY = "sonar.test.inclusions";
  162. String PROJECT_TEST_EXCLUSIONS_PROPERTY = "sonar.test.exclusions";
  163. String GLOBAL_EXCLUSIONS_PROPERTY = "sonar.global.exclusions";
  164. String GLOBAL_TEST_EXCLUSIONS_PROPERTY = "sonar.global.test.exclusions";
  165. /* Sonar Core */
  166. String CORE_FORCE_AUTHENTICATION_PROPERTY = "sonar.forceAuthentication";
  167. boolean CORE_FORCE_AUTHENTICATION_DEFAULT_VALUE = true;
  168. String CORE_ALLOW_PERMISSION_MANAGEMENT_FOR_PROJECT_ADMINS_PROPERTY = "sonar.allowPermissionManagementForProjectAdmins";
  169. boolean CORE_ALLOW_PERMISSION_MANAGEMENT_FOR_PROJECT_ADMINS_DEFAULT_VALUE = true;
  170. /**
  171. * @deprecated since 2.14. See http://jira.sonarsource.com/browse/SONAR-3153. Replaced by {@link #CORE_AUTHENTICATOR_REALM}.
  172. */
  173. @Deprecated
  174. String CORE_AUTHENTICATOR_CLASS = "sonar.authenticator.class";
  175. /**
  176. * @since 2.14
  177. * @deprecated since 7.1, this setting should not be used by plugin
  178. */
  179. @Deprecated
  180. String CORE_AUTHENTICATOR_REALM = "sonar.security.realm";
  181. /**
  182. * @deprecated since 7.1, this setting should not be used by plugin
  183. */
  184. @Deprecated
  185. String CORE_AUTHENTICATOR_IGNORE_STARTUP_FAILURE = "sonar.authenticator.ignoreStartupFailure";
  186. /**
  187. * @deprecated since 6.3. This feature is not supported anymore
  188. * @see <a href="https://jira.sonarsource.com/browse/SONAR-8208">SONAR-8208/a>
  189. */
  190. @Deprecated
  191. String CORE_AUTHENTICATOR_CREATE_USERS = "sonar.authenticator.createUsers";
  192. /**
  193. * @since 3.6
  194. * @deprecated since 5.4. This feature is not supported anymore. See http://jira.sonarsource.com/browse/SONAR-7219
  195. */
  196. @Deprecated
  197. String CORE_AUTHENTICATOR_UPDATE_USER_ATTRIBUTES = "sonar.security.updateUserAttributes";
  198. String SERVER_ID = "sonar.core.id";
  199. // format is yyyy-MM-dd'T'HH:mm:ssZ
  200. String SERVER_STARTTIME = "sonar.core.startTime";
  201. /**
  202. * This property defines the SonarQubeServer base url, such as <i>http://yourhost.yourdomain/sonar</i>.
  203. * When this property is not set, the base url of the SonarQube server is provided by {@link Server#getURL()}.
  204. *
  205. * @since 2.10
  206. */
  207. String SERVER_BASE_URL = "sonar.core.serverBaseURL";
  208. /**
  209. * @since 2.11
  210. * @deprecated since 6.7
  211. */
  212. @Deprecated
  213. String CPD_CROSS_PROJECT = "sonar.cpd.cross_project";
  214. /**
  215. * @since 3.5
  216. */
  217. String CPD_EXCLUSIONS = "sonar.cpd.exclusions";
  218. /**
  219. * @since 3.3
  220. */
  221. String LINKS_HOME_PAGE = "sonar.links.homepage";
  222. /**
  223. * @since 3.3
  224. */
  225. String LINKS_CI = "sonar.links.ci";
  226. /**
  227. * @since 3.3
  228. */
  229. String LINKS_ISSUE_TRACKER = "sonar.links.issue";
  230. /**
  231. * @since 3.3
  232. */
  233. String LINKS_SOURCES = "sonar.links.scm";
  234. /**
  235. * @since 3.3
  236. * @deprecated since 7.1, developer connection link is no more feed
  237. */
  238. @Deprecated
  239. String LINKS_SOURCES_DEV = "sonar.links.scm_dev";
  240. /**
  241. * @since 3.4
  242. */
  243. String LOGIN = "sonar.login";
  244. /**
  245. * @since 3.4
  246. */
  247. String PASSWORD = "sonar.password";
  248. /**
  249. * @since 3.5
  250. * @deprecated since 7.6
  251. */
  252. @Deprecated
  253. String TASK = "sonar.task";
  254. /**
  255. * @since 3.6
  256. * @deprecated since 7.6
  257. */
  258. @Deprecated
  259. String SCAN_TASK = "scan";
  260. /**
  261. * @since 3.6
  262. * Removed in 8.4 by mistake and reintroduced in 8.5
  263. */
  264. String PROFILING_LOG_PROPERTY = "sonar.showProfiling";
  265. /**
  266. * @since 4.0
  267. */
  268. String WORKING_DIRECTORY = "sonar.working.directory";
  269. String WORKING_DIRECTORY_DEFAULT_VALUE = ".sonar";
  270. /**
  271. * @since 5.2
  272. */
  273. String GLOBAL_WORKING_DIRECTORY = "sonar.globalWorking.directory";
  274. String GLOBAL_WORKING_DIRECTORY_DEFAULT_VALUE = "";
  275. /**
  276. * @since 4.5
  277. */
  278. String DEVELOPMENT_COST = "sonar.technicalDebt.developmentCost";
  279. /**
  280. * @since 4.5
  281. */
  282. String DEVELOPMENT_COST_DEF_VALUE = "30";
  283. /**
  284. * @since 4.5
  285. */
  286. String RATING_GRID = "sonar.technicalDebt.ratingGrid";
  287. /**
  288. * @since 4.5
  289. */
  290. String RATING_GRID_DEF_VALUES = "0.05,0.1,0.2,0.5";
  291. /**
  292. * @since 4.5
  293. */
  294. String LANGUAGE_SPECIFIC_PARAMETERS = "languageSpecificParameters";
  295. /**
  296. * @since 4.5
  297. */
  298. String LANGUAGE_SPECIFIC_PARAMETERS_LANGUAGE_KEY = "language";
  299. /**
  300. * @since 4.5
  301. */
  302. String LANGUAGE_SPECIFIC_PARAMETERS_MAN_DAYS_KEY = "man_days";
  303. /**
  304. * @since 4.5
  305. */
  306. String LANGUAGE_SPECIFIC_PARAMETERS_SIZE_METRIC_KEY = "size_metric";
  307. /**
  308. * @since 5.0
  309. */
  310. String CATEGORY_SCM = "scm";
  311. /**
  312. * @since 5.0
  313. */
  314. String SCM_DISABLED_KEY = "sonar.scm.disabled";
  315. /**
  316. * @since 7.6
  317. */
  318. String SCM_EXCLUSIONS_DISABLED_KEY = "sonar.scm.exclusions.disabled";
  319. /**
  320. * @since 5.0
  321. */
  322. String SCM_PROVIDER_KEY = "sonar.scm.provider";
  323. /**
  324. * @since 5.1
  325. */
  326. String DEFAULT_ISSUE_ASSIGNEE = "sonar.issues.defaultAssigneeLogin";
  327. /**
  328. * @since 8.5
  329. */
  330. String DEVELOPER_AGGREGATED_INFO_DISABLED = "sonar.developerAggregatedInfo.disabled";
  331. /**
  332. * @since 7.6
  333. */
  334. String MODULE_LEVEL_ARCHIVED_SETTINGS = "sonar.subproject.settings.archived";
  335. /**
  336. * since 8.9
  337. */
  338. String QUALITY_GATE_IGNORE_SMALL_CHANGES = "sonar.qualitygate.ignoreSmallChanges";
  339. }