questions.yaml 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767
  1. groups:
  2. - name: Stash Configuration
  3. description: Configure Stash
  4. - name: Network Configuration
  5. description: Configure Network for Stash
  6. - name: Storage Configuration
  7. description: Configure Storage for Stash
  8. - name: Labels Configuration
  9. description: Configure Labels for Stash
  10. - name: Resources Configuration
  11. description: Configure Resources for Stash
  12. questions:
  13. - variable: TZ
  14. group: Stash Configuration
  15. label: Timezone
  16. schema:
  17. type: string
  18. default: Etc/UTC
  19. required: true
  20. $ref:
  21. - definitions/timezone
  22. - variable: stash
  23. label: ""
  24. group: Stash Configuration
  25. schema:
  26. type: dict
  27. attrs:
  28. - variable: instance_name
  29. label: Instance Name
  30. description: The name of the Stash instance.
  31. schema:
  32. type: string
  33. default: "Stash"
  34. required: true
  35. - variable: additional_envs
  36. label: Additional Environment Variables
  37. schema:
  38. type: list
  39. default: []
  40. items:
  41. - variable: env
  42. label: Environment Variable
  43. schema:
  44. type: dict
  45. attrs:
  46. - variable: name
  47. label: Name
  48. schema:
  49. type: string
  50. required: true
  51. - variable: value
  52. label: Value
  53. schema:
  54. type: string
  55. - variable: network
  56. label: ""
  57. group: Network Configuration
  58. schema:
  59. type: dict
  60. attrs:
  61. - variable: web_port
  62. label: WebUI Port
  63. schema:
  64. type: dict
  65. attrs:
  66. - variable: bind_mode
  67. label: Port Bind Mode
  68. description: |
  69. The port bind mode.</br>
  70. - Publish: The port will be published on the host for external access.</br>
  71. - Expose: The port will be exposed for inter-container communication.</br>
  72. - None: The port will not be exposed or published.</br>
  73. Note: If the Dockerfile defines an EXPOSE directive,
  74. the port will still be exposed for inter-container communication regardless of this setting.
  75. schema:
  76. type: string
  77. default: "published"
  78. enum:
  79. - value: "published"
  80. description: Publish port on the host for external access
  81. - value: "exposed"
  82. description: Expose port for inter-container communication
  83. - value: ""
  84. description: None
  85. - variable: port_number
  86. label: Port Number
  87. schema:
  88. type: int
  89. default: 30198
  90. min: 1
  91. max: 65535
  92. required: true
  93. - variable: host_ips
  94. label: Host IPs
  95. description: IPs on the host to bind this port
  96. schema:
  97. type: list
  98. show_if: [["bind_mode", "=", "published"]]
  99. default: []
  100. items:
  101. - variable: host_ip
  102. label: Host IP
  103. schema:
  104. type: string
  105. required: true
  106. $ref:
  107. - definitions/node_bind_ip
  108. - variable: host_network
  109. label: Host Network
  110. description: |
  111. Bind to the host network. It's recommended to keep this disabled.
  112. schema:
  113. type: boolean
  114. default: false
  115. - variable: storage
  116. label: ""
  117. group: Storage Configuration
  118. schema:
  119. type: dict
  120. attrs:
  121. - variable: config
  122. label: Config Storage
  123. schema:
  124. type: dict
  125. attrs:
  126. - variable: type
  127. label: Type
  128. description: |
  129. ixVolume: Is dataset created automatically by the system.</br>
  130. Host Path: Is a path that already exists on the system.
  131. schema:
  132. type: string
  133. required: true
  134. default: "ix_volume"
  135. enum:
  136. - value: "host_path"
  137. description: Host Path (Path that already exists on the system)
  138. - value: "ix_volume"
  139. description: ixVolume (Dataset created automatically by the system)
  140. - variable: ix_volume_config
  141. label: ixVolume Configuration
  142. description: The configuration for the ixVolume dataset.
  143. schema:
  144. type: dict
  145. show_if: [["type", "=", "ix_volume"]]
  146. $ref:
  147. - "normalize/ix_volume"
  148. attrs:
  149. - variable: acl_enable
  150. label: Enable ACL
  151. description: Enable ACL for the storage.
  152. schema:
  153. type: boolean
  154. default: false
  155. - variable: dataset_name
  156. label: Dataset Name
  157. description: The name of the dataset to use for storage.
  158. schema:
  159. type: string
  160. required: true
  161. hidden: true
  162. default: "config"
  163. - variable: acl_entries
  164. label: ACL Configuration
  165. schema:
  166. type: dict
  167. show_if: [["acl_enable", "=", true]]
  168. attrs: []
  169. - variable: host_path_config
  170. label: Host Path Configuration
  171. schema:
  172. type: dict
  173. show_if: [["type", "=", "host_path"]]
  174. attrs:
  175. - variable: acl_enable
  176. label: Enable ACL
  177. description: Enable ACL for the storage.
  178. schema:
  179. type: boolean
  180. default: false
  181. - variable: acl
  182. label: ACL Configuration
  183. schema:
  184. type: dict
  185. show_if: [["acl_enable", "=", true]]
  186. attrs: []
  187. $ref:
  188. - "normalize/acl"
  189. - variable: path
  190. label: Host Path
  191. description: The host path to use for storage.
  192. schema:
  193. type: hostpath
  194. show_if: [["acl_enable", "=", false]]
  195. required: true
  196. - variable: data
  197. label: Data Storage
  198. schema:
  199. type: dict
  200. attrs:
  201. - variable: type
  202. label: Type
  203. description: |
  204. ixVolume: Is dataset created automatically by the system.</br>
  205. Host Path: Is a path that already exists on the system.
  206. schema:
  207. type: string
  208. required: true
  209. default: "ix_volume"
  210. enum:
  211. - value: "host_path"
  212. description: Host Path (Path that already exists on the system)
  213. - value: "ix_volume"
  214. description: ixVolume (Dataset created automatically by the system)
  215. - variable: ix_volume_config
  216. label: ixVolume Configuration
  217. description: The configuration for the ixVolume dataset.
  218. schema:
  219. type: dict
  220. show_if: [["type", "=", "ix_volume"]]
  221. $ref:
  222. - "normalize/ix_volume"
  223. attrs:
  224. - variable: acl_enable
  225. label: Enable ACL
  226. description: Enable ACL for the storage.
  227. schema:
  228. type: boolean
  229. default: false
  230. - variable: dataset_name
  231. label: Dataset Name
  232. description: The name of the dataset to use for storage.
  233. schema:
  234. type: string
  235. required: true
  236. hidden: true
  237. default: "data"
  238. - variable: acl_entries
  239. label: ACL Configuration
  240. schema:
  241. type: dict
  242. show_if: [["acl_enable", "=", true]]
  243. attrs: []
  244. - variable: host_path_config
  245. label: Host Path Configuration
  246. schema:
  247. type: dict
  248. show_if: [["type", "=", "host_path"]]
  249. attrs:
  250. - variable: acl_enable
  251. label: Enable ACL
  252. description: Enable ACL for the storage.
  253. schema:
  254. type: boolean
  255. default: false
  256. - variable: acl
  257. label: ACL Configuration
  258. schema:
  259. type: dict
  260. show_if: [["acl_enable", "=", true]]
  261. attrs: []
  262. $ref:
  263. - "normalize/acl"
  264. - variable: path
  265. label: Host Path
  266. description: The host path to use for storage.
  267. schema:
  268. type: hostpath
  269. show_if: [["acl_enable", "=", false]]
  270. required: true
  271. - variable: metadata
  272. label: Metadata Storage
  273. schema:
  274. type: dict
  275. attrs:
  276. - variable: type
  277. label: Type
  278. description: |
  279. ixVolume: Is dataset created automatically by the system.</br>
  280. Host Path: Is a path that already exists on the system.
  281. schema:
  282. type: string
  283. required: true
  284. default: "ix_volume"
  285. enum:
  286. - value: "host_path"
  287. description: Host Path (Path that already exists on the system)
  288. - value: "ix_volume"
  289. description: ixVolume (Dataset created automatically by the system)
  290. - variable: ix_volume_config
  291. label: ixVolume Configuration
  292. description: The configuration for the ixVolume dataset.
  293. schema:
  294. type: dict
  295. show_if: [["type", "=", "ix_volume"]]
  296. $ref:
  297. - "normalize/ix_volume"
  298. attrs:
  299. - variable: acl_enable
  300. label: Enable ACL
  301. description: Enable ACL for the storage.
  302. schema:
  303. type: boolean
  304. default: false
  305. - variable: dataset_name
  306. label: Dataset Name
  307. description: The name of the dataset to use for storage.
  308. schema:
  309. type: string
  310. required: true
  311. hidden: true
  312. default: "metadata"
  313. - variable: acl_entries
  314. label: ACL Configuration
  315. schema:
  316. type: dict
  317. show_if: [["acl_enable", "=", true]]
  318. attrs: []
  319. - variable: host_path_config
  320. label: Host Path Configuration
  321. schema:
  322. type: dict
  323. show_if: [["type", "=", "host_path"]]
  324. attrs:
  325. - variable: acl_enable
  326. label: Enable ACL
  327. description: Enable ACL for the storage.
  328. schema:
  329. type: boolean
  330. default: false
  331. - variable: acl
  332. label: ACL Configuration
  333. schema:
  334. type: dict
  335. show_if: [["acl_enable", "=", true]]
  336. attrs: []
  337. $ref:
  338. - "normalize/acl"
  339. - variable: path
  340. label: Host Path
  341. description: The host path to use for storage.
  342. schema:
  343. type: hostpath
  344. show_if: [["acl_enable", "=", false]]
  345. required: true
  346. - variable: cache
  347. label: Cache Storage
  348. schema:
  349. type: dict
  350. attrs:
  351. - variable: type
  352. label: Type
  353. description: |
  354. ixVolume: Is dataset created automatically by the system.</br>
  355. Host Path: Is a path that already exists on the system.
  356. schema:
  357. type: string
  358. required: true
  359. default: "ix_volume"
  360. enum:
  361. - value: "host_path"
  362. description: Host Path (Path that already exists on the system)
  363. - value: "ix_volume"
  364. description: ixVolume (Dataset created automatically by the system)
  365. - variable: ix_volume_config
  366. label: ixVolume Configuration
  367. description: The configuration for the ixVolume dataset.
  368. schema:
  369. type: dict
  370. show_if: [["type", "=", "ix_volume"]]
  371. $ref:
  372. - "normalize/ix_volume"
  373. attrs:
  374. - variable: acl_enable
  375. label: Enable ACL
  376. description: Enable ACL for the storage.
  377. schema:
  378. type: boolean
  379. default: false
  380. - variable: dataset_name
  381. label: Dataset Name
  382. description: The name of the dataset to use for storage.
  383. schema:
  384. type: string
  385. required: true
  386. hidden: true
  387. default: "cache"
  388. - variable: acl_entries
  389. label: ACL Configuration
  390. schema:
  391. type: dict
  392. show_if: [["acl_enable", "=", true]]
  393. attrs: []
  394. - variable: host_path_config
  395. label: Host Path Configuration
  396. schema:
  397. type: dict
  398. show_if: [["type", "=", "host_path"]]
  399. attrs:
  400. - variable: acl_enable
  401. label: Enable ACL
  402. description: Enable ACL for the storage.
  403. schema:
  404. type: boolean
  405. default: false
  406. - variable: acl
  407. label: ACL Configuration
  408. schema:
  409. type: dict
  410. show_if: [["acl_enable", "=", true]]
  411. attrs: []
  412. $ref:
  413. - "normalize/acl"
  414. - variable: path
  415. label: Host Path
  416. description: The host path to use for storage.
  417. schema:
  418. type: hostpath
  419. show_if: [["acl_enable", "=", false]]
  420. required: true
  421. - variable: blobs
  422. label: Blobs Storage
  423. schema:
  424. type: dict
  425. attrs:
  426. - variable: type
  427. label: Type
  428. description: |
  429. ixVolume: Is dataset created automatically by the system.</br>
  430. Host Path: Is a path that already exists on the system.
  431. schema:
  432. type: string
  433. required: true
  434. default: "ix_volume"
  435. enum:
  436. - value: "host_path"
  437. description: Host Path (Path that already exists on the system)
  438. - value: "ix_volume"
  439. description: ixVolume (Dataset created automatically by the system)
  440. - variable: ix_volume_config
  441. label: ixVolume Configuration
  442. description: The configuration for the ixVolume dataset.
  443. schema:
  444. type: dict
  445. show_if: [["type", "=", "ix_volume"]]
  446. $ref:
  447. - "normalize/ix_volume"
  448. attrs:
  449. - variable: acl_enable
  450. label: Enable ACL
  451. description: Enable ACL for the storage.
  452. schema:
  453. type: boolean
  454. default: false
  455. - variable: dataset_name
  456. label: Dataset Name
  457. description: The name of the dataset to use for storage.
  458. schema:
  459. type: string
  460. required: true
  461. hidden: true
  462. default: "blobs"
  463. - variable: acl_entries
  464. label: ACL Configuration
  465. schema:
  466. type: dict
  467. show_if: [["acl_enable", "=", true]]
  468. attrs: []
  469. - variable: host_path_config
  470. label: Host Path Configuration
  471. schema:
  472. type: dict
  473. show_if: [["type", "=", "host_path"]]
  474. attrs:
  475. - variable: acl_enable
  476. label: Enable ACL
  477. description: Enable ACL for the storage.
  478. schema:
  479. type: boolean
  480. default: false
  481. - variable: acl
  482. label: ACL Configuration
  483. schema:
  484. type: dict
  485. show_if: [["acl_enable", "=", true]]
  486. attrs: []
  487. $ref:
  488. - "normalize/acl"
  489. - variable: path
  490. label: Host Path
  491. description: The host path to use for storage.
  492. schema:
  493. type: hostpath
  494. show_if: [["acl_enable", "=", false]]
  495. required: true
  496. - variable: generated
  497. label: Generated Storage
  498. schema:
  499. type: dict
  500. attrs:
  501. - variable: type
  502. label: Type
  503. description: |
  504. ixVolume: Is dataset created automatically by the system.</br>
  505. Host Path: Is a path that already exists on the system.
  506. schema:
  507. type: string
  508. required: true
  509. default: "ix_volume"
  510. enum:
  511. - value: "host_path"
  512. description: Host Path (Path that already exists on the system)
  513. - value: "ix_volume"
  514. description: ixVolume (Dataset created automatically by the system)
  515. - variable: ix_volume_config
  516. label: ixVolume Configuration
  517. description: The configuration for the ixVolume dataset.
  518. schema:
  519. type: dict
  520. show_if: [["type", "=", "ix_volume"]]
  521. $ref:
  522. - "normalize/ix_volume"
  523. attrs:
  524. - variable: acl_enable
  525. label: Enable ACL
  526. description: Enable ACL for the storage.
  527. schema:
  528. type: boolean
  529. default: false
  530. - variable: dataset_name
  531. label: Dataset Name
  532. description: The name of the dataset to use for storage.
  533. schema:
  534. type: string
  535. required: true
  536. hidden: true
  537. default: "generated"
  538. - variable: acl_entries
  539. label: ACL Configuration
  540. schema:
  541. type: dict
  542. show_if: [["acl_enable", "=", true]]
  543. attrs: []
  544. - variable: host_path_config
  545. label: Host Path Configuration
  546. schema:
  547. type: dict
  548. show_if: [["type", "=", "host_path"]]
  549. attrs:
  550. - variable: acl_enable
  551. label: Enable ACL
  552. description: Enable ACL for the storage.
  553. schema:
  554. type: boolean
  555. default: false
  556. - variable: acl
  557. label: ACL Configuration
  558. schema:
  559. type: dict
  560. show_if: [["acl_enable", "=", true]]
  561. attrs: []
  562. $ref:
  563. - "normalize/acl"
  564. - variable: path
  565. label: Host Path
  566. description: The host path to use for storage.
  567. schema:
  568. type: hostpath
  569. show_if: [["acl_enable", "=", false]]
  570. required: true
  571. - variable: additional_storage
  572. label: Additional Storage
  573. schema:
  574. type: list
  575. default: []
  576. items:
  577. - variable: storageEntry
  578. label: Storage Entry
  579. schema:
  580. type: dict
  581. attrs:
  582. - variable: type
  583. label: Type
  584. description: |
  585. ixVolume: Is dataset created automatically by the system.</br>
  586. Host Path: Is a path that already exists on the system.</br>
  587. SMB Share: Is a SMB share that is mounted to as a volume.
  588. schema:
  589. type: string
  590. required: true
  591. default: "ix_volume"
  592. enum:
  593. - value: "host_path"
  594. description: Host Path (Path that already exists on the system)
  595. - value: "ix_volume"
  596. description: ixVolume (Dataset created automatically by the system)
  597. - value: "cifs"
  598. description: SMB/CIFS Share (Mounts a volume to a SMB share)
  599. - variable: read_only
  600. label: Read Only
  601. description: Mount the volume as read only.
  602. schema:
  603. type: boolean
  604. default: false
  605. - variable: mount_path
  606. label: Mount Path
  607. description: The path inside the container to mount the storage.
  608. schema:
  609. type: path
  610. required: true
  611. - variable: host_path_config
  612. label: Host Path Configuration
  613. schema:
  614. type: dict
  615. show_if: [["type", "=", "host_path"]]
  616. attrs:
  617. - variable: acl_enable
  618. label: Enable ACL
  619. description: Enable ACL for the storage.
  620. schema:
  621. type: boolean
  622. default: false
  623. - variable: acl
  624. label: ACL Configuration
  625. schema:
  626. type: dict
  627. show_if: [["acl_enable", "=", true]]
  628. attrs: []
  629. $ref:
  630. - "normalize/acl"
  631. - variable: path
  632. label: Host Path
  633. description: The host path to use for storage.
  634. schema:
  635. type: hostpath
  636. show_if: [["acl_enable", "=", false]]
  637. required: true
  638. - variable: ix_volume_config
  639. label: ixVolume Configuration
  640. description: The configuration for the ixVolume dataset.
  641. schema:
  642. type: dict
  643. show_if: [["type", "=", "ix_volume"]]
  644. $ref:
  645. - "normalize/ix_volume"
  646. attrs:
  647. - variable: acl_enable
  648. label: Enable ACL
  649. description: Enable ACL for the storage.
  650. schema:
  651. type: boolean
  652. default: false
  653. - variable: dataset_name
  654. label: Dataset Name
  655. description: The name of the dataset to use for storage.
  656. schema:
  657. type: string
  658. required: true
  659. default: "storage_entry"
  660. - variable: acl_entries
  661. label: ACL Configuration
  662. schema:
  663. type: dict
  664. show_if: [["acl_enable", "=", true]]
  665. attrs: []
  666. $ref:
  667. - "normalize/acl"
  668. - variable: cifs_config
  669. label: SMB Configuration
  670. description: The configuration for the SMB dataset.
  671. schema:
  672. type: dict
  673. show_if: [["type", "=", "cifs"]]
  674. attrs:
  675. - variable: server
  676. label: Server
  677. description: The server to mount the SMB share.
  678. schema:
  679. type: string
  680. required: true
  681. - variable: path
  682. label: Path
  683. description: The path to mount the SMB share.
  684. schema:
  685. type: string
  686. required: true
  687. - variable: username
  688. label: Username
  689. description: The username to use for the SMB share.
  690. schema:
  691. type: string
  692. required: true
  693. - variable: password
  694. label: Password
  695. description: The password to use for the SMB share.
  696. schema:
  697. type: string
  698. required: true
  699. private: true
  700. - variable: domain
  701. label: Domain
  702. description: The domain to use for the SMB share.
  703. schema:
  704. type: string
  705. - variable: labels
  706. label: ""
  707. group: Labels Configuration
  708. schema:
  709. type: list
  710. default: []
  711. items:
  712. - variable: label
  713. label: Label
  714. schema:
  715. type: dict
  716. attrs:
  717. - variable: key
  718. label: Key
  719. schema:
  720. type: string
  721. required: true
  722. - variable: value
  723. label: Value
  724. schema:
  725. type: string
  726. required: true
  727. - variable: containers
  728. label: Containers
  729. description: Containers where the label should be applied
  730. schema:
  731. type: list
  732. items:
  733. - variable: container
  734. label: Container
  735. schema:
  736. type: string
  737. required: true
  738. enum:
  739. - value: stash
  740. description: stash
  741. - variable: resources
  742. label: ""
  743. group: Resources Configuration
  744. schema:
  745. type: dict
  746. attrs:
  747. - variable: limits
  748. label: Limits
  749. schema:
  750. type: dict
  751. attrs:
  752. - variable: cpus
  753. label: CPUs
  754. description: CPUs limit for Stash.
  755. schema:
  756. type: int
  757. default: 2
  758. required: true
  759. - variable: memory
  760. label: Memory (in MB)
  761. description: Memory limit for Stash.
  762. schema:
  763. type: int
  764. default: 4096
  765. required: true