questions.yaml 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754
  1. groups:
  2. - name: Piwigo Configuration
  3. description: Configure Piwigo
  4. - name: User and Group Configuration
  5. description: Configure User and Group for Piwigo
  6. - name: Network Configuration
  7. description: Configure Network for Piwigo
  8. - name: Storage Configuration
  9. description: Configure Storage for Piwigo
  10. - name: Labels Configuration
  11. description: Configure Labels for Piwigo
  12. - name: Resources Configuration
  13. description: Configure Resources for Piwigo
  14. questions:
  15. - variable: piwigo
  16. label: ""
  17. group: Piwigo Configuration
  18. schema:
  19. type: dict
  20. attrs:
  21. - variable: db_password
  22. label: Database Password
  23. description: The database password for Piwigo.
  24. schema:
  25. type: string
  26. default: ""
  27. required: true
  28. private: true
  29. - variable: db_root_password
  30. label: Root Database Password
  31. description: The root database password for Piwigo.
  32. schema:
  33. type: string
  34. default: ""
  35. required: true
  36. private: true
  37. - variable: admin_name
  38. label: Admin Name
  39. description: |
  40. The admin name for Piwigo.</br>
  41. Only used when Piwigo is first installed.</br>
  42. You can change it later in the Piwigo WebUI.
  43. schema:
  44. type: string
  45. required: true
  46. immutable: true
  47. default: ""
  48. - variable: admin_password
  49. label: Admin Password
  50. description: |
  51. The admin password for Piwigo.</br>
  52. Only used when Piwigo is first installed.</br>
  53. You can change it later in the Piwigo WebUI.
  54. schema:
  55. type: string
  56. required: true
  57. immutable: true
  58. password: true
  59. default: ""
  60. - variable: admin_email
  61. label: Admin Mail
  62. description: |
  63. The admin mail for Piwigo.</br>
  64. Only used when Piwigo is first installed.</br>
  65. You can change it later in the Piwigo WebUI.
  66. schema:
  67. type: string
  68. valid_chars: "^.+@.+\\..+$"
  69. valid_chars_error: The email address is not valid.
  70. required: true
  71. immutable: true
  72. default: ""
  73. - variable: language
  74. label: Language
  75. description: |
  76. The language for Piwigo.</br>
  77. Only used when Piwigo is first installed.
  78. schema:
  79. type: string
  80. required: true
  81. immutable: true
  82. default: "en_UK"
  83. enum:
  84. - value: af_ZA
  85. description: Afrikaans [ZA]
  86. - value: es_AR
  87. description: Argentina [AR]
  88. - value: az_AZ
  89. description: Azərbaycanca [AZ]
  90. - value: id_ID
  91. description: Bahasa Indonesia [ID]
  92. - value: pt_BR
  93. description: Brasil [BR]
  94. - value: br_FR
  95. description: Brezhoneg [FR]
  96. - value: ca_ES
  97. description: Català [CA]
  98. - value: da_DK
  99. description: Dansk [DK]
  100. - value: de_DE
  101. description: Deutsch [DE]
  102. - value: dv_MV
  103. description: Dhivehi [MV]
  104. - value: en_GB
  105. description: English [GB]
  106. - value: en_UK
  107. description: English [UK]
  108. - value: en_US
  109. description: English [US]
  110. - value: es_ES
  111. description: Español [ES]
  112. - value: eo_EO
  113. description: Esperanto [EO]
  114. - value: et_EE
  115. description: Estonian [EE]
  116. - value: eu_ES
  117. description: Euskara [ES]
  118. - value: fi_FI
  119. description: Finnish [FI]
  120. - value: fr_FR
  121. description: Français [FR]
  122. - value: fr_CA
  123. description: Français [QC]
  124. - value: ga_IE
  125. description: Gaeilge [IE]
  126. - value: gl_ES
  127. description: Galego [ES]
  128. - value: hr_HR
  129. description: Hrvatski [HR]
  130. - value: it_IT
  131. description: Italiano [IT]
  132. - value: lv_LV
  133. description: Latviešu [LV]
  134. - value: lt_LT
  135. description: Lietuviu [LT]
  136. - value: lb_LU
  137. description: Lëtzebuergesch [LU]
  138. - value: hu_HU
  139. description: Magyar [HU]
  140. - value: ms_MY
  141. description: Malay [MY]
  142. - value: es_MX
  143. description: México [MX]
  144. - value: nl_NL
  145. description: Nederlands [NL]
  146. - value: nb_NO
  147. description: Norsk bokmål [NO]
  148. - value: nn_NO
  149. description: Norwegian nynorsk [NO]
  150. - value: pl_PL
  151. description: Polski [PL]
  152. - value: pt_PT
  153. description: Português [PT]
  154. - value: ro_RO
  155. description: Română [RO]
  156. - value: sk_SK
  157. description: Slovensky [SK]
  158. - value: sl_SI
  159. description: Slovenšcina [SI]
  160. - value: sh_RS
  161. description: Srpski [SR]
  162. - value: sv_SE
  163. description: Svenska [SE]
  164. - value: vi_VN
  165. description: Tiếng Việt [VN]
  166. - value: tr_TR
  167. description: Türkçe [TR]
  168. - value: wo_SN
  169. description: Wolof [SN]
  170. - value: is_IS
  171. description: Íslenska [IS]
  172. - value: cs_CZ
  173. description: Česky [CZ]
  174. - value: el_GR
  175. description: Ελληνικά [GR]
  176. - value: bg_BG
  177. description: Български [BG]
  178. - value: mk_MK
  179. description: Македонски [MK]
  180. - value: mn_MN
  181. description: Монгол [MN]
  182. - value: ru_RU
  183. description: Русский [RU]
  184. - value: sr_RS
  185. description: Српски [SR]
  186. - value: uk_UA
  187. description: Українська [UA]
  188. - value: he_IL
  189. description: עברית [IL]
  190. - value: ar_EG
  191. description: العربية (مص
  192. - value: ar_SA
  193. description: العربية [AR]
  194. - value: ar_MA
  195. description: العربية [MA]
  196. - value: fa_IR
  197. description: پارسی [IR]
  198. - value: kok_IN
  199. description: कोंकणी [IN]
  200. - value: bn_IN
  201. description: বাংলা[IN]
  202. - value: gu_IN
  203. description: ગુજરાતી[IN]
  204. - value: ta_IN
  205. description: தமிழ் [IN]
  206. - value: kn_IN
  207. description: ಕನ್ನಡ [IN]
  208. - value: th_TH
  209. description: ภาษาไทย [TH]
  210. - value: ka_GE
  211. description: ქართული [GE]
  212. - value: km_KH
  213. description: ខ្មែរ [KH]
  214. - value: zh_TW
  215. description: 中文 (繁體) [TW]
  216. - value: zh_HK
  217. description: 中文 (香港) [HK]
  218. - value: ja_JP
  219. description: 日本語 [JP]
  220. - value: zh_CN
  221. description: 简体中文 [CN]
  222. - value: ko_KR
  223. description: 한국어 [KR]
  224. - variable: additional_envs
  225. label: Additional Environment Variables
  226. schema:
  227. type: list
  228. default: []
  229. items:
  230. - variable: env
  231. label: Environment Variable
  232. schema:
  233. type: dict
  234. attrs:
  235. - variable: name
  236. label: Name
  237. schema:
  238. type: string
  239. required: true
  240. - variable: value
  241. label: Value
  242. schema:
  243. type: string
  244. - variable: run_as
  245. label: ""
  246. group: User and Group Configuration
  247. schema:
  248. type: dict
  249. attrs:
  250. - variable: user
  251. label: User ID
  252. description: The user id that Piwigo files will be owned by.
  253. schema:
  254. type: int
  255. min: 568
  256. default: 568
  257. required: true
  258. - variable: group
  259. label: Group ID
  260. description: The group id that Piwigo files will be owned by.
  261. schema:
  262. type: int
  263. min: 568
  264. default: 568
  265. required: true
  266. - variable: network
  267. label: ""
  268. group: Network Configuration
  269. schema:
  270. type: dict
  271. attrs:
  272. - variable: web_port
  273. label: WebUI Port
  274. schema:
  275. type: dict
  276. attrs:
  277. - variable: bind_mode
  278. label: Port Bind Mode
  279. description: |
  280. The port bind mode.</br>
  281. - Publish: The port will be published on the host for external access.</br>
  282. - Expose: The port will be exposed for inter-container communication.</br>
  283. - None: The port will not be exposed or published.</br>
  284. Note: If the Dockerfile defines an EXPOSE directive,
  285. the port will still be exposed for inter-container communication regardless of this setting.
  286. schema:
  287. type: string
  288. default: "published"
  289. enum:
  290. - value: "published"
  291. description: Publish port on the host for external access
  292. - value: "exposed"
  293. description: Expose port for inter-container communication
  294. - value: ""
  295. description: None
  296. - variable: port_number
  297. label: Port Number
  298. schema:
  299. type: int
  300. show_if: [["bind_mode", "=", "published"]]
  301. default: 30066
  302. min: 1
  303. max: 65535
  304. required: true
  305. - variable: host_ips
  306. label: Host IPs
  307. description: IPs on the host to bind this port
  308. schema:
  309. type: list
  310. show_if: [["bind_mode", "=", "published"]]
  311. default: []
  312. items:
  313. - variable: host_ip
  314. label: Host IP
  315. schema:
  316. type: string
  317. required: true
  318. $ref:
  319. - definitions/node_bind_ip
  320. - variable: storage
  321. label: ""
  322. group: Storage Configuration
  323. schema:
  324. type: dict
  325. attrs:
  326. - variable: config
  327. label: Piwigo Config Storage
  328. description: The path to store Piwigo Config.
  329. schema:
  330. type: dict
  331. attrs:
  332. - variable: type
  333. label: Type
  334. description: |
  335. ixVolume: Is dataset created automatically by the system.</br>
  336. Host Path: Is a path that already exists on the system.
  337. schema:
  338. type: string
  339. required: true
  340. default: "ix_volume"
  341. enum:
  342. - value: "host_path"
  343. description: Host Path (Path that already exists on the system)
  344. - value: "ix_volume"
  345. description: ixVolume (Dataset created automatically by the system)
  346. - variable: ix_volume_config
  347. label: ixVolume Configuration
  348. description: The configuration for the ixVolume dataset.
  349. schema:
  350. type: dict
  351. show_if: [["type", "=", "ix_volume"]]
  352. $ref:
  353. - "normalize/ix_volume"
  354. attrs:
  355. - variable: acl_enable
  356. label: Enable ACL
  357. description: Enable ACL for the storage.
  358. schema:
  359. type: boolean
  360. default: false
  361. - variable: dataset_name
  362. label: Dataset Name
  363. description: The name of the dataset to use for storage.
  364. schema:
  365. type: string
  366. required: true
  367. hidden: true
  368. default: "config"
  369. - variable: acl_entries
  370. label: ACL Configuration
  371. schema:
  372. type: dict
  373. show_if: [["acl_enable", "=", true]]
  374. attrs: []
  375. - variable: host_path_config
  376. label: Host Path Configuration
  377. schema:
  378. type: dict
  379. show_if: [["type", "=", "host_path"]]
  380. attrs:
  381. - variable: acl_enable
  382. label: Enable ACL
  383. description: Enable ACL for the storage.
  384. schema:
  385. type: boolean
  386. default: false
  387. - variable: acl
  388. label: ACL Configuration
  389. schema:
  390. type: dict
  391. show_if: [["acl_enable", "=", true]]
  392. attrs: []
  393. $ref:
  394. - "normalize/acl"
  395. - variable: path
  396. label: Host Path
  397. description: The host path to use for storage.
  398. schema:
  399. type: hostpath
  400. show_if: [["acl_enable", "=", false]]
  401. required: true
  402. - variable: gallery
  403. label: Piwigo Gallery Storage
  404. description: The path to store Piwigo Gallery.
  405. schema:
  406. type: dict
  407. attrs:
  408. - variable: type
  409. label: Type
  410. description: |
  411. ixVolume: Is dataset created automatically by the system.</br>
  412. Host Path: Is a path that already exists on the system.
  413. schema:
  414. type: string
  415. required: true
  416. default: "ix_volume"
  417. enum:
  418. - value: "host_path"
  419. description: Host Path (Path that already exists on the system)
  420. - value: "ix_volume"
  421. description: ixVolume (Dataset created automatically by the system)
  422. - variable: ix_volume_config
  423. label: ixVolume Configuration
  424. description: The configuration for the ixVolume dataset.
  425. schema:
  426. type: dict
  427. show_if: [["type", "=", "ix_volume"]]
  428. $ref:
  429. - "normalize/ix_volume"
  430. attrs:
  431. - variable: acl_enable
  432. label: Enable ACL
  433. description: Enable ACL for the storage.
  434. schema:
  435. type: boolean
  436. default: false
  437. - variable: dataset_name
  438. label: Dataset Name
  439. description: The name of the dataset to use for storage.
  440. schema:
  441. type: string
  442. required: true
  443. hidden: true
  444. default: "config"
  445. - variable: acl_entries
  446. label: ACL Configuration
  447. schema:
  448. type: dict
  449. show_if: [["acl_enable", "=", true]]
  450. attrs: []
  451. - variable: host_path_config
  452. label: Host Path Configuration
  453. schema:
  454. type: dict
  455. show_if: [["type", "=", "host_path"]]
  456. attrs:
  457. - variable: acl_enable
  458. label: Enable ACL
  459. description: Enable ACL for the storage.
  460. schema:
  461. type: boolean
  462. default: false
  463. - variable: acl
  464. label: ACL Configuration
  465. schema:
  466. type: dict
  467. show_if: [["acl_enable", "=", true]]
  468. attrs: []
  469. $ref:
  470. - "normalize/acl"
  471. - variable: path
  472. label: Host Path
  473. description: The host path to use for storage.
  474. schema:
  475. type: hostpath
  476. show_if: [["acl_enable", "=", false]]
  477. required: true
  478. - variable: mariadb_data
  479. label: Piwigo MariaDB Data Storage
  480. description: The path to store Piwigo MariaDB Data.
  481. schema:
  482. type: dict
  483. attrs:
  484. - variable: type
  485. label: Type
  486. description: |
  487. ixVolume: Is dataset created automatically by the system.</br>
  488. Host Path: Is a path that already exists on the system.
  489. schema:
  490. type: string
  491. required: true
  492. default: "ix_volume"
  493. enum:
  494. - value: "host_path"
  495. description: Host Path (Path that already exists on the system)
  496. - value: "ix_volume"
  497. description: ixVolume (Dataset created automatically by the system)
  498. - variable: ix_volume_config
  499. label: ixVolume Configuration
  500. description: The configuration for the ixVolume dataset.
  501. schema:
  502. type: dict
  503. show_if: [["type", "=", "ix_volume"]]
  504. $ref:
  505. - "normalize/ix_volume"
  506. attrs:
  507. - variable: acl_enable
  508. label: Enable ACL
  509. description: Enable ACL for the storage.
  510. schema:
  511. type: boolean
  512. default: false
  513. - variable: dataset_name
  514. label: Dataset Name
  515. description: The name of the dataset to use for storage.
  516. schema:
  517. type: string
  518. required: true
  519. hidden: true
  520. default: "mariadb_data"
  521. - variable: acl_entries
  522. label: ACL Configuration
  523. schema:
  524. type: dict
  525. show_if: [["acl_enable", "=", true]]
  526. attrs: []
  527. - variable: host_path_config
  528. label: Host Path Configuration
  529. schema:
  530. type: dict
  531. show_if: [["type", "=", "host_path"]]
  532. attrs:
  533. - variable: acl_enable
  534. label: Enable ACL
  535. description: Enable ACL for the storage.
  536. schema:
  537. type: boolean
  538. default: false
  539. - variable: acl
  540. label: ACL Configuration
  541. schema:
  542. type: dict
  543. show_if: [["acl_enable", "=", true]]
  544. attrs: []
  545. $ref:
  546. - "normalize/acl"
  547. - variable: path
  548. label: Host Path
  549. description: The host path to use for storage.
  550. schema:
  551. type: hostpath
  552. show_if: [["acl_enable", "=", false]]
  553. required: true
  554. - variable: additional_storage
  555. label: Additional Storage
  556. schema:
  557. type: list
  558. default: []
  559. items:
  560. - variable: storageEntry
  561. label: Storage Entry
  562. schema:
  563. type: dict
  564. attrs:
  565. - variable: type
  566. label: Type
  567. description: |
  568. ixVolume: Is dataset created automatically by the system.</br>
  569. Host Path: Is a path that already exists on the system.</br>
  570. SMB Share: Is a SMB share that is mounted to as a volume.
  571. schema:
  572. type: string
  573. required: true
  574. default: "ix_volume"
  575. enum:
  576. - value: "host_path"
  577. description: Host Path (Path that already exists on the system)
  578. - value: "ix_volume"
  579. description: ixVolume (Dataset created automatically by the system)
  580. - value: "cifs"
  581. description: SMB/CIFS Share (Mounts a volume to a SMB share)
  582. - variable: read_only
  583. label: Read Only
  584. description: Mount the volume as read only.
  585. schema:
  586. type: boolean
  587. default: false
  588. - variable: mount_path
  589. label: Mount Path
  590. description: The path inside the container to mount the storage.
  591. schema:
  592. type: path
  593. required: true
  594. - variable: host_path_config
  595. label: Host Path Configuration
  596. schema:
  597. type: dict
  598. show_if: [["type", "=", "host_path"]]
  599. attrs:
  600. - variable: acl_enable
  601. label: Enable ACL
  602. description: Enable ACL for the storage.
  603. schema:
  604. type: boolean
  605. default: false
  606. - variable: acl
  607. label: ACL Configuration
  608. schema:
  609. type: dict
  610. show_if: [["acl_enable", "=", true]]
  611. attrs: []
  612. $ref:
  613. - "normalize/acl"
  614. - variable: path
  615. label: Host Path
  616. description: The host path to use for storage.
  617. schema:
  618. type: hostpath
  619. show_if: [["acl_enable", "=", false]]
  620. required: true
  621. - variable: ix_volume_config
  622. label: ixVolume Configuration
  623. description: The configuration for the ixVolume dataset.
  624. schema:
  625. type: dict
  626. show_if: [["type", "=", "ix_volume"]]
  627. $ref:
  628. - "normalize/ix_volume"
  629. attrs:
  630. - variable: acl_enable
  631. label: Enable ACL
  632. description: Enable ACL for the storage.
  633. schema:
  634. type: boolean
  635. default: false
  636. - variable: dataset_name
  637. label: Dataset Name
  638. description: The name of the dataset to use for storage.
  639. schema:
  640. type: string
  641. required: true
  642. default: "storage_entry"
  643. - variable: acl_entries
  644. label: ACL Configuration
  645. schema:
  646. type: dict
  647. show_if: [["acl_enable", "=", true]]
  648. attrs: []
  649. $ref:
  650. - "normalize/acl"
  651. - variable: cifs_config
  652. label: SMB Configuration
  653. description: The configuration for the SMB dataset.
  654. schema:
  655. type: dict
  656. show_if: [["type", "=", "cifs"]]
  657. attrs:
  658. - variable: server
  659. label: Server
  660. description: The server to mount the SMB share.
  661. schema:
  662. type: string
  663. required: true
  664. - variable: path
  665. label: Path
  666. description: The path to mount the SMB share.
  667. schema:
  668. type: string
  669. required: true
  670. - variable: username
  671. label: Username
  672. description: The username to use for the SMB share.
  673. schema:
  674. type: string
  675. required: true
  676. - variable: password
  677. label: Password
  678. description: The password to use for the SMB share.
  679. schema:
  680. type: string
  681. required: true
  682. private: true
  683. - variable: domain
  684. label: Domain
  685. description: The domain to use for the SMB share.
  686. schema:
  687. type: string
  688. - variable: labels
  689. label: ""
  690. group: Labels Configuration
  691. schema:
  692. type: list
  693. default: []
  694. items:
  695. - variable: label
  696. label: Label
  697. schema:
  698. type: dict
  699. attrs:
  700. - variable: key
  701. label: Key
  702. schema:
  703. type: string
  704. required: true
  705. - variable: value
  706. label: Value
  707. schema:
  708. type: string
  709. required: true
  710. - variable: containers
  711. label: Containers
  712. description: Containers where the label should be applied
  713. schema:
  714. type: list
  715. items:
  716. - variable: container
  717. label: Container
  718. schema:
  719. type: string
  720. required: true
  721. enum:
  722. - value: piwigo
  723. description: piwigo
  724. - value: mariadb
  725. description: mariadb
  726. - variable: resources
  727. label: ""
  728. group: Resources Configuration
  729. schema:
  730. type: dict
  731. attrs:
  732. - variable: limits
  733. label: Limits
  734. schema:
  735. type: dict
  736. attrs:
  737. - variable: cpus
  738. label: CPUs
  739. description: CPUs limit for Piwigo.
  740. schema:
  741. type: int
  742. default: 2
  743. required: true
  744. - variable: memory
  745. label: Memory (in MB)
  746. description: Memory limit for Piwigo.
  747. schema:
  748. type: int
  749. default: 4096
  750. required: true