questions.yaml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438
  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. immutable: true
  193. default: "ixVolume"
  194. enum:
  195. - value: "hostPath"
  196. description: Host Path (Path that already exists on the system)
  197. - value: "ixVolume"
  198. description: ixVolume (Dataset created automatically by the system)
  199. - variable: datasetName
  200. label: Dataset Name
  201. schema:
  202. type: string
  203. show_if: [["type", "=", "ixVolume"]]
  204. required: true
  205. hidden: true
  206. immutable: true
  207. default: "data"
  208. $ref:
  209. - "normalize/ixVolume"
  210. - variable: hostPath
  211. label: Host Path
  212. schema:
  213. type: hostpath
  214. show_if: [["type", "=", "hostPath"]]
  215. immutable: true
  216. required: true
  217. - variable: pgData
  218. label: Postgres Data Storage
  219. description: The path to store Postgres Data.
  220. schema:
  221. type: dict
  222. attrs:
  223. - variable: type
  224. label: Type
  225. description: |
  226. ixVolume: Is dataset created automatically by the system.</br>
  227. Host Path: Is a path that already exists on the system.
  228. schema:
  229. type: string
  230. required: true
  231. immutable: true
  232. default: "ixVolume"
  233. enum:
  234. - value: "hostPath"
  235. description: Host Path (Path that already exists on the system)
  236. - value: "ixVolume"
  237. description: ixVolume (Dataset created automatically by the system)
  238. - variable: datasetName
  239. label: Dataset Name
  240. schema:
  241. type: string
  242. show_if: [["type", "=", "ixVolume"]]
  243. required: true
  244. hidden: true
  245. immutable: true
  246. default: "pgData"
  247. $ref:
  248. - "normalize/ixVolume"
  249. - variable: hostPath
  250. label: Host Path
  251. schema:
  252. type: hostpath
  253. show_if: [["type", "=", "hostPath"]]
  254. immutable: true
  255. required: true
  256. - variable: pgBackup
  257. label: Postgres Backup Storage
  258. description: The path to store Postgres Backup.
  259. schema:
  260. type: dict
  261. attrs:
  262. - variable: type
  263. label: Type
  264. description: |
  265. ixVolume: Is dataset created automatically by the system.</br>
  266. Host Path: Is a path that already exists on the system.
  267. schema:
  268. type: string
  269. required: true
  270. immutable: true
  271. default: "ixVolume"
  272. enum:
  273. - value: "hostPath"
  274. description: Host Path (Path that already exists on the system)
  275. - value: "ixVolume"
  276. description: ixVolume (Dataset created automatically by the system)
  277. - variable: datasetName
  278. label: Dataset Name
  279. schema:
  280. type: string
  281. show_if: [["type", "=", "ixVolume"]]
  282. required: true
  283. hidden: true
  284. immutable: true
  285. default: "pgBackup"
  286. $ref:
  287. - "normalize/ixVolume"
  288. - variable: hostPath
  289. label: Host Path
  290. schema:
  291. type: hostpath
  292. show_if: [["type", "=", "hostPath"]]
  293. immutable: true
  294. required: true
  295. - variable: additionalStorages
  296. label: Additional Storage
  297. description: Additional storage for Linkding.
  298. schema:
  299. type: list
  300. default: []
  301. items:
  302. - variable: storageEntry
  303. label: Storage Entry
  304. schema:
  305. type: dict
  306. attrs:
  307. - variable: type
  308. label: Type
  309. description: |
  310. ixVolume: Is dataset created automatically by the system.</br>
  311. Host Path: Is a path that already exists on the system.</br>
  312. SMB Share: Is a SMB share that is mounted to a persistent volume claim.
  313. schema:
  314. type: string
  315. required: true
  316. default: "ixVolume"
  317. immutable: true
  318. enum:
  319. - value: "hostPath"
  320. description: Host Path (Path that already exists on the system)
  321. - value: "ixVolume"
  322. description: ixVolume (Dataset created automatically by the system)
  323. - value: "smb-pv-pvc"
  324. description: SMB Share (Mounts a persistent volume claim to a SMB share)
  325. - variable: mountPath
  326. label: Mount Path
  327. description: The path inside the container to mount the storage.
  328. schema:
  329. type: path
  330. required: true
  331. - variable: hostPath
  332. label: Host Path
  333. description: The host path to use for storage.
  334. schema:
  335. type: hostpath
  336. show_if: [["type", "=", "hostPath"]]
  337. required: true
  338. - variable: datasetName
  339. label: Dataset Name
  340. description: The name of the dataset to use for storage.
  341. schema:
  342. type: string
  343. show_if: [["type", "=", "ixVolume"]]
  344. required: true
  345. immutable: true
  346. default: "storage_entry"
  347. $ref:
  348. - "normalize/ixVolume"
  349. - variable: server
  350. label: Server
  351. description: The server for the SMB share.
  352. schema:
  353. type: string
  354. show_if: [["type", "=", "smb-pv-pvc"]]
  355. required: true
  356. - variable: share
  357. label: Share
  358. description: The share name for the SMB share.
  359. schema:
  360. type: string
  361. show_if: [["type", "=", "smb-pv-pvc"]]
  362. required: true
  363. - variable: domain
  364. label: Domain (Optional)
  365. description: The domain for the SMB share.
  366. schema:
  367. type: string
  368. show_if: [["type", "=", "smb-pv-pvc"]]
  369. - variable: username
  370. label: Username
  371. description: The username for the SMB share.
  372. schema:
  373. type: string
  374. show_if: [["type", "=", "smb-pv-pvc"]]
  375. required: true
  376. - variable: password
  377. label: Password
  378. description: The password for the SMB share.
  379. schema:
  380. type: string
  381. show_if: [["type", "=", "smb-pv-pvc"]]
  382. required: true
  383. private: true
  384. - variable: size
  385. label: Size (in Gi)
  386. description: The size of the volume quota.
  387. schema:
  388. type: int
  389. show_if: [["type", "=", "smb-pv-pvc"]]
  390. required: true
  391. min: 1
  392. default: 1
  393. - variable: resources
  394. group: Resources Configuration
  395. label: ""
  396. schema:
  397. type: dict
  398. attrs:
  399. - variable: limits
  400. label: Limits
  401. schema:
  402. type: dict
  403. attrs:
  404. - variable: cpu
  405. label: CPU
  406. description: CPU limit for Linkding.
  407. schema:
  408. type: string
  409. max_length: 6
  410. valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$'
  411. valid_chars_error: |
  412. Valid CPU limit formats are</br>
  413. - Plain Integer - eg. 1</br>
  414. - Float - eg. 0.5</br>
  415. - Milicpu - eg. 500m
  416. default: "4000m"
  417. required: true
  418. - variable: memory
  419. label: Memory
  420. description: Memory limit for Linkding.
  421. schema:
  422. type: string
  423. max_length: 12
  424. valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$'
  425. valid_chars_error: |
  426. Valid Memory limit formats are</br>
  427. - Suffixed with E/P/T/G/M/K - eg. 1G</br>
  428. - Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>
  429. - Plain Integer in bytes - eg. 1024</br>
  430. - Exponent - eg. 134e6
  431. default: "8Gi"
  432. required: true