questions.yaml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551
  1. groups:
  2. - name: Storj Configuration
  3. description: Configure Storj
  4. - name: User and Group Configuration
  5. description: Configure User and Group for Storj
  6. - name: Advanced Pod Configuration
  7. description: Configure Advanced Pod Options for Storj
  8. - name: Network Configuration
  9. description: Configure Network for Storj
  10. - name: Storage Configuration
  11. description: Configure Storage for Storj
  12. - name: Resources Configuration
  13. description: Configure Resources for Storj
  14. portals:
  15. web_portal:
  16. protocols:
  17. - "$kubernetes-resource_configmap_portal_protocol"
  18. host:
  19. - "$kubernetes-resource_configmap_portal_host"
  20. ports:
  21. - "$kubernetes-resource_configmap_portal_port"
  22. path: "$kubernetes-resource_configmap_portal_path"
  23. questions:
  24. - variable: storjConfig
  25. label: ""
  26. group: Storj Configuration
  27. schema:
  28. type: dict
  29. attrs:
  30. - variable: wallet
  31. label: Wallet
  32. description: The wallet to use for Storj.
  33. schema:
  34. type: string
  35. required: true
  36. private: true
  37. - variable: authToken
  38. label: Auth Token
  39. description: The auth token to use for Storj.
  40. schema:
  41. type: string
  42. required: true
  43. private: true
  44. - variable: email
  45. label: Email
  46. description: The email to use for Storj.
  47. schema:
  48. type: string
  49. required: true
  50. - variable: domainAddress
  51. label: Domain Address
  52. description: The domain address to use for Storj.
  53. schema:
  54. type: string
  55. required: true
  56. private: true
  57. - variable: gracePeriod
  58. label: Grace Period
  59. description: The grace period to use for Storj.
  60. schema:
  61. type: int
  62. min: 30
  63. default: 30
  64. required: true
  65. - variable: storageSizeGB
  66. label: Storage Size
  67. description: The storage size to use for Storj.
  68. schema:
  69. type: int
  70. min: 500
  71. default: 500
  72. required: true
  73. - variable: wallets
  74. label: Opt-in to additional Wallets
  75. schema:
  76. type: dict
  77. attrs:
  78. - variable: zkSync
  79. label: zkSync
  80. description: Appends "zksync" to --operator.wallet-features flag to the storagenode command
  81. schema:
  82. type: boolean
  83. default: false
  84. - variable: zkSyncEra
  85. label: zkSync Era
  86. description: Appends "zksync-era" to --operator.wallet-features flag to the storagenode command
  87. schema:
  88. type: boolean
  89. default: false
  90. - variable: additionalEnvs
  91. label: Additional Environment Variables
  92. description: Configure additional environment variables for Storj.
  93. schema:
  94. type: list
  95. default: []
  96. items:
  97. - variable: env
  98. label: Environment Variable
  99. schema:
  100. type: dict
  101. attrs:
  102. - variable: name
  103. label: Name
  104. schema:
  105. type: string
  106. required: true
  107. - variable: value
  108. label: Value
  109. schema:
  110. type: string
  111. required: true
  112. - variable: storjRunAs
  113. label: ""
  114. group: User and Group Configuration
  115. schema:
  116. type: dict
  117. attrs:
  118. - variable: user
  119. label: User ID
  120. description: The user id that Storj will run as.
  121. schema:
  122. type: int
  123. min: 568
  124. default: 568
  125. required: true
  126. - variable: group
  127. label: Group ID
  128. description: The group id that Storj will run as.
  129. schema:
  130. type: int
  131. min: 568
  132. default: 568
  133. required: true
  134. - variable: podOptions
  135. label: ""
  136. group: Advanced Pod Configuration
  137. schema:
  138. type: dict
  139. attrs:
  140. - variable: dnsConfig
  141. label: Advanced DNS Configuration
  142. schema:
  143. type: dict
  144. attrs:
  145. - variable: options
  146. label: DNS Options
  147. schema:
  148. type: list
  149. items:
  150. - variable: optionsEntry
  151. label: DNS Option Entry
  152. schema:
  153. type: dict
  154. attrs:
  155. - variable: name
  156. label: Option Name
  157. schema:
  158. type: string
  159. required: true
  160. - variable: value
  161. label: Option Value
  162. schema:
  163. type: string
  164. required: true
  165. - variable: storjNetwork
  166. label: ""
  167. group: Network Configuration
  168. schema:
  169. type: dict
  170. attrs:
  171. - variable: webPort
  172. label: Web Port
  173. description: The port for the Storj Web UI.
  174. schema:
  175. type: int
  176. default: 20909
  177. min: 9000
  178. max: 65535
  179. required: true
  180. - variable: p2pPort
  181. label: P2P Port
  182. description: |
  183. This port will be used for both TCP and UDP traffic. </br>
  184. Note that this port must be open on your firewall and that internal
  185. Storj port will not be affected by this change, but only the external (Node Port)
  186. schema:
  187. type: int
  188. default: 28967
  189. min: 9000
  190. max: 65535
  191. required: true
  192. - variable: hostNetwork
  193. label: Host Network
  194. description: |
  195. Enable host network for Storj
  196. schema:
  197. type: boolean
  198. default: false
  199. - variable: storjStorage
  200. label: ""
  201. group: Storage Configuration
  202. schema:
  203. type: dict
  204. attrs:
  205. - variable: data
  206. label: Storj Data Storage
  207. description: The path to store Storj Data.
  208. schema:
  209. type: dict
  210. attrs:
  211. - variable: type
  212. label: Type
  213. description: |
  214. ixVolume: Is dataset created automatically by the system.</br>
  215. Host Path: Is a path that already exists on the system.
  216. schema:
  217. type: string
  218. required: true
  219. immutable: true
  220. default: "ixVolume"
  221. enum:
  222. - value: "hostPath"
  223. description: Host Path (Path that already exists on the system)
  224. - value: "ixVolume"
  225. description: ixVolume (Dataset created automatically by the system)
  226. - variable: ixVolumeConfig
  227. label: ixVolume Configuration
  228. description: The configuration for the ixVolume dataset.
  229. schema:
  230. type: dict
  231. show_if: [["type", "=", "ixVolume"]]
  232. $ref:
  233. - "normalize/ixVolume"
  234. attrs:
  235. - variable: aclEnable
  236. label: Enable ACL
  237. description: Enable ACL for the dataset.
  238. schema:
  239. type: boolean
  240. default: false
  241. - variable: datasetName
  242. label: Dataset Name
  243. description: The name of the dataset to use for storage.
  244. schema:
  245. type: string
  246. required: true
  247. immutable: true
  248. hidden: true
  249. default: "data"
  250. - variable: aclEntries
  251. label: ACL Configuration
  252. schema:
  253. type: dict
  254. show_if: [["aclEnable", "=", true]]
  255. attrs: []
  256. - variable: hostPathConfig
  257. label: Host Path Config
  258. schema:
  259. type: dict
  260. show_if: [["type", "=", "hostPath"]]
  261. attrs:
  262. - variable: aclEnable
  263. label: Enable ACL
  264. description: Enable ACL for the dataset.
  265. schema:
  266. type: boolean
  267. default: false
  268. - variable: acl
  269. label: ACL Configuration
  270. schema:
  271. type: dict
  272. show_if: [["aclEnable", "=", true]]
  273. attrs: []
  274. $ref:
  275. - "normalize/acl"
  276. - variable: hostPath
  277. label: Host Path
  278. description: The host path to use for storage.
  279. schema:
  280. type: hostpath
  281. show_if: [["aclEnable", "=", false]]
  282. required: true
  283. - variable: identity
  284. label: Storj Identity Storage
  285. description: The path to store Storj Identity.
  286. schema:
  287. type: dict
  288. attrs:
  289. - variable: type
  290. label: Type
  291. description: |
  292. ixVolume: Is dataset created automatically by the system.</br>
  293. Host Path: Is a path that already exists on the system.
  294. schema:
  295. type: string
  296. required: true
  297. immutable: true
  298. default: "ixVolume"
  299. enum:
  300. - value: "hostPath"
  301. description: Host Path (Path that already exists on the system)
  302. - value: "ixVolume"
  303. description: ixVolume (Dataset created automatically by the system)
  304. - variable: ixVolumeConfig
  305. label: ixVolume Configuration
  306. description: The configuration for the ixVolume dataset.
  307. schema:
  308. type: dict
  309. show_if: [["type", "=", "ixVolume"]]
  310. $ref:
  311. - "normalize/ixVolume"
  312. attrs:
  313. - variable: aclEnable
  314. label: Enable ACL
  315. description: Enable ACL for the dataset.
  316. schema:
  317. type: boolean
  318. default: false
  319. - variable: datasetName
  320. label: Dataset Name
  321. description: The name of the dataset to use for storage.
  322. schema:
  323. type: string
  324. required: true
  325. immutable: true
  326. hidden: true
  327. default: "identity"
  328. - variable: aclEntries
  329. label: ACL Configuration
  330. schema:
  331. type: dict
  332. show_if: [["aclEnable", "=", true]]
  333. attrs: []
  334. - variable: hostPathConfig
  335. label: Host Path Config
  336. schema:
  337. type: dict
  338. show_if: [["type", "=", "hostPath"]]
  339. attrs:
  340. - variable: aclEnable
  341. label: Enable ACL
  342. description: Enable ACL for the dataset.
  343. schema:
  344. type: boolean
  345. default: false
  346. - variable: acl
  347. label: ACL Configuration
  348. schema:
  349. type: dict
  350. show_if: [["aclEnable", "=", true]]
  351. attrs: []
  352. $ref:
  353. - "normalize/acl"
  354. - variable: hostPath
  355. label: Host Path
  356. description: The host path to use for storage.
  357. schema:
  358. type: hostpath
  359. show_if: [["aclEnable", "=", false]]
  360. required: true
  361. - variable: additionalStorages
  362. label: Additional Storage
  363. description: Additional storage for Storj.
  364. schema:
  365. type: list
  366. default: []
  367. items:
  368. - variable: storageEntry
  369. label: Storage Entry
  370. schema:
  371. type: dict
  372. attrs:
  373. - variable: type
  374. label: Type
  375. description: |
  376. ixVolume: Is dataset created automatically by the system.</br>
  377. Host Path: Is a path that already exists on the system.</br>
  378. SMB Share: Is a SMB share that is mounted to a persistent volume claim.
  379. schema:
  380. type: string
  381. required: true
  382. default: "ixVolume"
  383. immutable: true
  384. enum:
  385. - value: "hostPath"
  386. description: Host Path (Path that already exists on the system)
  387. - value: "ixVolume"
  388. description: ixVolume (Dataset created automatically by the system)
  389. - value: "smb-pv-pvc"
  390. description: SMB Share (Mounts a persistent volume claim to a SMB share)
  391. - variable: readOnly
  392. label: Read Only
  393. description: Mount the volume as read only.
  394. schema:
  395. type: boolean
  396. default: false
  397. - variable: mountPath
  398. label: Mount Path
  399. description: The path inside the container to mount the storage.
  400. schema:
  401. type: path
  402. required: true
  403. - variable: hostPathConfig
  404. label: Host Path Config
  405. schema:
  406. type: dict
  407. show_if: [["type", "=", "hostPath"]]
  408. attrs:
  409. - variable: aclEnable
  410. label: Enable ACL
  411. description: Enable ACL for the dataset.
  412. schema:
  413. type: boolean
  414. default: false
  415. - variable: acl
  416. label: ACL Configuration
  417. schema:
  418. type: dict
  419. show_if: [["aclEnable", "=", true]]
  420. attrs: []
  421. $ref:
  422. - "normalize/acl"
  423. - variable: hostPath
  424. label: Host Path
  425. description: The host path to use for storage.
  426. schema:
  427. type: hostpath
  428. show_if: [["aclEnable", "=", false]]
  429. required: true
  430. - variable: ixVolumeConfig
  431. label: ixVolume Configuration
  432. description: The configuration for the ixVolume dataset.
  433. schema:
  434. type: dict
  435. show_if: [["type", "=", "ixVolume"]]
  436. $ref:
  437. - "normalize/ixVolume"
  438. attrs:
  439. - variable: aclEnable
  440. label: Enable ACL
  441. description: Enable ACL for the dataset.
  442. schema:
  443. type: boolean
  444. default: false
  445. - variable: datasetName
  446. label: Dataset Name
  447. description: The name of the dataset to use for storage.
  448. schema:
  449. type: string
  450. required: true
  451. immutable: true
  452. default: "storage_entry"
  453. - variable: aclEntries
  454. label: ACL Configuration
  455. schema:
  456. type: dict
  457. show_if: [["aclEnable", "=", true]]
  458. attrs: []
  459. - variable: smbConfig
  460. label: SMB Share Configuration
  461. description: The configuration for the SMB Share.
  462. schema:
  463. type: dict
  464. show_if: [["type", "=", "smb-pv-pvc"]]
  465. attrs:
  466. - variable: server
  467. label: Server
  468. description: The server for the SMB share.
  469. schema:
  470. type: string
  471. required: true
  472. - variable: share
  473. label: Share
  474. description: The share name for the SMB share.
  475. schema:
  476. type: string
  477. required: true
  478. - variable: domain
  479. label: Domain (Optional)
  480. description: The domain for the SMB share.
  481. schema:
  482. type: string
  483. - variable: username
  484. label: Username
  485. description: The username for the SMB share.
  486. schema:
  487. type: string
  488. required: true
  489. - variable: password
  490. label: Password
  491. description: The password for the SMB share.
  492. schema:
  493. type: string
  494. required: true
  495. private: true
  496. - variable: size
  497. label: Size (in Gi)
  498. description: The size of the volume quota.
  499. schema:
  500. type: int
  501. required: true
  502. min: 1
  503. default: 1
  504. - variable: resources
  505. group: Resources Configuration
  506. label: ""
  507. schema:
  508. type: dict
  509. attrs:
  510. - variable: limits
  511. label: Limits
  512. schema:
  513. type: dict
  514. attrs:
  515. - variable: cpu
  516. label: CPU
  517. description: CPU limit for Storj.
  518. schema:
  519. type: string
  520. max_length: 6
  521. valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$'
  522. valid_chars_error: |
  523. Valid CPU limit formats are</br>
  524. - Plain Integer - eg. 1</br>
  525. - Float - eg. 0.5</br>
  526. - Milicpu - eg. 500m
  527. default: "4000m"
  528. required: true
  529. - variable: memory
  530. label: Memory
  531. description: Memory limit for Storj.
  532. schema:
  533. type: string
  534. max_length: 12
  535. valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$'
  536. valid_chars_error: |
  537. Valid Memory limit formats are</br>
  538. - Suffixed with E/P/T/G/M/K - eg. 1G</br>
  539. - Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>
  540. - Plain Integer in bytes - eg. 1024</br>
  541. - Exponent - eg. 134e6
  542. default: "8Gi"
  543. required: true