questions.yaml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434
  1. groups:
  2. - name: Linkding Configuration
  3. description: Configure Linkding
  4. - name: Network Configuration
  5. description: Configure Network for Linkding
  6. - name: User and Group Configuration
  7. description: Configure User and Group for Linkding
  8. - name: Storage Configuration
  9. description: Configure Storage for Linkding
  10. - name: Resources Configuration
  11. description: Configure Resources for Linkding
  12. portals:
  13. web_portal:
  14. protocols:
  15. - "$kubernetes-resource_configmap_portal_protocol"
  16. host:
  17. - "$kubernetes-resource_configmap_portal_host"
  18. ports:
  19. - "$kubernetes-resource_configmap_portal_port"
  20. path: "$kubernetes-resource_configmap_portal_path"
  21. questions:
  22. - variable: linkdingConfig
  23. label: ""
  24. group: Linkding Configuration
  25. schema:
  26. type: dict
  27. attrs:
  28. - variable: username
  29. label: Username
  30. description: |
  31. The username for Linkding. </br>
  32. It creates a superuser if it doesn't exist.</br>
  33. Leaving this empty will disable authentication.
  34. schema:
  35. type: string
  36. default: ""
  37. - variable: password
  38. label: Password
  39. description: |
  40. The password for Linkding.</br>
  41. It creates a superuser if it doesn't exist.</br>
  42. Leaving this empty will disable authentication.
  43. schema:
  44. type: string
  45. show_if: [["username", "!=", ""]]
  46. default: ""
  47. private: true
  48. - variable: disableBackgroundTasks
  49. label: Disable Background Tasks
  50. description: |
  51. Disables background tasks, such as creating snapshots for bookmarks
  52. on the the Internet Archive Wayback Machine.
  53. schema:
  54. type: boolean
  55. default: false
  56. - variable: disableUrlValidation
  57. label: Disable URL Validation
  58. description: |
  59. Completely disables URL validation for bookmarks.
  60. This can be useful if you intend to store non fully qualified
  61. domain name URLs, such as network paths, or you want to store
  62. URLs that use another protocol than http or https.
  63. schema:
  64. type: boolean
  65. default: false
  66. - variable: enableAuthProxy
  67. label: Enable Auth Proxy
  68. description: |
  69. Enable authentication proxy. </br>
  70. This will disable the built-in authentication and use the
  71. authentication proxy instead.
  72. schema:
  73. type: boolean
  74. default: false
  75. - variable: authProxyUsernameHeader
  76. label: Auth Proxy Username Header
  77. description: |
  78. The HTTP header that contains the username for the authentication
  79. proxy.
  80. schema:
  81. type: string
  82. show_if: [["enableAuthProxy", "=", true]]
  83. default: ""
  84. required: true
  85. - variable: authProxyLogoutUrl
  86. label: Auth Proxy Logout URL
  87. description: |
  88. The URL to redirect to when logging out of the authentication proxy.
  89. schema:
  90. type: string
  91. show_if: [["enableAuthProxy", "=", true]]
  92. default: ""
  93. - variable: csrfTrustedOrigins
  94. label: CSRF Trusted Origins
  95. description: |
  96. A list of origins that are allowed to bypass the CSRF protection.
  97. schema:
  98. type: list
  99. default: []
  100. items:
  101. - variable: origin
  102. label: Origin
  103. schema:
  104. type: string
  105. required: true
  106. - variable: additionalEnvs
  107. label: Additional Environment Variables
  108. description: Configure additional environment variables for Linkding.
  109. schema:
  110. type: list
  111. default: []
  112. items:
  113. - variable: env
  114. label: Environment Variable
  115. schema:
  116. type: dict
  117. attrs:
  118. - variable: name
  119. label: Name
  120. schema:
  121. type: string
  122. required: true
  123. - variable: value
  124. label: Value
  125. schema:
  126. type: string
  127. required: true
  128. - variable: linkdingNetwork
  129. label: ""
  130. group: Network Configuration
  131. schema:
  132. type: dict
  133. attrs:
  134. - variable: webPort
  135. label: Web Port
  136. description: The port for the Linkding Web UI.
  137. schema:
  138. type: int
  139. default: 30083
  140. min: 9000
  141. max: 65535
  142. required: true
  143. - variable: hostNetwork
  144. label: Host Network
  145. description: |
  146. Bind to the host network. It's recommended to keep this disabled.</br>
  147. schema:
  148. type: boolean
  149. default: false
  150. - variable: linkdingRunAs
  151. label: ""
  152. group: User and Group Configuration
  153. schema:
  154. type: dict
  155. attrs:
  156. - variable: user
  157. label: User ID
  158. description: The user id that Linkding will run as.
  159. schema:
  160. type: int
  161. min: 2
  162. default: 568
  163. required: true
  164. - variable: group
  165. label: Group ID
  166. description: The group id that Linkding will run as.
  167. schema:
  168. type: int
  169. min: 2
  170. default: 568
  171. required: true
  172. - variable: linkdingStorage
  173. label: ""
  174. group: Storage Configuration
  175. schema:
  176. type: dict
  177. attrs:
  178. - variable: data
  179. label: Linkding Data Storage
  180. description: The path to store Linkding Data.
  181. schema:
  182. type: dict
  183. attrs:
  184. - variable: type
  185. label: Type
  186. description: |
  187. ixVolume: Is dataset created automatically by the system.</br>
  188. Host Path: Is a path that already exists on the system.
  189. schema:
  190. type: string
  191. required: true
  192. default: "ixVolume"
  193. enum:
  194. - value: "hostPath"
  195. description: Host Path (Path that already exists on the system)
  196. - value: "ixVolume"
  197. description: ixVolume (Dataset created automatically by the system)
  198. - variable: datasetName
  199. label: Dataset Name
  200. schema:
  201. type: string
  202. show_if: [["type", "=", "ixVolume"]]
  203. required: true
  204. hidden: true
  205. immutable: true
  206. default: "data"
  207. $ref:
  208. - "normalize/ixVolume"
  209. - variable: hostPath
  210. label: Host Path
  211. schema:
  212. type: hostpath
  213. show_if: [["type", "=", "hostPath"]]
  214. immutable: true
  215. required: true
  216. - variable: pgData
  217. label: Postgres Data Storage
  218. description: The path to store Postgres Data.
  219. schema:
  220. type: dict
  221. attrs:
  222. - variable: type
  223. label: Type
  224. description: |
  225. ixVolume: Is dataset created automatically by the system.</br>
  226. Host Path: Is a path that already exists on the system.
  227. schema:
  228. type: string
  229. required: true
  230. default: "ixVolume"
  231. enum:
  232. - value: "hostPath"
  233. description: Host Path (Path that already exists on the system)
  234. - value: "ixVolume"
  235. description: ixVolume (Dataset created automatically by the system)
  236. - variable: datasetName
  237. label: Dataset Name
  238. schema:
  239. type: string
  240. show_if: [["type", "=", "ixVolume"]]
  241. required: true
  242. hidden: true
  243. immutable: true
  244. default: "pgData"
  245. $ref:
  246. - "normalize/ixVolume"
  247. - variable: hostPath
  248. label: Host Path
  249. schema:
  250. type: hostpath
  251. show_if: [["type", "=", "hostPath"]]
  252. immutable: true
  253. required: true
  254. - variable: pgBackup
  255. label: Postgres Backup Storage
  256. description: The path to store Postgres Backup.
  257. schema:
  258. type: dict
  259. attrs:
  260. - variable: type
  261. label: Type
  262. description: |
  263. ixVolume: Is dataset created automatically by the system.</br>
  264. Host Path: Is a path that already exists on the system.
  265. schema:
  266. type: string
  267. required: true
  268. default: "ixVolume"
  269. enum:
  270. - value: "hostPath"
  271. description: Host Path (Path that already exists on the system)
  272. - value: "ixVolume"
  273. description: ixVolume (Dataset created automatically by the system)
  274. - variable: datasetName
  275. label: Dataset Name
  276. schema:
  277. type: string
  278. show_if: [["type", "=", "ixVolume"]]
  279. required: true
  280. hidden: true
  281. immutable: true
  282. default: "pgBackup"
  283. $ref:
  284. - "normalize/ixVolume"
  285. - variable: hostPath
  286. label: Host Path
  287. schema:
  288. type: hostpath
  289. show_if: [["type", "=", "hostPath"]]
  290. immutable: true
  291. required: true
  292. - variable: additionalStorages
  293. label: Additional Storage
  294. description: Additional storage for Linkding.
  295. schema:
  296. type: list
  297. default: []
  298. items:
  299. - variable: storageEntry
  300. label: Storage Entry
  301. schema:
  302. type: dict
  303. attrs:
  304. - variable: type
  305. label: Type
  306. description: |
  307. ixVolume: Is dataset created automatically by the system.</br>
  308. Host Path: Is a path that already exists on the system.
  309. schema:
  310. type: string
  311. required: true
  312. default: "ixVolume"
  313. immutable: true
  314. enum:
  315. - value: "hostPath"
  316. description: Host Path (Path that already exists on the system)
  317. - value: "ixVolume"
  318. description: ixVolume (Dataset created automatically by the system)
  319. - value: "smb-pv-pvc"
  320. description: SMB Share (Mounts a persistent volume claim to a SMB share)
  321. - variable: mountPath
  322. label: Mount Path
  323. description: The path inside the container to mount the storage.
  324. schema:
  325. type: path
  326. required: true
  327. - variable: hostPath
  328. label: Host Path
  329. description: The host path to use for storage.
  330. schema:
  331. type: hostpath
  332. show_if: [["type", "=", "hostPath"]]
  333. required: true
  334. - variable: datasetName
  335. label: Dataset Name
  336. description: The name of the dataset to use for storage.
  337. schema:
  338. type: string
  339. show_if: [["type", "=", "ixVolume"]]
  340. required: true
  341. immutable: true
  342. default: "storage_entry"
  343. $ref:
  344. - "normalize/ixVolume"
  345. - variable: server
  346. label: Server
  347. description: The server for the SMB share.
  348. schema:
  349. type: string
  350. show_if: [["type", "=", "smb-pv-pvc"]]
  351. required: true
  352. - variable: share
  353. label: Share
  354. description: The share name for the SMB share.
  355. schema:
  356. type: string
  357. show_if: [["type", "=", "smb-pv-pvc"]]
  358. required: true
  359. - variable: domain
  360. label: Domain (Optional)
  361. description: The domain for the SMB share.
  362. schema:
  363. type: string
  364. show_if: [["type", "=", "smb-pv-pvc"]]
  365. - variable: username
  366. label: Username
  367. description: The username for the SMB share.
  368. schema:
  369. type: string
  370. show_if: [["type", "=", "smb-pv-pvc"]]
  371. required: true
  372. - variable: password
  373. label: Password
  374. description: The password for the SMB share.
  375. schema:
  376. type: string
  377. show_if: [["type", "=", "smb-pv-pvc"]]
  378. required: true
  379. private: true
  380. - variable: size
  381. label: Size (in Gi)
  382. description: The size of the volume quota.
  383. schema:
  384. type: int
  385. show_if: [["type", "=", "smb-pv-pvc"]]
  386. required: true
  387. min: 1
  388. default: 1
  389. - variable: resources
  390. group: Resources Configuration
  391. label: ""
  392. schema:
  393. type: dict
  394. attrs:
  395. - variable: limits
  396. label: Limits
  397. schema:
  398. type: dict
  399. attrs:
  400. - variable: cpu
  401. label: CPU
  402. description: CPU limit for Linkding.
  403. schema:
  404. type: string
  405. max_length: 6
  406. valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$'
  407. valid_chars_error: |
  408. Valid CPU limit formats are</br>
  409. - Plain Integer - eg. 1</br>
  410. - Float - eg. 0.5</br>
  411. - Milicpu - eg. 500m
  412. default: "4000m"
  413. required: true
  414. - variable: memory
  415. label: Memory
  416. description: Memory limit for Linkding.
  417. schema:
  418. type: string
  419. max_length: 12
  420. valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$'
  421. valid_chars_error: |
  422. Valid Memory limit formats are</br>
  423. - Suffixed with E/P/T/G/M/K - eg. 1G</br>
  424. - Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>
  425. - Plain Integer in bytes - eg. 1024</br>
  426. - Exponent - eg. 134e6
  427. default: "8Gi"
  428. required: true