questions.yaml 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. groups:
  2. - name: "Container Images"
  3. description: "Image to be used for container"
  4. - name: "Workload Configuration"
  5. description: "Configure Storage for IPFS"
  6. - name: "Storage"
  7. description: "Configure Storage for IPFS"
  8. - name: "IPFS Configuration"
  9. description: "Configure Storage for IPFS"
  10. portals:
  11. web_portal:
  12. protocols:
  13. - "http"
  14. host:
  15. - "$node_ip"
  16. ports:
  17. - "$variable-service.apiPort"
  18. path: "/webui"
  19. questions:
  20. # Image related
  21. - variable: image
  22. description: "Docker Image Details"
  23. label: "Docker Image"
  24. group: "Container Images"
  25. schema:
  26. type: dict
  27. required: true
  28. attrs:
  29. - variable: repository
  30. description: "Docker image repository"
  31. label: "Image repository"
  32. schema:
  33. type: string
  34. default: "ipfs/go-ipfs"
  35. required: true
  36. - variable: tag
  37. description: "Tag to use for specified image"
  38. label: "Image Tag"
  39. schema:
  40. type: string
  41. default: "v0.8.0-rc1"
  42. - variable: pullPolicy
  43. description: "Docker Image Pull Policy"
  44. label: "Image Pull Policy"
  45. schema:
  46. type: string
  47. default: "IfNotPresent"
  48. enum:
  49. - value: "IfNotPresent"
  50. description: "Only pull image if not present on host"
  51. - value: "Always"
  52. description: "Always pull image even if present on host"
  53. - value: "Never"
  54. description: "Never pull image even if it's not present on host"
  55. - variable: updateStrategy
  56. label: "IPFS update strategy"
  57. group: "Workload Configuration"
  58. schema:
  59. type: string
  60. default: "Recreate"
  61. enum:
  62. - value: "RollingUpdate"
  63. description: "Create new pods and then kill old ones"
  64. - value: "Recreate"
  65. description: "Kill existing pods before creating new ones"
  66. - variable: environment
  67. label: "IPFS image environment"
  68. group: "IPFS Configuration"
  69. schema:
  70. type: list
  71. default: []
  72. items:
  73. - variable: environmentVariable
  74. label: "Environment Variable"
  75. schema:
  76. type: dict
  77. attrs:
  78. - variable: name
  79. label: "Name"
  80. schema:
  81. type: string
  82. - variable: value
  83. label: "Value"
  84. schema:
  85. type: string
  86. - variable: service
  87. description: "IPFS Service Configuration"
  88. label: "IPFS Service Configuration"
  89. group: "IPFS Configuration"
  90. schema:
  91. type: dict
  92. required: true
  93. attrs:
  94. - variable: swarmPort
  95. label: "Swarm Port to use for IPFS (Public)"
  96. schema:
  97. type: int
  98. min: 9000
  99. max: 65535
  100. default: 9401
  101. required: true
  102. - variable: apiPort
  103. label: "API Port to use for IPFS (local)"
  104. schema:
  105. type: int
  106. min: 9000
  107. max: 65535
  108. default: 9501
  109. required: true
  110. - variable: gatewayPort
  111. label: "Gateway Port to use for IPFS (local)"
  112. schema:
  113. type: int
  114. min: 9000
  115. max: 65535
  116. default: 9880
  117. required: true
  118. - variable: ipfsDataHostPathEnabled
  119. label: "Configure Host Path for IPFS data"
  120. group: "Storage"
  121. schema:
  122. type: boolean
  123. default: false
  124. show_subquestions_if: true
  125. subquestions:
  126. - variable: ipfsDataHostPath
  127. label: "Specify HostPath for IPFS data"
  128. schema:
  129. type: hostpath
  130. - variable: ipfsDataVolume
  131. label: "IPFS Data Volume Defaults"
  132. group: "Storage"
  133. schema:
  134. type: dict
  135. $ref:
  136. - "normalize/ixVolume"
  137. show_if: [["ipfsDataHostPathEnabled", "=", false]]
  138. attrs:
  139. - variable: mountPath
  140. label: "Mount Path"
  141. description: "Path where the volume will be mounted inside the pod"
  142. schema:
  143. type: path
  144. editable: false
  145. default: "/data/ipfs"
  146. - variable: datasetName
  147. label: "IPFS Data Dataset Name"
  148. schema:
  149. type: string
  150. default: "ix-ipfs-data"
  151. editable: false
  152. - variable: ipfsStagingHostPathEnabled
  153. label: "Configure Host Path for IPFS staging data"
  154. group: "Storage"
  155. schema:
  156. type: boolean
  157. default: false
  158. show_subquestions_if: true
  159. subquestions:
  160. - variable: ipfsStagingHostPath
  161. label: "Specify HostPath for IPFS staging data"
  162. schema:
  163. type: hostpath
  164. - variable: ipfsStagingVolume
  165. label: "IPFS Staging Volume Defaults"
  166. group: "Storage"
  167. schema:
  168. type: dict
  169. $ref:
  170. - "normalize/ixVolume"
  171. show_if: [["ipfsStagingHostPathEnabled", "=", false]]
  172. attrs:
  173. - variable: mountPath
  174. label: "Mount Path"
  175. description: "Path where the volume will be mounted inside the pod"
  176. schema:
  177. type: path
  178. editable: false
  179. default: "/export"
  180. - variable: datasetName
  181. label: "IPFS Staging Dataset Name"
  182. schema:
  183. type: string
  184. default: "ix-ipfs-staging"
  185. editable: false