questions.yaml 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. groups:
  2. - name: "Configuration"
  3. description: "Storj application configuration"
  4. - name: "Storage"
  5. description: "Configure storage for storj"
  6. - name: "Networking"
  7. description: "Networking Configuration for storj"
  8. - name: "Advanced DNS Settings"
  9. description: "Configure DNS settings"
  10. - name: "Resource Limits"
  11. description: "Set CPU/memory limits for Kubernetes Pod"
  12. portals:
  13. web_portal:
  14. protocols:
  15. - "http"
  16. host:
  17. - "$node_ip"
  18. ports:
  19. - "$variable-webPort"
  20. path: "/"
  21. questions:
  22. - variable: webPort
  23. label: "Web Port for Storj"
  24. group: Networking
  25. schema:
  26. type: int
  27. min: 9000
  28. max: 65535
  29. default: 20909
  30. required: true
  31. - variable: nodePort
  32. label: "Node Port for Storj"
  33. group: Networking
  34. schema:
  35. type: int
  36. min: 9000
  37. max: 65535
  38. default: 20988
  39. required: true
  40. - variable: dnsConfig
  41. label: "DNS Configuration"
  42. group: "Advanced DNS Settings"
  43. schema:
  44. type: dict
  45. attrs:
  46. - variable: options
  47. label: "DNS Options"
  48. schema:
  49. type: list
  50. items:
  51. - variable: optionsEntry
  52. label: "Option Entry Configuration"
  53. schema:
  54. type: dict
  55. attrs:
  56. - variable: name
  57. label: "Option Name"
  58. schema:
  59. type: string
  60. required: true
  61. - variable: value
  62. label: "Option Value"
  63. schema:
  64. type: string
  65. required: true
  66. - variable: wallet
  67. label: "Configure Wallet for Storj"
  68. group: "Configuration"
  69. schema:
  70. type: string
  71. required: true
  72. - variable: authToken
  73. label: "Configure Auth token for Storj Node"
  74. group: "Configuration"
  75. schema:
  76. type: string
  77. required: true
  78. - variable: email
  79. label: "Configure Email for Storj"
  80. group: "Configuration"
  81. schema:
  82. type: string
  83. required: true
  84. - variable: domainAddress
  85. label: "Add Your Storage Domain for Storj"
  86. group: "Configuration"
  87. schema:
  88. type: string
  89. required: true
  90. - variable: zksync
  91. label: "Opt-in to zkSync"
  92. description: Appends --operator.wallet-features=zksync flag to the storagenode command
  93. group: "Configuration"
  94. schema:
  95. type: boolean
  96. default: false
  97. - variable: terminationGracePeriod
  98. label: Termination Grace Period
  99. description: Optional duration in seconds the pod needs to terminate gracefully.
  100. group: "Configuration"
  101. schema:
  102. type: int
  103. min: 30
  104. default: 30
  105. - variable: storageSize
  106. label: "Configure Storage Size You Want To Share in GB's"
  107. group: Storage
  108. schema:
  109. type: int
  110. min: 500
  111. default: 500
  112. - variable: runAsUser
  113. label: "Owner User ID"
  114. group: "Configuration"
  115. schema:
  116. immutable: true
  117. type: int
  118. default: 568
  119. min: 1
  120. max: 65535
  121. - variable: runAsGroup
  122. label: "Owner Group ID"
  123. group: "Configuration"
  124. schema:
  125. immutable: true
  126. type: int
  127. default: 568
  128. min: 1
  129. max: 65535
  130. - variable: environmentVariables
  131. label: "Storj Extra Environment Variables"
  132. group: "Configuration"
  133. schema:
  134. type: list
  135. default: []
  136. items:
  137. - variable: environmentVariable
  138. label: "Environment Variable"
  139. schema:
  140. type: dict
  141. attrs:
  142. - variable: name
  143. label: "Name"
  144. schema:
  145. type: string
  146. - variable: value
  147. label: "Value"
  148. schema:
  149. type: string
  150. - variable: appVolumeMounts
  151. label: "Storj Configuration"
  152. group: "Storage"
  153. schema:
  154. type: dict
  155. attrs:
  156. - variable: data
  157. label: "Configuration Data Volume to Share on Storj"
  158. schema:
  159. type: dict
  160. attrs:
  161. - variable: datasetName
  162. label: "Configuration Volume Dataset Name"
  163. schema:
  164. type: string
  165. hidden: true
  166. $ref:
  167. - "normalize/ixVolume"
  168. show_if: [["hostPathEnabled", "=", false]]
  169. default: "ix_data"
  170. editable: false
  171. - variable: mountPath
  172. label: "Configuration Mount Path"
  173. description: "Path Where the Volume Will be Mounted Inside the Pod"
  174. schema:
  175. type: path
  176. hidden: true
  177. editable: false
  178. default: "/app/config"
  179. - variable: hostPathEnabled
  180. label: "Enable Custom Host Path for Storj Configuration Volume"
  181. schema:
  182. type: boolean
  183. default: false
  184. show_subquestions_if: true
  185. subquestions:
  186. - variable: hostPath
  187. label: "Host Path for Storj Configuration Volume"
  188. schema:
  189. type: hostpath
  190. required: true
  191. - variable: identity
  192. label: "Configure Identity Volume for Storage Node"
  193. schema:
  194. type: dict
  195. attrs:
  196. - variable: datasetName
  197. label: "Configure Storj Identity Volume to Allocate"
  198. schema:
  199. type: string
  200. hidden: true
  201. $ref:
  202. - "normalize/ixVolume"
  203. show_if: [["hostPathEnabled", "=", false]]
  204. default: "ix_identity"
  205. editable: false
  206. - variable: mountPath
  207. label: "Configure Storj Identity Volume to Allocate"
  208. description: "Path where the volume will be mounted inside the pod"
  209. schema:
  210. type: path
  211. hidden: true
  212. editable: false
  213. default: "/app/identity"
  214. - variable: hostPathEnabled
  215. label: "Enable Custom Host Path for Storj Identity Volume"
  216. schema:
  217. type: boolean
  218. default: false
  219. show_subquestions_if: true
  220. subquestions:
  221. - variable: hostPath
  222. label: "Host Path for Storj identity Volume"
  223. schema:
  224. type: hostpath
  225. required: true
  226. - variable: extraAppVolumeMounts
  227. label: "Extra Host Path Volumes"
  228. group: "Storage"
  229. schema:
  230. type: list
  231. items:
  232. - variable: extraAppVolume
  233. label: "Host Path Volume"
  234. description: "Add an extra host path volume for storj"
  235. schema:
  236. type: dict
  237. attrs:
  238. - variable: mountPath
  239. label: "Mount Path in Pod"
  240. description: "Path where the volume will be mounted inside the pod."
  241. schema:
  242. type: path
  243. required: true
  244. - variable: hostPath
  245. label: "Host Path"
  246. description: "Host path"
  247. schema:
  248. type: hostpath
  249. required: true
  250. - variable: enableResourceLimits
  251. label: "Enable Pod resource limits"
  252. group: "Resource Limits"
  253. schema:
  254. type: boolean
  255. default: false
  256. - variable: cpuLimit
  257. label: "CPU Limresource limitsit"
  258. description: "CPU resource limit allow plain integer values with suffix m(milli) e.g 1000m, 100."
  259. group: "Resource Limits"
  260. schema:
  261. type: string
  262. show_if: [["enableResourceLimits", "=", true]]
  263. valid_chars: "^\\d+(?:\\.\\d+(?!.*m$)|m?$)"
  264. default: "4000m"
  265. - variable: memLimit
  266. label: "Memory Limit"
  267. group: "Resource Limits"
  268. description: "Memory limits is specified by number of bytes. Followed by quantity suffix like E,P,T,G,M,k and Ei,Pi,Ti,Mi,Gi,Ki can also be used. e.g 129e6, 129M, 128974848000m, 123Mi"
  269. schema:
  270. type: string
  271. show_if: [["enableResourceLimits", "=", true]]
  272. valid_chars: "^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$"
  273. default: "8Gi"