@flui-cloud/cli 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (873) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +124 -0
  3. package/bin/run +17 -0
  4. package/lib/cli/src/background/cluster-worker.d.ts +11 -0
  5. package/lib/cli/src/background/cluster-worker.js +90 -0
  6. package/lib/cli/src/cli-providers.module.d.ts +2 -0
  7. package/lib/cli/src/cli-providers.module.js +118 -0
  8. package/lib/cli/src/cli.module.d.ts +13 -0
  9. package/lib/cli/src/cli.module.js +80 -0
  10. package/lib/cli/src/commands/_diag-oidc.d.ts +6 -0
  11. package/lib/cli/src/commands/_diag-oidc.js +132 -0
  12. package/lib/cli/src/commands/app/backup/create.d.ts +20 -0
  13. package/lib/cli/src/commands/app/backup/create.js +128 -0
  14. package/lib/cli/src/commands/app/backup/delete.d.ts +19 -0
  15. package/lib/cli/src/commands/app/backup/delete.js +95 -0
  16. package/lib/cli/src/commands/app/build.d.ts +17 -0
  17. package/lib/cli/src/commands/app/build.js +133 -0
  18. package/lib/cli/src/commands/app/builds.d.ts +14 -0
  19. package/lib/cli/src/commands/app/builds.js +82 -0
  20. package/lib/cli/src/commands/app/crash.d.ts +16 -0
  21. package/lib/cli/src/commands/app/crash.js +106 -0
  22. package/lib/cli/src/commands/app/crashes.d.ts +15 -0
  23. package/lib/cli/src/commands/app/crashes.js +99 -0
  24. package/lib/cli/src/commands/app/delete.d.ts +16 -0
  25. package/lib/cli/src/commands/app/delete.js +149 -0
  26. package/lib/cli/src/commands/app/image/delete.d.ts +18 -0
  27. package/lib/cli/src/commands/app/image/delete.js +72 -0
  28. package/lib/cli/src/commands/app/init.d.ts +40 -0
  29. package/lib/cli/src/commands/app/init.js +436 -0
  30. package/lib/cli/src/commands/app/list.d.ts +11 -0
  31. package/lib/cli/src/commands/app/list.js +84 -0
  32. package/lib/cli/src/commands/app/logs.d.ts +18 -0
  33. package/lib/cli/src/commands/app/logs.js +121 -0
  34. package/lib/cli/src/commands/app/metrics.d.ts +17 -0
  35. package/lib/cli/src/commands/app/metrics.js +100 -0
  36. package/lib/cli/src/commands/app/redeploy.d.ts +14 -0
  37. package/lib/cli/src/commands/app/redeploy.js +60 -0
  38. package/lib/cli/src/commands/app/releases.d.ts +15 -0
  39. package/lib/cli/src/commands/app/releases.js +117 -0
  40. package/lib/cli/src/commands/app/restart.d.ts +12 -0
  41. package/lib/cli/src/commands/app/restart.js +44 -0
  42. package/lib/cli/src/commands/app/scale.d.ts +13 -0
  43. package/lib/cli/src/commands/app/scale.js +58 -0
  44. package/lib/cli/src/commands/app/snapshot/create.d.ts +14 -0
  45. package/lib/cli/src/commands/app/snapshot/create.js +85 -0
  46. package/lib/cli/src/commands/app/snapshot/delete.d.ts +14 -0
  47. package/lib/cli/src/commands/app/snapshot/delete.js +63 -0
  48. package/lib/cli/src/commands/app/snapshot/list.d.ts +11 -0
  49. package/lib/cli/src/commands/app/snapshot/list.js +82 -0
  50. package/lib/cli/src/commands/app/snapshot/restore.d.ts +15 -0
  51. package/lib/cli/src/commands/app/snapshot/restore.js +74 -0
  52. package/lib/cli/src/commands/app/snapshot/swap.d.ts +15 -0
  53. package/lib/cli/src/commands/app/snapshot/swap.js +68 -0
  54. package/lib/cli/src/commands/app/start.d.ts +12 -0
  55. package/lib/cli/src/commands/app/start.js +45 -0
  56. package/lib/cli/src/commands/app/status.d.ts +15 -0
  57. package/lib/cli/src/commands/app/status.js +108 -0
  58. package/lib/cli/src/commands/app/stop.d.ts +12 -0
  59. package/lib/cli/src/commands/app/stop.js +45 -0
  60. package/lib/cli/src/commands/app/versions.d.ts +14 -0
  61. package/lib/cli/src/commands/app/versions.js +80 -0
  62. package/lib/cli/src/commands/auth/generate-api-key.d.ts +12 -0
  63. package/lib/cli/src/commands/auth/generate-api-key.js +90 -0
  64. package/lib/cli/src/commands/auth/login.d.ts +11 -0
  65. package/lib/cli/src/commands/auth/login.js +296 -0
  66. package/lib/cli/src/commands/auth/reset-password.d.ts +15 -0
  67. package/lib/cli/src/commands/auth/reset-password.js +253 -0
  68. package/lib/cli/src/commands/backup/destination/create.d.ts +22 -0
  69. package/lib/cli/src/commands/backup/destination/create.js +102 -0
  70. package/lib/cli/src/commands/backup/destination/delete.d.ts +11 -0
  71. package/lib/cli/src/commands/backup/destination/delete.js +46 -0
  72. package/lib/cli/src/commands/backup/destination/list.d.ts +9 -0
  73. package/lib/cli/src/commands/backup/destination/list.js +42 -0
  74. package/lib/cli/src/commands/backup/destination/show.d.ts +11 -0
  75. package/lib/cli/src/commands/backup/destination/show.js +45 -0
  76. package/lib/cli/src/commands/backup/destination/test.d.ts +8 -0
  77. package/lib/cli/src/commands/backup/destination/test.js +39 -0
  78. package/lib/cli/src/commands/backup/job/list.d.ts +9 -0
  79. package/lib/cli/src/commands/backup/job/list.js +38 -0
  80. package/lib/cli/src/commands/backup/job/run.d.ts +8 -0
  81. package/lib/cli/src/commands/backup/job/run.js +32 -0
  82. package/lib/cli/src/commands/backup/job/show.d.ts +11 -0
  83. package/lib/cli/src/commands/backup/job/show.js +38 -0
  84. package/lib/cli/src/commands/backup/policy/create.d.ts +21 -0
  85. package/lib/cli/src/commands/backup/policy/create.js +97 -0
  86. package/lib/cli/src/commands/backup/policy/delete.d.ts +11 -0
  87. package/lib/cli/src/commands/backup/policy/delete.js +42 -0
  88. package/lib/cli/src/commands/backup/policy/list.d.ts +9 -0
  89. package/lib/cli/src/commands/backup/policy/list.js +40 -0
  90. package/lib/cli/src/commands/backup/policy/show.d.ts +11 -0
  91. package/lib/cli/src/commands/backup/policy/show.js +45 -0
  92. package/lib/cli/src/commands/backup/restore/create.d.ts +14 -0
  93. package/lib/cli/src/commands/backup/restore/create.js +68 -0
  94. package/lib/cli/src/commands/backup/restore/list.d.ts +8 -0
  95. package/lib/cli/src/commands/backup/restore/list.js +33 -0
  96. package/lib/cli/src/commands/backup/restore/preview.d.ts +9 -0
  97. package/lib/cli/src/commands/backup/restore/preview.js +29 -0
  98. package/lib/cli/src/commands/backup/restore/show.d.ts +11 -0
  99. package/lib/cli/src/commands/backup/restore/show.js +40 -0
  100. package/lib/cli/src/commands/catalog/validate.d.ts +14 -0
  101. package/lib/cli/src/commands/catalog/validate.js +155 -0
  102. package/lib/cli/src/commands/cluster/destroy.d.ts +15 -0
  103. package/lib/cli/src/commands/cluster/destroy.js +137 -0
  104. package/lib/cli/src/commands/config/get.d.ts +9 -0
  105. package/lib/cli/src/commands/config/get.js +47 -0
  106. package/lib/cli/src/commands/config/list.d.ts +15 -0
  107. package/lib/cli/src/commands/config/list.js +109 -0
  108. package/lib/cli/src/commands/config/remove.d.ts +12 -0
  109. package/lib/cli/src/commands/config/remove.js +92 -0
  110. package/lib/cli/src/commands/config/set.d.ts +15 -0
  111. package/lib/cli/src/commands/config/set.js +152 -0
  112. package/lib/cli/src/commands/config/show.d.ts +6 -0
  113. package/lib/cli/src/commands/config/show.js +15 -0
  114. package/lib/cli/src/commands/context/create.d.ts +12 -0
  115. package/lib/cli/src/commands/context/create.js +46 -0
  116. package/lib/cli/src/commands/context/delete.d.ts +12 -0
  117. package/lib/cli/src/commands/context/delete.js +53 -0
  118. package/lib/cli/src/commands/context/list.d.ts +6 -0
  119. package/lib/cli/src/commands/context/list.js +29 -0
  120. package/lib/cli/src/commands/context/show.d.ts +6 -0
  121. package/lib/cli/src/commands/context/show.js +12 -0
  122. package/lib/cli/src/commands/context/use.d.ts +9 -0
  123. package/lib/cli/src/commands/context/use.js +30 -0
  124. package/lib/cli/src/commands/deploy.d.ts +49 -0
  125. package/lib/cli/src/commands/deploy.js +542 -0
  126. package/lib/cli/src/commands/dev/creds.d.ts +19 -0
  127. package/lib/cli/src/commands/dev/creds.js +290 -0
  128. package/lib/cli/src/commands/dev/tunnel.d.ts +15 -0
  129. package/lib/cli/src/commands/dev/tunnel.js +268 -0
  130. package/lib/cli/src/commands/dns/cleanup.d.ts +11 -0
  131. package/lib/cli/src/commands/dns/cleanup.js +93 -0
  132. package/lib/cli/src/commands/env/capacity.d.ts +12 -0
  133. package/lib/cli/src/commands/env/capacity.js +177 -0
  134. package/lib/cli/src/commands/env/create.d.ts +21 -0
  135. package/lib/cli/src/commands/env/create.js +721 -0
  136. package/lib/cli/src/commands/env/credentials.d.ts +21 -0
  137. package/lib/cli/src/commands/env/credentials.js +435 -0
  138. package/lib/cli/src/commands/env/destroy.d.ts +9 -0
  139. package/lib/cli/src/commands/env/destroy.js +145 -0
  140. package/lib/cli/src/commands/env/diag-ca.d.ts +14 -0
  141. package/lib/cli/src/commands/env/diag-ca.js +192 -0
  142. package/lib/cli/src/commands/env/export-config.d.ts +39 -0
  143. package/lib/cli/src/commands/env/export-config.js +386 -0
  144. package/lib/cli/src/commands/env/force-ready.d.ts +10 -0
  145. package/lib/cli/src/commands/env/force-ready.js +222 -0
  146. package/lib/cli/src/commands/env/inspect.d.ts +12 -0
  147. package/lib/cli/src/commands/env/inspect.js +192 -0
  148. package/lib/cli/src/commands/env/kubectl.d.ts +9 -0
  149. package/lib/cli/src/commands/env/kubectl.js +33 -0
  150. package/lib/cli/src/commands/env/logs.d.ts +12 -0
  151. package/lib/cli/src/commands/env/logs.js +136 -0
  152. package/lib/cli/src/commands/env/orphan-volumes.d.ts +11 -0
  153. package/lib/cli/src/commands/env/orphan-volumes.js +153 -0
  154. package/lib/cli/src/commands/env/refresh-kubeconfig.d.ts +6 -0
  155. package/lib/cli/src/commands/env/refresh-kubeconfig.js +66 -0
  156. package/lib/cli/src/commands/env/repair-ssh-ca.d.ts +11 -0
  157. package/lib/cli/src/commands/env/repair-ssh-ca.js +137 -0
  158. package/lib/cli/src/commands/env/restart.d.ts +10 -0
  159. package/lib/cli/src/commands/env/restart.js +187 -0
  160. package/lib/cli/src/commands/env/scale-master.d.ts +11 -0
  161. package/lib/cli/src/commands/env/scale-master.js +160 -0
  162. package/lib/cli/src/commands/env/scale-node.d.ts +14 -0
  163. package/lib/cli/src/commands/env/scale-node.js +139 -0
  164. package/lib/cli/src/commands/env/status.d.ts +10 -0
  165. package/lib/cli/src/commands/env/status.js +182 -0
  166. package/lib/cli/src/commands/env/stop.d.ts +6 -0
  167. package/lib/cli/src/commands/env/stop.js +147 -0
  168. package/lib/cli/src/commands/env/storage-expand.d.ts +10 -0
  169. package/lib/cli/src/commands/env/storage-expand.js +124 -0
  170. package/lib/cli/src/commands/env/storage.d.ts +8 -0
  171. package/lib/cli/src/commands/env/storage.js +92 -0
  172. package/lib/cli/src/commands/env/sync.d.ts +17 -0
  173. package/lib/cli/src/commands/env/sync.js +225 -0
  174. package/lib/cli/src/commands/env/uncordon.d.ts +9 -0
  175. package/lib/cli/src/commands/env/uncordon.js +73 -0
  176. package/lib/cli/src/commands/env/update-firewall.d.ts +9 -0
  177. package/lib/cli/src/commands/env/update-firewall.js +185 -0
  178. package/lib/cli/src/commands/integration/connect.d.ts +13 -0
  179. package/lib/cli/src/commands/integration/connect.js +161 -0
  180. package/lib/cli/src/commands/integration/ghcr-pat/revoke.d.ts +9 -0
  181. package/lib/cli/src/commands/integration/ghcr-pat/revoke.js +61 -0
  182. package/lib/cli/src/commands/integration/ghcr-pat/set.d.ts +12 -0
  183. package/lib/cli/src/commands/integration/ghcr-pat/set.js +141 -0
  184. package/lib/cli/src/commands/integration/ghcr-pat/status.d.ts +6 -0
  185. package/lib/cli/src/commands/integration/ghcr-pat/status.js +69 -0
  186. package/lib/cli/src/commands/integration/installations.d.ts +6 -0
  187. package/lib/cli/src/commands/integration/installations.js +45 -0
  188. package/lib/cli/src/commands/integration/list.d.ts +8 -0
  189. package/lib/cli/src/commands/integration/list.js +67 -0
  190. package/lib/cli/src/commands/integration/remove-installation.d.ts +12 -0
  191. package/lib/cli/src/commands/integration/remove-installation.js +71 -0
  192. package/lib/cli/src/commands/integration/setup-github-app.d.ts +10 -0
  193. package/lib/cli/src/commands/integration/setup-github-app.js +162 -0
  194. package/lib/cli/src/commands/node/add.d.ts +11 -0
  195. package/lib/cli/src/commands/node/add.js +103 -0
  196. package/lib/cli/src/commands/node/list.d.ts +11 -0
  197. package/lib/cli/src/commands/node/list.js +83 -0
  198. package/lib/cli/src/commands/node/remove.d.ts +16 -0
  199. package/lib/cli/src/commands/node/remove.js +161 -0
  200. package/lib/cli/src/commands/reconcile.d.ts +19 -0
  201. package/lib/cli/src/commands/reconcile.js +171 -0
  202. package/lib/cli/src/commands/repo/connect.d.ts +12 -0
  203. package/lib/cli/src/commands/repo/connect.js +133 -0
  204. package/lib/cli/src/commands/repo/disconnect.d.ts +12 -0
  205. package/lib/cli/src/commands/repo/disconnect.js +73 -0
  206. package/lib/cli/src/commands/repo/list.d.ts +9 -0
  207. package/lib/cli/src/commands/repo/list.js +66 -0
  208. package/lib/cli/src/commands/server-types/list.d.ts +12 -0
  209. package/lib/cli/src/commands/server-types/list.js +205 -0
  210. package/lib/cli/src/commands/ssh.d.ts +9 -0
  211. package/lib/cli/src/commands/ssh.js +94 -0
  212. package/lib/cli/src/commands/standalone/install.d.ts +27 -0
  213. package/lib/cli/src/commands/standalone/install.js +330 -0
  214. package/lib/cli/src/commands/template/use.d.ts +16 -0
  215. package/lib/cli/src/commands/template/use.js +111 -0
  216. package/lib/cli/src/commands/update.d.ts +6 -0
  217. package/lib/cli/src/commands/update.js +87 -0
  218. package/lib/cli/src/config/bootstrap.config.d.ts +37 -0
  219. package/lib/cli/src/config/bootstrap.config.js +33 -0
  220. package/lib/cli/src/config/defaults.d.ts +46 -0
  221. package/lib/cli/src/config/defaults.js +79 -0
  222. package/lib/cli/src/config/key-router.d.ts +22 -0
  223. package/lib/cli/src/config/key-router.js +45 -0
  224. package/lib/cli/src/config/preferences-echo.d.ts +9 -0
  225. package/lib/cli/src/config/preferences-echo.js +61 -0
  226. package/lib/cli/src/config/preferences-resolver.d.ts +43 -0
  227. package/lib/cli/src/config/preferences-resolver.js +100 -0
  228. package/lib/cli/src/config/preferences-schema.d.ts +32 -0
  229. package/lib/cli/src/config/preferences-schema.js +53 -0
  230. package/lib/cli/src/hooks/command_not_found.d.ts +3 -0
  231. package/lib/cli/src/hooks/command_not_found.js +44 -0
  232. package/lib/cli/src/lib/api-client.d.ts +58 -0
  233. package/lib/cli/src/lib/api-client.js +162 -0
  234. package/lib/cli/src/lib/backup-client.d.ts +131 -0
  235. package/lib/cli/src/lib/backup-client.js +78 -0
  236. package/lib/cli/src/lib/browser-callback.d.ts +3 -0
  237. package/lib/cli/src/lib/browser-callback.js +83 -0
  238. package/lib/cli/src/lib/byos-precheck.d.ts +29 -0
  239. package/lib/cli/src/lib/byos-precheck.js +162 -0
  240. package/lib/cli/src/lib/ca-utils.d.ts +13 -0
  241. package/lib/cli/src/lib/ca-utils.js +72 -0
  242. package/lib/cli/src/lib/cli-credential-provider.service.d.ts +31 -0
  243. package/lib/cli/src/lib/cli-credential-provider.service.js +86 -0
  244. package/lib/cli/src/lib/config-storage.d.ts +128 -0
  245. package/lib/cli/src/lib/config-storage.js +349 -0
  246. package/lib/cli/src/lib/config.d.ts +23 -0
  247. package/lib/cli/src/lib/config.js +113 -0
  248. package/lib/cli/src/lib/context-banner.d.ts +12 -0
  249. package/lib/cli/src/lib/context-banner.js +25 -0
  250. package/lib/cli/src/lib/format-bytes.d.ts +1 -0
  251. package/lib/cli/src/lib/format-bytes.js +18 -0
  252. package/lib/cli/src/lib/framework-detector.d.ts +12 -0
  253. package/lib/cli/src/lib/framework-detector.js +216 -0
  254. package/lib/cli/src/lib/framework-postchecks.d.ts +11 -0
  255. package/lib/cli/src/lib/framework-postchecks.js +152 -0
  256. package/lib/cli/src/lib/nest-app.d.ts +17 -0
  257. package/lib/cli/src/lib/nest-app.js +69 -0
  258. package/lib/cli/src/lib/nip-base-domain.util.d.ts +8 -0
  259. package/lib/cli/src/lib/nip-base-domain.util.js +17 -0
  260. package/lib/cli/src/lib/profile-manager.d.ts +56 -0
  261. package/lib/cli/src/lib/profile-manager.js +207 -0
  262. package/lib/cli/src/lib/prompts.d.ts +67 -0
  263. package/lib/cli/src/lib/prompts.js +475 -0
  264. package/lib/cli/src/lib/provider-credential-schemas.d.ts +29 -0
  265. package/lib/cli/src/lib/provider-credential-schemas.js +48 -0
  266. package/lib/cli/src/lib/repositories/cli-cluster.repository.d.ts +56 -0
  267. package/lib/cli/src/lib/repositories/cli-cluster.repository.js +216 -0
  268. package/lib/cli/src/lib/repositories/cli-firewall.repository.d.ts +13 -0
  269. package/lib/cli/src/lib/repositories/cli-firewall.repository.js +147 -0
  270. package/lib/cli/src/lib/repositories/cli-node.repository.d.ts +26 -0
  271. package/lib/cli/src/lib/repositories/cli-node.repository.js +164 -0
  272. package/lib/cli/src/lib/repositories/cli-operation.repository.d.ts +57 -0
  273. package/lib/cli/src/lib/repositories/cli-operation.repository.js +226 -0
  274. package/lib/cli/src/lib/repositories/cli-vnet.repository.d.ts +22 -0
  275. package/lib/cli/src/lib/repositories/cli-vnet.repository.js +175 -0
  276. package/lib/cli/src/lib/repositories/index.d.ts +5 -0
  277. package/lib/cli/src/lib/repositories/index.js +21 -0
  278. package/lib/cli/src/lib/resolve-cluster.d.ts +16 -0
  279. package/lib/cli/src/lib/resolve-cluster.js +34 -0
  280. package/lib/cli/src/lib/scaleway-validator.d.ts +5 -0
  281. package/lib/cli/src/lib/scaleway-validator.js +87 -0
  282. package/lib/cli/src/lib/server-utils.d.ts +8 -0
  283. package/lib/cli/src/lib/server-utils.js +19 -0
  284. package/lib/cli/src/lib/services/cli-app.service.d.ts +294 -0
  285. package/lib/cli/src/lib/services/cli-app.service.js +162 -0
  286. package/lib/cli/src/lib/services/cli-node.service.d.ts +43 -0
  287. package/lib/cli/src/lib/services/cli-node.service.js +34 -0
  288. package/lib/cli/src/lib/services/provider-sync.service.d.ts +90 -0
  289. package/lib/cli/src/lib/services/provider-sync.service.js +178 -0
  290. package/lib/cli/src/lib/services/reconciliation.service.d.ts +40 -0
  291. package/lib/cli/src/lib/services/reconciliation.service.js +119 -0
  292. package/lib/cli/src/lib/services/vnet-provisioning.service.d.ts +37 -0
  293. package/lib/cli/src/lib/services/vnet-provisioning.service.js +164 -0
  294. package/lib/cli/src/lib/ssh-key.d.ts +23 -0
  295. package/lib/cli/src/lib/ssh-key.js +126 -0
  296. package/lib/cli/src/lib/template-fetcher.d.ts +25 -0
  297. package/lib/cli/src/lib/template-fetcher.js +48 -0
  298. package/lib/cli/src/lib/templates/firewall-rules.d.ts +8 -0
  299. package/lib/cli/src/lib/templates/firewall-rules.js +17 -0
  300. package/lib/cli/src/lib/typeorm-shim.d.ts +12 -0
  301. package/lib/cli/src/lib/typeorm-shim.js +17 -0
  302. package/lib/cli/src/lib/utils/env-file.d.ts +2 -0
  303. package/lib/cli/src/lib/utils/env-file.js +40 -0
  304. package/lib/cli/src/lib/utils/ip-detection.d.ts +27 -0
  305. package/lib/cli/src/lib/utils/ip-detection.js +144 -0
  306. package/lib/cli/src/modules/cli-infrastructure.module.d.ts +14 -0
  307. package/lib/cli/src/modules/cli-infrastructure.module.js +249 -0
  308. package/lib/cli/src/services/cli-ca.service.d.ts +62 -0
  309. package/lib/cli/src/services/cli-ca.service.js +281 -0
  310. package/lib/cli/src/services/cli-cluster-creator.service.d.ts +78 -0
  311. package/lib/cli/src/services/cli-cluster-creator.service.js +655 -0
  312. package/lib/cli/src/services/cli-clusters.service.d.ts +74 -0
  313. package/lib/cli/src/services/cli-clusters.service.js +762 -0
  314. package/lib/cli/src/services/cli-endpoint-resolver.service.d.ts +33 -0
  315. package/lib/cli/src/services/cli-endpoint-resolver.service.js +195 -0
  316. package/lib/cli/src/services/cli-k3s-script.service.d.ts +114 -0
  317. package/lib/cli/src/services/cli-k3s-script.service.js +288 -0
  318. package/lib/cli/src/services/cli-logger.service.d.ts +56 -0
  319. package/lib/cli/src/services/cli-logger.service.js +188 -0
  320. package/lib/cli/src/services/cli-observability-cluster.service.d.ts +128 -0
  321. package/lib/cli/src/services/cli-observability-cluster.service.js +525 -0
  322. package/lib/cli/src/services/cli-ssh.service.d.ts +90 -0
  323. package/lib/cli/src/services/cli-ssh.service.js +457 -0
  324. package/lib/cli/src/services/server-type-cache.service.d.ts +34 -0
  325. package/lib/cli/src/services/server-type-cache.service.js +156 -0
  326. package/lib/cli/src/services/server-type-validator.service.d.ts +80 -0
  327. package/lib/cli/src/services/server-type-validator.service.js +366 -0
  328. package/lib/cli/src/types/index.d.ts +41 -0
  329. package/lib/cli/src/types/index.js +2 -0
  330. package/lib/src/common/utils/project-root.util.d.ts +22 -0
  331. package/lib/src/common/utils/project-root.util.js +78 -0
  332. package/lib/src/modules/access/access.controller.d.ts +30 -0
  333. package/lib/src/modules/access/access.controller.js +336 -0
  334. package/lib/src/modules/access/access.module.d.ts +2 -0
  335. package/lib/src/modules/access/access.module.js +92 -0
  336. package/lib/src/modules/access/controllers/ca.controller.d.ts +22 -0
  337. package/lib/src/modules/access/controllers/ca.controller.js +242 -0
  338. package/lib/src/modules/access/dto/api-token.dto.d.ts +11 -0
  339. package/lib/src/modules/access/dto/api-token.dto.js +74 -0
  340. package/lib/src/modules/access/dto/bearer-token.dto.d.ts +7 -0
  341. package/lib/src/modules/access/dto/bearer-token.dto.js +36 -0
  342. package/lib/src/modules/access/dto/ca-public-key.dto.d.ts +7 -0
  343. package/lib/src/modules/access/dto/ca-public-key.dto.js +52 -0
  344. package/lib/src/modules/access/dto/create-api-token.dto.d.ts +7 -0
  345. package/lib/src/modules/access/dto/create-api-token.dto.js +64 -0
  346. package/lib/src/modules/access/dto/create-bearer-token.dto.d.ts +9 -0
  347. package/lib/src/modules/access/dto/create-bearer-token.dto.js +58 -0
  348. package/lib/src/modules/access/dto/create-ssh-key.dto.d.ts +7 -0
  349. package/lib/src/modules/access/dto/create-ssh-key.dto.js +61 -0
  350. package/lib/src/modules/access/dto/refresh-token.dto.d.ts +7 -0
  351. package/lib/src/modules/access/dto/refresh-token.dto.js +46 -0
  352. package/lib/src/modules/access/dto/register-ca.dto.d.ts +16 -0
  353. package/lib/src/modules/access/dto/register-ca.dto.js +111 -0
  354. package/lib/src/modules/access/dto/ssh-key.dto.d.ts +20 -0
  355. package/lib/src/modules/access/dto/ssh-key.dto.js +124 -0
  356. package/lib/src/modules/access/dto/update-ssh-key.dto.d.ts +7 -0
  357. package/lib/src/modules/access/dto/update-ssh-key.dto.js +73 -0
  358. package/lib/src/modules/access/entities/api-token.entity.d.ts +30 -0
  359. package/lib/src/modules/access/entities/api-token.entity.js +87 -0
  360. package/lib/src/modules/access/entities/ca-keypair.entity.d.ts +13 -0
  361. package/lib/src/modules/access/entities/ca-keypair.entity.js +63 -0
  362. package/lib/src/modules/access/entities/credentials.entity.d.ts +18 -0
  363. package/lib/src/modules/access/entities/credentials.entity.js +87 -0
  364. package/lib/src/modules/access/entities/ssh-key.entity.d.ts +15 -0
  365. package/lib/src/modules/access/entities/ssh-key.entity.js +81 -0
  366. package/lib/src/modules/access/enums/credential-purpose.enum.d.ts +4 -0
  367. package/lib/src/modules/access/enums/credential-purpose.enum.js +8 -0
  368. package/lib/src/modules/access/interfaces/access.repository.d.ts +11 -0
  369. package/lib/src/modules/access/interfaces/access.repository.js +2 -0
  370. package/lib/src/modules/access/interfaces/ssh-key.interface.d.ts +26 -0
  371. package/lib/src/modules/access/interfaces/ssh-key.interface.js +2 -0
  372. package/lib/src/modules/access/mapper/api-token.mapper.d.ts +6 -0
  373. package/lib/src/modules/access/mapper/api-token.mapper.js +21 -0
  374. package/lib/src/modules/access/mapper/ssh-key.mapper.d.ts +6 -0
  375. package/lib/src/modules/access/mapper/ssh-key.mapper.js +25 -0
  376. package/lib/src/modules/access/providers/contabo-ssh-provider.service.d.ts +13 -0
  377. package/lib/src/modules/access/providers/contabo-ssh-provider.service.js +40 -0
  378. package/lib/src/modules/access/providers/hetzner-ssh-provider.service.d.ts +17 -0
  379. package/lib/src/modules/access/providers/hetzner-ssh-provider.service.js +95 -0
  380. package/lib/src/modules/access/providers/interfaces/ssh-provider.interface.d.ts +8 -0
  381. package/lib/src/modules/access/providers/interfaces/ssh-provider.interface.js +3 -0
  382. package/lib/src/modules/access/providers/ssh-provider.factory.d.ts +13 -0
  383. package/lib/src/modules/access/providers/ssh-provider.factory.js +44 -0
  384. package/lib/src/modules/access/repositories/api-token.repository.d.ts +24 -0
  385. package/lib/src/modules/access/repositories/api-token.repository.js +99 -0
  386. package/lib/src/modules/access/repositories/default-access.repository.d.ts +16 -0
  387. package/lib/src/modules/access/repositories/default-access.repository.js +121 -0
  388. package/lib/src/modules/access/repositories/provider-credentials.repository.d.ts +17 -0
  389. package/lib/src/modules/access/repositories/provider-credentials.repository.js +106 -0
  390. package/lib/src/modules/access/services/access.service.d.ts +180 -0
  391. package/lib/src/modules/access/services/access.service.js +732 -0
  392. package/lib/src/modules/access/services/bearerToken.service.d.ts +15 -0
  393. package/lib/src/modules/access/services/bearerToken.service.js +107 -0
  394. package/lib/src/modules/access/services/ca-manager.service.d.ts +48 -0
  395. package/lib/src/modules/access/services/ca-manager.service.js +293 -0
  396. package/lib/src/modules/access/services/certificate-signer.service.d.ts +36 -0
  397. package/lib/src/modules/access/services/certificate-signer.service.js +155 -0
  398. package/lib/src/modules/access/services/key-storage.service.d.ts +17 -0
  399. package/lib/src/modules/access/services/key-storage.service.js +133 -0
  400. package/lib/src/modules/access/services/ssh-key-generator.service.d.ts +6 -0
  401. package/lib/src/modules/access/services/ssh-key-generator.service.js +51 -0
  402. package/lib/src/modules/app-builds/entities/app-build.entity.d.ts +38 -0
  403. package/lib/src/modules/app-builds/entities/app-build.entity.js +168 -0
  404. package/lib/src/modules/app-builds/enums/app-build-status.enum.d.ts +10 -0
  405. package/lib/src/modules/app-builds/enums/app-build-status.enum.js +14 -0
  406. package/lib/src/modules/app-builds/enums/build-provider.enum.d.ts +6 -0
  407. package/lib/src/modules/app-builds/enums/build-provider.enum.js +10 -0
  408. package/lib/src/modules/app-builds/services/build-job.service.d.ts +178 -0
  409. package/lib/src/modules/app-builds/services/build-job.service.js +1057 -0
  410. package/lib/src/modules/applications/entities/app-resource.entity.d.ts +24 -0
  411. package/lib/src/modules/applications/entities/app-resource.entity.js +117 -0
  412. package/lib/src/modules/applications/entities/app-revision.entity.d.ts +29 -0
  413. package/lib/src/modules/applications/entities/app-revision.entity.js +133 -0
  414. package/lib/src/modules/applications/entities/application.entity.d.ts +121 -0
  415. package/lib/src/modules/applications/entities/application.entity.js +279 -0
  416. package/lib/src/modules/applications/enums/app-event-type.enum.d.ts +24 -0
  417. package/lib/src/modules/applications/enums/app-event-type.enum.js +28 -0
  418. package/lib/src/modules/applications/enums/application-category.enum.d.ts +4 -0
  419. package/lib/src/modules/applications/enums/application-category.enum.js +8 -0
  420. package/lib/src/modules/applications/enums/application-exposure.enum.d.ts +4 -0
  421. package/lib/src/modules/applications/enums/application-exposure.enum.js +8 -0
  422. package/lib/src/modules/applications/enums/application-kind.enum.d.ts +6 -0
  423. package/lib/src/modules/applications/enums/application-kind.enum.js +10 -0
  424. package/lib/src/modules/applications/enums/application-resource-kind.enum.d.ts +17 -0
  425. package/lib/src/modules/applications/enums/application-resource-kind.enum.js +21 -0
  426. package/lib/src/modules/applications/enums/application-resource-status.enum.d.ts +8 -0
  427. package/lib/src/modules/applications/enums/application-resource-status.enum.js +12 -0
  428. package/lib/src/modules/applications/enums/application-source-type.enum.d.ts +6 -0
  429. package/lib/src/modules/applications/enums/application-source-type.enum.js +10 -0
  430. package/lib/src/modules/applications/enums/application-status.enum.d.ts +20 -0
  431. package/lib/src/modules/applications/enums/application-status.enum.js +24 -0
  432. package/lib/src/modules/applications/interfaces/source-config.interface.d.ts +132 -0
  433. package/lib/src/modules/applications/interfaces/source-config.interface.js +2 -0
  434. package/lib/src/modules/auth/decorators/admin.decorator.d.ts +2 -0
  435. package/lib/src/modules/auth/decorators/admin.decorator.js +7 -0
  436. package/lib/src/modules/auth/entities/user.entity.d.ts +19 -0
  437. package/lib/src/modules/auth/entities/user.entity.js +78 -0
  438. package/lib/src/modules/auth/guards/admin.guard.d.ts +7 -0
  439. package/lib/src/modules/auth/guards/admin.guard.js +50 -0
  440. package/lib/src/modules/auth/interfaces/authenticated-user.interface.d.ts +12 -0
  441. package/lib/src/modules/auth/interfaces/authenticated-user.interface.js +2 -0
  442. package/lib/src/modules/common/cache/cache.service.d.ts +77 -0
  443. package/lib/src/modules/common/cache/cache.service.js +232 -0
  444. package/lib/src/modules/common/cache/cache.tokens.d.ts +1 -0
  445. package/lib/src/modules/common/cache/cache.tokens.js +4 -0
  446. package/lib/src/modules/common/cache/enums/cache-category.enum.d.ts +33 -0
  447. package/lib/src/modules/common/cache/enums/cache-category.enum.js +42 -0
  448. package/lib/src/modules/common/common.module.d.ts +2 -0
  449. package/lib/src/modules/common/common.module.js +20 -0
  450. package/lib/src/modules/common/dto/async-operation-response.dto.d.ts +19 -0
  451. package/lib/src/modules/common/dto/async-operation-response.dto.js +65 -0
  452. package/lib/src/modules/common/dto/index.d.ts +1 -0
  453. package/lib/src/modules/common/dto/index.js +17 -0
  454. package/lib/src/modules/common/services/label.service.d.ts +70 -0
  455. package/lib/src/modules/common/services/label.service.js +128 -0
  456. package/lib/src/modules/dns/entities/app-endpoint.entity.d.ts +57 -0
  457. package/lib/src/modules/dns/entities/app-endpoint.entity.js +205 -0
  458. package/lib/src/modules/dns/entities/cluster-dns-zone.entity.d.ts +21 -0
  459. package/lib/src/modules/dns/entities/cluster-dns-zone.entity.js +88 -0
  460. package/lib/src/modules/dns/entities/dns-zone.entity.d.ts +12 -0
  461. package/lib/src/modules/dns/entities/dns-zone.entity.js +53 -0
  462. package/lib/src/modules/dns/entities/san-certificate.entity.d.ts +29 -0
  463. package/lib/src/modules/dns/entities/san-certificate.entity.js +132 -0
  464. package/lib/src/modules/dns/entities/wildcard-certificate.entity.d.ts +26 -0
  465. package/lib/src/modules/dns/entities/wildcard-certificate.entity.js +111 -0
  466. package/lib/src/modules/dns/enums/cert-challenge.enum.d.ts +4 -0
  467. package/lib/src/modules/dns/enums/cert-challenge.enum.js +8 -0
  468. package/lib/src/modules/dns/enums/endpoint-type.enum.d.ts +4 -0
  469. package/lib/src/modules/dns/enums/endpoint-type.enum.js +8 -0
  470. package/lib/src/modules/dns/enums/hostname-mode.enum.d.ts +4 -0
  471. package/lib/src/modules/dns/enums/hostname-mode.enum.js +8 -0
  472. package/lib/src/modules/dns/services/cluster-dns-cleanup.service.d.ts +12 -0
  473. package/lib/src/modules/dns/services/cluster-dns-cleanup.service.js +79 -0
  474. package/lib/src/modules/dns/utils/nip-hostname.util.d.ts +12 -0
  475. package/lib/src/modules/dns/utils/nip-hostname.util.js +27 -0
  476. package/lib/src/modules/dns/utils/nip-token.util.d.ts +2 -0
  477. package/lib/src/modules/dns/utils/nip-token.util.js +94 -0
  478. package/lib/src/modules/frameworks/framework-core/enums/build-stage.enum.d.ts +21 -0
  479. package/lib/src/modules/frameworks/framework-core/enums/build-stage.enum.js +29 -0
  480. package/lib/src/modules/frameworks/framework-core/enums/deploy-strategy.enum.d.ts +22 -0
  481. package/lib/src/modules/frameworks/framework-core/enums/deploy-strategy.enum.js +26 -0
  482. package/lib/src/modules/frameworks/framework-core/enums/framework-type.enum.d.ts +32 -0
  483. package/lib/src/modules/frameworks/framework-core/enums/framework-type.enum.js +47 -0
  484. package/lib/src/modules/grafana/services/grafana-config.service.d.ts +43 -0
  485. package/lib/src/modules/grafana/services/grafana-config.service.js +177 -0
  486. package/lib/src/modules/grafana/services/grafana-datasource.service.d.ts +70 -0
  487. package/lib/src/modules/grafana/services/grafana-datasource.service.js +333 -0
  488. package/lib/src/modules/infrastructure/clusters/clusters.service.d.ts +126 -0
  489. package/lib/src/modules/infrastructure/clusters/clusters.service.js +265 -0
  490. package/lib/src/modules/infrastructure/clusters/constants/storage-conventions.d.ts +60 -0
  491. package/lib/src/modules/infrastructure/clusters/constants/storage-conventions.js +64 -0
  492. package/lib/src/modules/infrastructure/clusters/dto/build-resources.dto.d.ts +19 -0
  493. package/lib/src/modules/infrastructure/clusters/dto/build-resources.dto.js +69 -0
  494. package/lib/src/modules/infrastructure/clusters/dto/cluster-capacity-plan.dto.d.ts +36 -0
  495. package/lib/src/modules/infrastructure/clusters/dto/cluster-capacity-plan.dto.js +149 -0
  496. package/lib/src/modules/infrastructure/clusters/dto/cluster-power-management.dto.d.ts +51 -0
  497. package/lib/src/modules/infrastructure/clusters/dto/cluster-power-management.dto.js +222 -0
  498. package/lib/src/modules/infrastructure/clusters/dto/cluster-response.dto.d.ts +42 -0
  499. package/lib/src/modules/infrastructure/clusters/dto/cluster-response.dto.js +238 -0
  500. package/lib/src/modules/infrastructure/clusters/dto/cluster-storage.dto.d.ts +35 -0
  501. package/lib/src/modules/infrastructure/clusters/dto/cluster-storage.dto.js +122 -0
  502. package/lib/src/modules/infrastructure/clusters/dto/create-cluster.dto.d.ts +43 -0
  503. package/lib/src/modules/infrastructure/clusters/dto/create-cluster.dto.js +334 -0
  504. package/lib/src/modules/infrastructure/clusters/dto/register-cluster.dto.d.ts +30 -0
  505. package/lib/src/modules/infrastructure/clusters/dto/register-cluster.dto.js +190 -0
  506. package/lib/src/modules/infrastructure/clusters/dto/resource-availability.dto.d.ts +15 -0
  507. package/lib/src/modules/infrastructure/clusters/dto/resource-availability.dto.js +91 -0
  508. package/lib/src/modules/infrastructure/clusters/entities/cluster-node.entity.d.ts +28 -0
  509. package/lib/src/modules/infrastructure/clusters/entities/cluster-node.entity.js +104 -0
  510. package/lib/src/modules/infrastructure/clusters/entities/cluster.entity.d.ts +64 -0
  511. package/lib/src/modules/infrastructure/clusters/entities/cluster.entity.js +199 -0
  512. package/lib/src/modules/infrastructure/clusters/entities/node-billable-interval.entity.d.ts +17 -0
  513. package/lib/src/modules/infrastructure/clusters/entities/node-billable-interval.entity.js +86 -0
  514. package/lib/src/modules/infrastructure/clusters/entities/volume-billable-interval.entity.d.ts +18 -0
  515. package/lib/src/modules/infrastructure/clusters/entities/volume-billable-interval.entity.js +79 -0
  516. package/lib/src/modules/infrastructure/clusters/services/billing-intervals.service.d.ts +48 -0
  517. package/lib/src/modules/infrastructure/clusters/services/billing-intervals.service.js +159 -0
  518. package/lib/src/modules/infrastructure/clusters/services/cluster-capacity.service.d.ts +23 -0
  519. package/lib/src/modules/infrastructure/clusters/services/cluster-capacity.service.js +198 -0
  520. package/lib/src/modules/infrastructure/clusters/services/cluster-creation.service.d.ts +25 -0
  521. package/lib/src/modules/infrastructure/clusters/services/cluster-creation.service.js +192 -0
  522. package/lib/src/modules/infrastructure/clusters/services/cluster-deletion.service.d.ts +36 -0
  523. package/lib/src/modules/infrastructure/clusters/services/cluster-deletion.service.js +159 -0
  524. package/lib/src/modules/infrastructure/clusters/services/cluster-firewall-integration.service.d.ts +25 -0
  525. package/lib/src/modules/infrastructure/clusters/services/cluster-firewall-integration.service.js +90 -0
  526. package/lib/src/modules/infrastructure/clusters/services/cluster-mapper.service.d.ts +15 -0
  527. package/lib/src/modules/infrastructure/clusters/services/cluster-mapper.service.js +63 -0
  528. package/lib/src/modules/infrastructure/clusters/services/cluster-node-scaling.service.d.ts +78 -0
  529. package/lib/src/modules/infrastructure/clusters/services/cluster-node-scaling.service.js +644 -0
  530. package/lib/src/modules/infrastructure/clusters/services/cluster-operations.service.d.ts +37 -0
  531. package/lib/src/modules/infrastructure/clusters/services/cluster-operations.service.js +244 -0
  532. package/lib/src/modules/infrastructure/clusters/services/cluster-power-management.service.d.ts +68 -0
  533. package/lib/src/modules/infrastructure/clusters/services/cluster-power-management.service.js +716 -0
  534. package/lib/src/modules/infrastructure/clusters/services/cluster-storage.service.d.ts +15 -0
  535. package/lib/src/modules/infrastructure/clusters/services/cluster-storage.service.js +179 -0
  536. package/lib/src/modules/infrastructure/clusters/services/cluster-validation.service.d.ts +29 -0
  537. package/lib/src/modules/infrastructure/clusters/services/cluster-validation.service.js +100 -0
  538. package/lib/src/modules/infrastructure/firewalls/dto/cluster-firewall.dto.d.ts +62 -0
  539. package/lib/src/modules/infrastructure/firewalls/dto/cluster-firewall.dto.js +252 -0
  540. package/lib/src/modules/infrastructure/firewalls/entities/cluster-firewall.entity.d.ts +20 -0
  541. package/lib/src/modules/infrastructure/firewalls/entities/cluster-firewall.entity.js +83 -0
  542. package/lib/src/modules/infrastructure/firewalls/services/firewall-desired-state.service.d.ts +73 -0
  543. package/lib/src/modules/infrastructure/firewalls/services/firewall-desired-state.service.js +329 -0
  544. package/lib/src/modules/infrastructure/firewalls/services/firewall-reconciliation.service.d.ts +43 -0
  545. package/lib/src/modules/infrastructure/firewalls/services/firewall-reconciliation.service.js +212 -0
  546. package/lib/src/modules/infrastructure/firewalls/templates/firewall-rules.template.d.ts +54 -0
  547. package/lib/src/modules/infrastructure/firewalls/templates/firewall-rules.template.js +167 -0
  548. package/lib/src/modules/infrastructure/operations/helpers/operation-steps.helper.d.ts +34 -0
  549. package/lib/src/modules/infrastructure/operations/helpers/operation-steps.helper.js +401 -0
  550. package/lib/src/modules/infrastructure/servers/dto/create-server.dto.d.ts +40 -0
  551. package/lib/src/modules/infrastructure/servers/dto/create-server.dto.js +157 -0
  552. package/lib/src/modules/infrastructure/servers/dto/delete-server.dto.d.ts +17 -0
  553. package/lib/src/modules/infrastructure/servers/dto/delete-server.dto.js +85 -0
  554. package/lib/src/modules/infrastructure/servers/dto/server-response.dto.d.ts +29 -0
  555. package/lib/src/modules/infrastructure/servers/dto/server-response.dto.js +147 -0
  556. package/lib/src/modules/infrastructure/servers/entities/infrastructure-operations.entity.d.ts +266 -0
  557. package/lib/src/modules/infrastructure/servers/entities/infrastructure-operations.entity.js +348 -0
  558. package/lib/src/modules/infrastructure/shared/enums/reconciliation-status.enum.d.ts +7 -0
  559. package/lib/src/modules/infrastructure/shared/enums/reconciliation-status.enum.js +11 -0
  560. package/lib/src/modules/infrastructure/shared/services/kubernetes.service.d.ts +304 -0
  561. package/lib/src/modules/infrastructure/shared/services/kubernetes.service.js +1164 -0
  562. package/lib/src/modules/infrastructure/shared/services/label.service.d.ts +97 -0
  563. package/lib/src/modules/infrastructure/shared/services/label.service.js +189 -0
  564. package/lib/src/modules/infrastructure/shared/shared-infrastructure.module.d.ts +2 -0
  565. package/lib/src/modules/infrastructure/shared/shared-infrastructure.module.js +24 -0
  566. package/lib/src/modules/infrastructure/vnets/entities/vnet-route.entity.d.ts +10 -0
  567. package/lib/src/modules/infrastructure/vnets/entities/vnet-route.entity.js +51 -0
  568. package/lib/src/modules/infrastructure/vnets/entities/vnet-subnet.entity.d.ts +20 -0
  569. package/lib/src/modules/infrastructure/vnets/entities/vnet-subnet.entity.js +77 -0
  570. package/lib/src/modules/infrastructure/vnets/entities/vnet.entity.d.ts +28 -0
  571. package/lib/src/modules/infrastructure/vnets/entities/vnet.entity.js +88 -0
  572. package/lib/src/modules/instances/entities/instance-status.enum.d.ts +12 -0
  573. package/lib/src/modules/instances/entities/instance-status.enum.js +16 -0
  574. package/lib/src/modules/instances/entities/instance-type.enum.d.ts +6 -0
  575. package/lib/src/modules/instances/entities/instance-type.enum.js +10 -0
  576. package/lib/src/modules/instances/entities/instance.entity.d.ts +41 -0
  577. package/lib/src/modules/instances/entities/instance.entity.js +126 -0
  578. package/lib/src/modules/management/dto/configure-provider.dto.d.ts +8 -0
  579. package/lib/src/modules/management/dto/configure-provider.dto.js +51 -0
  580. package/lib/src/modules/management/dto/credentials.dto.d.ts +15 -0
  581. package/lib/src/modules/management/dto/credentials.dto.js +114 -0
  582. package/lib/src/modules/management/dto/health-status.dto.d.ts +12 -0
  583. package/lib/src/modules/management/dto/health-status.dto.js +40 -0
  584. package/lib/src/modules/management/dto/node-size-option.dto.d.ts +37 -0
  585. package/lib/src/modules/management/dto/node-size-option.dto.js +178 -0
  586. package/lib/src/modules/management/dto/pricing-query.dto.d.ts +5 -0
  587. package/lib/src/modules/management/dto/pricing-query.dto.js +36 -0
  588. package/lib/src/modules/management/dto/pricing-response.dto.d.ts +21 -0
  589. package/lib/src/modules/management/dto/pricing-response.dto.js +80 -0
  590. package/lib/src/modules/management/dto/provider-configuration.dto.d.ts +23 -0
  591. package/lib/src/modules/management/dto/provider-configuration.dto.js +72 -0
  592. package/lib/src/modules/management/dto/provider-filters.dto.d.ts +7 -0
  593. package/lib/src/modules/management/dto/provider-filters.dto.js +45 -0
  594. package/lib/src/modules/management/dto/validation-result.dto.d.ts +16 -0
  595. package/lib/src/modules/management/dto/validation-result.dto.js +35 -0
  596. package/lib/src/modules/management/entities/credentials.entity.d.ts +21 -0
  597. package/lib/src/modules/management/entities/credentials.entity.js +10 -0
  598. package/lib/src/modules/management/entities/provider-capabilities.entity.d.ts +85 -0
  599. package/lib/src/modules/management/entities/provider-capabilities.entity.js +2 -0
  600. package/lib/src/modules/management/entities/provider-configuration.entity.d.ts +14 -0
  601. package/lib/src/modules/management/entities/provider-configuration.entity.js +65 -0
  602. package/lib/src/modules/management/entities/provider-definition.entity.d.ts +19 -0
  603. package/lib/src/modules/management/entities/provider-definition.entity.js +2 -0
  604. package/lib/src/modules/management/entities/provider-region.entity.d.ts +11 -0
  605. package/lib/src/modules/management/entities/provider-region.entity.js +2 -0
  606. package/lib/src/modules/management/entities/provider-status.enum.d.ts +8 -0
  607. package/lib/src/modules/management/entities/provider-status.enum.js +12 -0
  608. package/lib/src/modules/management/interfaces/provider-configuration.repository.interface.d.ts +17 -0
  609. package/lib/src/modules/management/interfaces/provider-configuration.repository.interface.js +2 -0
  610. package/lib/src/modules/management/repositories/provider-configuration.repository.d.ts +21 -0
  611. package/lib/src/modules/management/repositories/provider-configuration.repository.js +89 -0
  612. package/lib/src/modules/management/services/configuration-mode.service.d.ts +20 -0
  613. package/lib/src/modules/management/services/configuration-mode.service.js +54 -0
  614. package/lib/src/modules/management/services/management.service.d.ts +72 -0
  615. package/lib/src/modules/management/services/management.service.js +546 -0
  616. package/lib/src/modules/management/services/provider-definitions.service.d.ts +26 -0
  617. package/lib/src/modules/management/services/provider-definitions.service.js +133 -0
  618. package/lib/src/modules/providers/controllers/provider-firewalls.controller.d.ts +28 -0
  619. package/lib/src/modules/providers/controllers/provider-firewalls.controller.js +277 -0
  620. package/lib/src/modules/providers/core/factories/capabilities-provider.factory.d.ts +10 -0
  621. package/lib/src/modules/providers/core/factories/capabilities-provider.factory.js +39 -0
  622. package/lib/src/modules/providers/core/factories/certificate-provider.factory.d.ts +11 -0
  623. package/lib/src/modules/providers/core/factories/certificate-provider.factory.js +58 -0
  624. package/lib/src/modules/providers/core/factories/dns-provider.factory.d.ts +12 -0
  625. package/lib/src/modules/providers/core/factories/dns-provider.factory.js +65 -0
  626. package/lib/src/modules/providers/core/factories/firewall-provider.factory.d.ts +12 -0
  627. package/lib/src/modules/providers/core/factories/firewall-provider.factory.js +61 -0
  628. package/lib/src/modules/providers/core/factories/provider.factory.d.ts +9 -0
  629. package/lib/src/modules/providers/core/factories/provider.factory.js +47 -0
  630. package/lib/src/modules/providers/core/factories/vm-backup-provider.factory.d.ts +12 -0
  631. package/lib/src/modules/providers/core/factories/vm-backup-provider.factory.js +56 -0
  632. package/lib/src/modules/providers/core/factories/volume-export.factory.d.ts +12 -0
  633. package/lib/src/modules/providers/core/factories/volume-export.factory.js +56 -0
  634. package/lib/src/modules/providers/core/interfaces/certificate-provider.interface.d.ts +1 -0
  635. package/lib/src/modules/providers/core/interfaces/certificate-provider.interface.js +17 -0
  636. package/lib/src/modules/providers/core/interfaces/cloud-provider.interface.d.ts +1 -0
  637. package/lib/src/modules/providers/core/interfaces/cloud-provider.interface.js +17 -0
  638. package/lib/src/modules/providers/core/interfaces/dns-provider.interface.d.ts +1 -0
  639. package/lib/src/modules/providers/core/interfaces/dns-provider.interface.js +17 -0
  640. package/lib/src/modules/providers/core/interfaces/firewall-provider.interface.d.ts +1 -0
  641. package/lib/src/modules/providers/core/interfaces/firewall-provider.interface.js +17 -0
  642. package/lib/src/modules/providers/core/interfaces/provider-bootstrap-seeder.interface.d.ts +54 -0
  643. package/lib/src/modules/providers/core/interfaces/provider-bootstrap-seeder.interface.js +2 -0
  644. package/lib/src/modules/providers/core/tokens.d.ts +59 -0
  645. package/lib/src/modules/providers/core/tokens.js +19 -0
  646. package/lib/src/modules/providers/data/region-coordinates.d.ts +6 -0
  647. package/lib/src/modules/providers/data/region-coordinates.js +25 -0
  648. package/lib/src/modules/providers/dto/firewall.dto.d.ts +30 -0
  649. package/lib/src/modules/providers/dto/firewall.dto.js +105 -0
  650. package/lib/src/modules/providers/dto/node-size.dto.d.ts +46 -0
  651. package/lib/src/modules/providers/dto/node-size.dto.js +22 -0
  652. package/lib/src/modules/providers/dto/pricing.dto.d.ts +24 -0
  653. package/lib/src/modules/providers/dto/pricing.dto.js +19 -0
  654. package/lib/src/modules/providers/dto/provider-firewall-response.dto.d.ts +28 -0
  655. package/lib/src/modules/providers/dto/provider-firewall-response.dto.js +134 -0
  656. package/lib/src/modules/providers/enums/certificate-provider.enum.d.ts +4 -0
  657. package/lib/src/modules/providers/enums/certificate-provider.enum.js +8 -0
  658. package/lib/src/modules/providers/enums/cloud-provider.enum.d.ts +5 -0
  659. package/lib/src/modules/providers/enums/cloud-provider.enum.js +9 -0
  660. package/lib/src/modules/providers/enums/dns-provider.enum.d.ts +5 -0
  661. package/lib/src/modules/providers/enums/dns-provider.enum.js +9 -0
  662. package/lib/src/modules/providers/implementations/contabo/contabo-capabilities.service.d.ts +19 -0
  663. package/lib/src/modules/providers/implementations/contabo/contabo-capabilities.service.js +254 -0
  664. package/lib/src/modules/providers/implementations/contabo/contabo-provider.module.d.ts +10 -0
  665. package/lib/src/modules/providers/implementations/contabo/contabo-provider.module.js +72 -0
  666. package/lib/src/modules/providers/implementations/contabo/generated/api.d.ts +13374 -0
  667. package/lib/src/modules/providers/implementations/contabo/generated/api.js +11341 -0
  668. package/lib/src/modules/providers/implementations/contabo/generated/base.d.ts +66 -0
  669. package/lib/src/modules/providers/implementations/contabo/generated/base.js +66 -0
  670. package/lib/src/modules/providers/implementations/contabo/generated/common.d.ts +65 -0
  671. package/lib/src/modules/providers/implementations/contabo/generated/common.js +152 -0
  672. package/lib/src/modules/providers/implementations/contabo/generated/configuration.d.ts +91 -0
  673. package/lib/src/modules/providers/implementations/contabo/generated/configuration.js +50 -0
  674. package/lib/src/modules/providers/implementations/contabo/generated/index.d.ts +13 -0
  675. package/lib/src/modules/providers/implementations/contabo/generated/index.js +31 -0
  676. package/lib/src/modules/providers/implementations/hetzner/generated/api.d.ts +18419 -0
  677. package/lib/src/modules/providers/implementations/hetzner/generated/api.js +19133 -0
  678. package/lib/src/modules/providers/implementations/hetzner/generated/base.d.ts +66 -0
  679. package/lib/src/modules/providers/implementations/hetzner/generated/base.js +66 -0
  680. package/lib/src/modules/providers/implementations/hetzner/generated/common.d.ts +65 -0
  681. package/lib/src/modules/providers/implementations/hetzner/generated/common.js +152 -0
  682. package/lib/src/modules/providers/implementations/hetzner/generated/configuration.d.ts +91 -0
  683. package/lib/src/modules/providers/implementations/hetzner/generated/configuration.js +50 -0
  684. package/lib/src/modules/providers/implementations/hetzner/generated/index.d.ts +13 -0
  685. package/lib/src/modules/providers/implementations/hetzner/generated/index.js +31 -0
  686. package/lib/src/modules/providers/implementations/hetzner/hetzner-bootstrap-seeder.service.d.ts +19 -0
  687. package/lib/src/modules/providers/implementations/hetzner/hetzner-bootstrap-seeder.service.js +68 -0
  688. package/lib/src/modules/providers/implementations/hetzner/hetzner-capabilities.service.d.ts +29 -0
  689. package/lib/src/modules/providers/implementations/hetzner/hetzner-capabilities.service.js +392 -0
  690. package/lib/src/modules/providers/implementations/hetzner/hetzner-provider.module.d.ts +2 -0
  691. package/lib/src/modules/providers/implementations/hetzner/hetzner-provider.module.js +81 -0
  692. package/lib/src/modules/providers/implementations/hetzner/hetzner-volume-operations.service.d.ts +31 -0
  693. package/lib/src/modules/providers/implementations/hetzner/hetzner-volume-operations.service.js +312 -0
  694. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage-connection.controller.d.ts +18 -0
  695. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage-connection.controller.js +67 -0
  696. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage-connection.service.d.ts +24 -0
  697. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage-connection.service.js +107 -0
  698. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage.backend.d.ts +7 -0
  699. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage.backend.js +35 -0
  700. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage.module.d.ts +8 -0
  701. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage.module.js +60 -0
  702. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage.provisioner.d.ts +22 -0
  703. package/lib/src/modules/providers/implementations/hetzner/object-storage/hetzner-object-storage.provisioner.js +100 -0
  704. package/lib/src/modules/providers/implementations/hetzner/vm-backup/hetzner-vm-backup.service.d.ts +20 -0
  705. package/lib/src/modules/providers/implementations/hetzner/vm-backup/hetzner-vm-backup.service.js +118 -0
  706. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/api.d.ts +4227 -0
  707. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/api.js +3362 -0
  708. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/base.d.ts +66 -0
  709. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/base.js +66 -0
  710. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/common.d.ts +65 -0
  711. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/common.js +152 -0
  712. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/configuration.d.ts +91 -0
  713. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/configuration.js +50 -0
  714. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/index.d.ts +13 -0
  715. package/lib/src/modules/providers/implementations/scaleway/generated/baremetal/index.js +31 -0
  716. package/lib/src/modules/providers/implementations/scaleway/generated/domain/api.d.ts +2486 -0
  717. package/lib/src/modules/providers/implementations/scaleway/generated/domain/api.js +2424 -0
  718. package/lib/src/modules/providers/implementations/scaleway/generated/domain/base.d.ts +66 -0
  719. package/lib/src/modules/providers/implementations/scaleway/generated/domain/base.js +66 -0
  720. package/lib/src/modules/providers/implementations/scaleway/generated/domain/common.d.ts +65 -0
  721. package/lib/src/modules/providers/implementations/scaleway/generated/domain/common.js +152 -0
  722. package/lib/src/modules/providers/implementations/scaleway/generated/domain/configuration.d.ts +91 -0
  723. package/lib/src/modules/providers/implementations/scaleway/generated/domain/configuration.js +50 -0
  724. package/lib/src/modules/providers/implementations/scaleway/generated/domain/index.d.ts +13 -0
  725. package/lib/src/modules/providers/implementations/scaleway/generated/domain/index.js +31 -0
  726. package/lib/src/modules/providers/implementations/scaleway/generated/iam/api.d.ts +6425 -0
  727. package/lib/src/modules/providers/implementations/scaleway/generated/iam/api.js +6925 -0
  728. package/lib/src/modules/providers/implementations/scaleway/generated/iam/base.d.ts +66 -0
  729. package/lib/src/modules/providers/implementations/scaleway/generated/iam/base.js +66 -0
  730. package/lib/src/modules/providers/implementations/scaleway/generated/iam/common.d.ts +65 -0
  731. package/lib/src/modules/providers/implementations/scaleway/generated/iam/common.js +152 -0
  732. package/lib/src/modules/providers/implementations/scaleway/generated/iam/configuration.d.ts +91 -0
  733. package/lib/src/modules/providers/implementations/scaleway/generated/iam/configuration.js +50 -0
  734. package/lib/src/modules/providers/implementations/scaleway/generated/iam/index.d.ts +13 -0
  735. package/lib/src/modules/providers/implementations/scaleway/generated/iam/index.js +31 -0
  736. package/lib/src/modules/providers/implementations/scaleway/generated/instances/api.d.ts +11187 -0
  737. package/lib/src/modules/providers/implementations/scaleway/generated/instances/api.js +9264 -0
  738. package/lib/src/modules/providers/implementations/scaleway/generated/instances/base.d.ts +66 -0
  739. package/lib/src/modules/providers/implementations/scaleway/generated/instances/base.js +66 -0
  740. package/lib/src/modules/providers/implementations/scaleway/generated/instances/common.d.ts +65 -0
  741. package/lib/src/modules/providers/implementations/scaleway/generated/instances/common.js +152 -0
  742. package/lib/src/modules/providers/implementations/scaleway/generated/instances/configuration.d.ts +91 -0
  743. package/lib/src/modules/providers/implementations/scaleway/generated/instances/configuration.js +50 -0
  744. package/lib/src/modules/providers/implementations/scaleway/generated/instances/index.d.ts +13 -0
  745. package/lib/src/modules/providers/implementations/scaleway/generated/instances/index.js +31 -0
  746. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/api.d.ts +492 -0
  747. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/api.js +531 -0
  748. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/base.d.ts +66 -0
  749. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/base.js +66 -0
  750. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/common.d.ts +65 -0
  751. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/common.js +152 -0
  752. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/configuration.d.ts +91 -0
  753. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/configuration.js +50 -0
  754. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/index.d.ts +13 -0
  755. package/lib/src/modules/providers/implementations/scaleway/generated/private-network/index.js +31 -0
  756. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/api.d.ts +2305 -0
  757. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/api.js +2443 -0
  758. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/base.d.ts +66 -0
  759. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/base.js +66 -0
  760. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/common.d.ts +65 -0
  761. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/common.js +152 -0
  762. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/configuration.d.ts +91 -0
  763. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/configuration.js +50 -0
  764. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/index.d.ts +13 -0
  765. package/lib/src/modules/providers/implementations/scaleway/generated/vpc/index.js +31 -0
  766. package/lib/src/modules/providers/implementations/scaleway/object-storage/scaleway-object-storage.backend.d.ts +8 -0
  767. package/lib/src/modules/providers/implementations/scaleway/object-storage/scaleway-object-storage.backend.js +49 -0
  768. package/lib/src/modules/providers/implementations/scaleway/object-storage/scaleway-object-storage.module.d.ts +9 -0
  769. package/lib/src/modules/providers/implementations/scaleway/object-storage/scaleway-object-storage.module.js +56 -0
  770. package/lib/src/modules/providers/implementations/scaleway/object-storage/scaleway-object-storage.provisioner.d.ts +27 -0
  771. package/lib/src/modules/providers/implementations/scaleway/object-storage/scaleway-object-storage.provisioner.js +120 -0
  772. package/lib/src/modules/providers/implementations/scaleway/scaleway-baremetal.adapter.d.ts +22 -0
  773. package/lib/src/modules/providers/implementations/scaleway/scaleway-baremetal.adapter.js +140 -0
  774. package/lib/src/modules/providers/implementations/scaleway/scaleway-bootstrap-seeder.service.d.ts +12 -0
  775. package/lib/src/modules/providers/implementations/scaleway/scaleway-bootstrap-seeder.service.js +65 -0
  776. package/lib/src/modules/providers/implementations/scaleway/scaleway-capabilities.service.d.ts +23 -0
  777. package/lib/src/modules/providers/implementations/scaleway/scaleway-capabilities.service.js +319 -0
  778. package/lib/src/modules/providers/implementations/scaleway/scaleway-dns.service.d.ts +24 -0
  779. package/lib/src/modules/providers/implementations/scaleway/scaleway-dns.service.js +189 -0
  780. package/lib/src/modules/providers/implementations/scaleway/scaleway-firewall.service.d.ts +43 -0
  781. package/lib/src/modules/providers/implementations/scaleway/scaleway-firewall.service.js +455 -0
  782. package/lib/src/modules/providers/implementations/scaleway/scaleway-iam.adapter.d.ts +32 -0
  783. package/lib/src/modules/providers/implementations/scaleway/scaleway-iam.adapter.js +108 -0
  784. package/lib/src/modules/providers/implementations/scaleway/scaleway-instances.adapter.d.ts +66 -0
  785. package/lib/src/modules/providers/implementations/scaleway/scaleway-instances.adapter.js +289 -0
  786. package/lib/src/modules/providers/implementations/scaleway/scaleway-provider.module.d.ts +17 -0
  787. package/lib/src/modules/providers/implementations/scaleway/scaleway-provider.module.js +122 -0
  788. package/lib/src/modules/providers/implementations/scaleway/scaleway-provider.service.d.ts +100 -0
  789. package/lib/src/modules/providers/implementations/scaleway/scaleway-provider.service.js +1395 -0
  790. package/lib/src/modules/providers/implementations/scaleway/scaleway-volume-operations.service.d.ts +24 -0
  791. package/lib/src/modules/providers/implementations/scaleway/scaleway-volume-operations.service.js +199 -0
  792. package/lib/src/modules/providers/implementations/scaleway/scaleway-vpc.adapter.d.ts +30 -0
  793. package/lib/src/modules/providers/implementations/scaleway/scaleway-vpc.adapter.js +180 -0
  794. package/lib/src/modules/providers/index.d.ts +17 -0
  795. package/lib/src/modules/providers/index.js +39 -0
  796. package/lib/src/modules/providers/interfaces/certificate-provider.interface.d.ts +38 -0
  797. package/lib/src/modules/providers/interfaces/certificate-provider.interface.js +11 -0
  798. package/lib/src/modules/providers/interfaces/cloud-provider.interface.d.ts +215 -0
  799. package/lib/src/modules/providers/interfaces/cloud-provider.interface.js +2 -0
  800. package/lib/src/modules/providers/interfaces/credential-provider.interface.d.ts +23 -0
  801. package/lib/src/modules/providers/interfaces/credential-provider.interface.js +2 -0
  802. package/lib/src/modules/providers/interfaces/dns-provider.interface.d.ts +55 -0
  803. package/lib/src/modules/providers/interfaces/dns-provider.interface.js +12 -0
  804. package/lib/src/modules/providers/interfaces/firewall-provider.interface.d.ts +47 -0
  805. package/lib/src/modules/providers/interfaces/firewall-provider.interface.js +2 -0
  806. package/lib/src/modules/providers/interfaces/network-provider.interface.d.ts +124 -0
  807. package/lib/src/modules/providers/interfaces/network-provider.interface.js +2 -0
  808. package/lib/src/modules/providers/interfaces/provider-capabilities.interface.d.ts +87 -0
  809. package/lib/src/modules/providers/interfaces/provider-capabilities.interface.js +2 -0
  810. package/lib/src/modules/providers/interfaces/vm-backup-provider.interface.d.ts +39 -0
  811. package/lib/src/modules/providers/interfaces/vm-backup-provider.interface.js +8 -0
  812. package/lib/src/modules/providers/interfaces/volume-export.interface.d.ts +162 -0
  813. package/lib/src/modules/providers/interfaces/volume-export.interface.js +21 -0
  814. package/lib/src/modules/providers/interfaces/volume-operations.interface.d.ts +149 -0
  815. package/lib/src/modules/providers/interfaces/volume-operations.interface.js +17 -0
  816. package/lib/src/modules/providers/mappers/node-size.mapper.d.ts +20 -0
  817. package/lib/src/modules/providers/mappers/node-size.mapper.js +75 -0
  818. package/lib/src/modules/providers/mappers/pricing.mapper.d.ts +14 -0
  819. package/lib/src/modules/providers/mappers/pricing.mapper.js +60 -0
  820. package/lib/src/modules/providers/provider-core.module.d.ts +13 -0
  821. package/lib/src/modules/providers/provider-core.module.js +59 -0
  822. package/lib/src/modules/providers/providers.module.d.ts +2 -0
  823. package/lib/src/modules/providers/providers.module.js +188 -0
  824. package/lib/src/modules/providers/services/acme-certificate.service.d.ts +38 -0
  825. package/lib/src/modules/providers/services/acme-certificate.service.js +144 -0
  826. package/lib/src/modules/providers/services/contabo-firewall.service.d.ts +11 -0
  827. package/lib/src/modules/providers/services/contabo-firewall.service.js +40 -0
  828. package/lib/src/modules/providers/services/contabo-provider.service.d.ts +48 -0
  829. package/lib/src/modules/providers/services/contabo-provider.service.js +194 -0
  830. package/lib/src/modules/providers/services/credential-provider.service.d.ts +17 -0
  831. package/lib/src/modules/providers/services/credential-provider.service.js +78 -0
  832. package/lib/src/modules/providers/services/dns-provider.factory.d.ts +5 -0
  833. package/lib/src/modules/providers/services/dns-provider.factory.js +9 -0
  834. package/lib/src/modules/providers/services/firewall-provider.factory.d.ts +5 -0
  835. package/lib/src/modules/providers/services/firewall-provider.factory.js +9 -0
  836. package/lib/src/modules/providers/services/hetzner-dns.service.d.ts +71 -0
  837. package/lib/src/modules/providers/services/hetzner-dns.service.js +565 -0
  838. package/lib/src/modules/providers/services/hetzner-firewall.service.d.ts +48 -0
  839. package/lib/src/modules/providers/services/hetzner-firewall.service.js +472 -0
  840. package/lib/src/modules/providers/services/hetzner-network.service.d.ts +84 -0
  841. package/lib/src/modules/providers/services/hetzner-network.service.js +408 -0
  842. package/lib/src/modules/providers/services/hetzner-provider.service.d.ts +213 -0
  843. package/lib/src/modules/providers/services/hetzner-provider.service.js +1159 -0
  844. package/lib/src/modules/providers/services/provider.factory.d.ts +5 -0
  845. package/lib/src/modules/providers/services/provider.factory.js +9 -0
  846. package/lib/src/modules/providers/services/volume-export.service.d.ts +50 -0
  847. package/lib/src/modules/providers/services/volume-export.service.js +650 -0
  848. package/lib/src/modules/shared/encryption/encryption.module.d.ts +2 -0
  849. package/lib/src/modules/shared/encryption/encryption.module.js +22 -0
  850. package/lib/src/modules/shared/encryption/services/encryption.service.d.ts +47 -0
  851. package/lib/src/modules/shared/encryption/services/encryption.service.js +199 -0
  852. package/lib/src/modules/storage/enums/storage-backend-provider.enum.d.ts +19 -0
  853. package/lib/src/modules/storage/enums/storage-backend-provider.enum.js +23 -0
  854. package/lib/src/modules/storage/factories/object-storage-provisioner.factory.d.ts +11 -0
  855. package/lib/src/modules/storage/factories/object-storage-provisioner.factory.js +48 -0
  856. package/lib/src/modules/storage/factories/storage-backend.factory.d.ts +12 -0
  857. package/lib/src/modules/storage/factories/storage-backend.factory.js +51 -0
  858. package/lib/src/modules/storage/implementations/generic-s3.backend.d.ts +23 -0
  859. package/lib/src/modules/storage/implementations/generic-s3.backend.js +172 -0
  860. package/lib/src/modules/storage/interfaces/backup-storage-backend.interface.d.ts +48 -0
  861. package/lib/src/modules/storage/interfaces/backup-storage-backend.interface.js +2 -0
  862. package/lib/src/modules/storage/interfaces/object-storage-provisioner.interface.d.ts +55 -0
  863. package/lib/src/modules/storage/interfaces/object-storage-provisioner.interface.js +9 -0
  864. package/lib/src/modules/storage/storage.module.d.ts +2 -0
  865. package/lib/src/modules/storage/storage.module.js +21 -0
  866. package/lib/src/modules/storage/tokens/object-storage-provisioner-registry.token.d.ts +12 -0
  867. package/lib/src/modules/storage/tokens/object-storage-provisioner-registry.token.js +8 -0
  868. package/lib/src/modules/storage/tokens/storage-backend-registry.token.d.ts +12 -0
  869. package/lib/src/modules/storage/tokens/storage-backend-registry.token.js +8 -0
  870. package/lib/src/modules/terminal/services/native-ssh-connection.service.d.ts +48 -0
  871. package/lib/src/modules/terminal/services/native-ssh-connection.service.js +282 -0
  872. package/oclif.manifest.json +5243 -0
  873. package/package.json +125 -0
package/README.md ADDED
@@ -0,0 +1,124 @@
1
+ # @flui-cloud/cli
2
+
3
+ Command-line interface for [Flui](https://flui.cloud) — the open
4
+ platform layer on top of your cloud provider. Create clusters, deploy
5
+ applications from a `flui.yaml` manifest, switch between installations,
6
+ and operate the lifecycle end to end from one binary.
7
+
8
+ Full reference: **[docs.flui.cloud/cli](https://docs.flui.cloud/cli/)**.
9
+
10
+ ## Install
11
+
12
+ ```bash
13
+ npm install -g @flui-cloud/cli # or: pnpm add -g, yarn global add
14
+ flui --version
15
+ ```
16
+
17
+ To upgrade later, run `flui update` — it self-replaces the global
18
+ install with the latest published version.
19
+
20
+ ## Quickstart
21
+
22
+ Flui is a modern, multi-cloud platform layer that turns plain cloud
23
+ servers into a full application platform — you keep ownership of the
24
+ infrastructure, no vendor lock-in. Create your installation in one
25
+ interactive command — it asks for an admin email and a credential for
26
+ one of the supported cloud providers (Hetzner and Scaleway today;
27
+ more providers and bring-your-own-server installs on the roadmap),
28
+ then in a few minutes returns an environment ready to host
29
+ applications: cluster, ingress, TLS, identity, observability,
30
+ dashboard — already wired in.
31
+
32
+ ```bash
33
+ flui env create
34
+ ```
35
+
36
+ The command streams the install logs until the platform is reachable,
37
+ then prints the dashboard, API and OIDC URLs. The full walkthrough
38
+ lives at [Getting started](https://docs.flui.cloud/cli/getting-started/).
39
+
40
+ ## What you can do next
41
+
42
+ Once the cluster is up, plenty works without any extra integration —
43
+ day-to-day operating the installation, inspecting resources, and
44
+ deploying pre-built apps:
45
+
46
+ ```bash
47
+ flui auth login # OIDC against the freshly created installation
48
+
49
+ flui env status # control-cluster health, nodes, capacity
50
+ flui env credentials --test # print + probe the dashboard / API / OIDC / Grafana URLs
51
+
52
+ flui app list # all apps on the installation
53
+ flui app status <name> # rollout state, replicas, image
54
+ flui app logs <name> --tail 200 # recent logs
55
+ flui app metrics <name> # CPU / memory / network
56
+
57
+ flui deploy # deploy a flui.yaml from the current directory
58
+ ```
59
+
60
+ For source-built apps (`kind: Application`, built from a GitHub repo)
61
+ you also need to install the Flui GitHub App and save a GHCR PAT first
62
+ — see [Integrations](https://docs.flui.cloud/cli/integrations/).
63
+ Pre-built CatalogApps (`kind: CatalogApp`) skip all of that and deploy
64
+ straight from `flui deploy` against any public image registry. The
65
+ manifest reference is on [Deploy](https://docs.flui.cloud/cli/deploy/).
66
+
67
+ ## Topics
68
+
69
+ Commands are grouped into topics; each verb has its own `--help`.
70
+
71
+ | Topic | What it does |
72
+ | --- | --- |
73
+ | `env` | Lifecycle of the **control cluster** — create, inspect, scale, destroy. |
74
+ | `cluster` / `node` | Workload-cluster destroy and worker-node add/remove/list. |
75
+ | `app` | Inspect, scale, restart, snapshot, redeploy, and delete applications; read logs, metrics, and crash reports. |
76
+ | `deploy` / `catalog` | Deploy from a `flui.yaml` manifest; validate the manifest offline. |
77
+ | `integration` / `repo` | Connect the Flui GitHub App, save a GHCR PAT, and import repositories — prerequisites for the first source-built deploy. |
78
+ | `template` | Create a new repository from a Flui framework template. |
79
+ | `backup` | Manage backup destinations, policies, jobs, and restores. |
80
+ | `auth` | OIDC login and long-lived M2M API keys. |
81
+ | `context` / `config` | Profiles (isolated installations) and layered configuration. |
82
+ | `server-types` / `ssh` | List provider server sizes; SSH into a node. |
83
+ | `dev` | Helpers for Flui contributors (export secrets, SSH tunnel). |
84
+ | `dns` / `reconcile` / `update` | Maintenance utilities. |
85
+
86
+ Per-topic reference pages: see [docs.flui.cloud/cli](https://docs.flui.cloud/cli/).
87
+
88
+ ## Common conventions
89
+
90
+ A handful of flags recur across the CLI:
91
+
92
+ - `-c, --cluster <name|id>` — target cluster explicitly. Auto-detected
93
+ when only one is present.
94
+ - `-o, --output <format>` — `json` is always available for scripting;
95
+ the human format is `text` or `table` depending on the command.
96
+ - `--no-wait` / `--detach` — return as soon as the job is queued.
97
+ - `-f, --force` / `-y, --yes` — skip confirmation on destructive
98
+ operations.
99
+ - `--dry-run` — print what *would* happen on a subset of mutating
100
+ commands.
101
+
102
+ Commands that talk to the API print a short context banner before
103
+ running (active profile + API URL).
104
+
105
+ ## Profiles on disk
106
+
107
+ The CLI keeps each installation's state under
108
+ `~/.flui/profiles/<name>/`. A profile holds the API token, the
109
+ encrypted credentials needed to talk to the provider, the SSH CA used
110
+ for cluster nodes, and the local inventory the profile knows about.
111
+ The path can be moved with the `FLUI_DIR` environment variable.
112
+
113
+ Switching between installations: `flui context use <name>`.
114
+
115
+ ## Links
116
+
117
+ - **Documentation:** [docs.flui.cloud](https://docs.flui.cloud)
118
+ - **Project site:** [flui.cloud](https://flui.cloud)
119
+ - **Source / issues:** [github.com/flui-cloud/core](https://github.com/flui-cloud/core)
120
+ - **Manifest spec:** [`@flui-cloud/spec`](https://www.npmjs.com/package/@flui-cloud/spec) ([repo](https://github.com/flui-cloud/flui-spec))
121
+
122
+ ## License
123
+
124
+ AGPL-3.0-or-later. See [`LICENSE`](./LICENSE).
package/bin/run ADDED
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env node
2
+
3
+ // Load environment variables FIRST, before any modules
4
+ const dotenv = require('dotenv');
5
+ const path = require('path');
6
+ const os = require('os');
7
+
8
+ // Load .env from CLI data directory and project root
9
+ dotenv.config({ path: path.join(os.homedir(), '.flui', '.env') });
10
+ dotenv.config({ path: path.join(process.cwd(), '.env') });
11
+
12
+ // Initialize module-alias to resolve 'src/*' paths at runtime.
13
+ // Point it at the CLI package root so `flui` works from any CWD
14
+ // (when invoked via `pnpm link --global`, CWD is wherever the user is).
15
+ require('module-alias')(path.join(__dirname, '..'));
16
+
17
+ require('@oclif/core').run().then(require('@oclif/core').flush).catch(require('@oclif/core').Errors.handle)
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Background Worker for Cluster Operations
4
+ *
5
+ * This script runs as a detached background process to execute
6
+ * long-running cluster operations asynchronously.
7
+ *
8
+ * Usage:
9
+ * node cluster-worker.js create-cluster '{"clusterId":"...","operationId":"..."}'
10
+ */
11
+ export {};
@@ -0,0 +1,90 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * Background Worker for Cluster Operations
5
+ *
6
+ * This script runs as a detached background process to execute
7
+ * long-running cluster operations asynchronously.
8
+ *
9
+ * Usage:
10
+ * node cluster-worker.js create-cluster '{"clusterId":"...","operationId":"..."}'
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ const core_1 = require("@nestjs/core");
14
+ const common_1 = require("@nestjs/common");
15
+ const cli_module_1 = require("../cli.module");
16
+ const cli_cluster_creator_service_1 = require("../services/cli-cluster-creator.service");
17
+ const cli_cluster_repository_1 = require("../lib/repositories/cli-cluster.repository");
18
+ const cli_operation_repository_1 = require("../lib/repositories/cli-operation.repository");
19
+ const cli_logger_service_1 = require("../services/cli-logger.service");
20
+ const logger = new common_1.Logger('ClusterWorker');
21
+ async function main() {
22
+ const args = process.argv.slice(2);
23
+ if (args.length < 2) {
24
+ console.error('Usage: cluster-worker <jobType> <jobDataJson>');
25
+ process.exit(1);
26
+ }
27
+ const jobType = args[0];
28
+ const jobDataJson = args[1];
29
+ logger.log(`Starting background worker: ${jobType}`);
30
+ // Bootstrap NestJS application context
31
+ const app = await core_1.NestFactory.createApplicationContext(cli_module_1.CliModule, {
32
+ logger: ['error', 'warn', 'log'],
33
+ });
34
+ try {
35
+ const jobData = JSON.parse(jobDataJson);
36
+ if (jobType === 'create-cluster') {
37
+ await handleCreateCluster(app, jobData);
38
+ }
39
+ else if (jobType === 'delete-cluster') {
40
+ await handleDeleteCluster(app, jobData);
41
+ }
42
+ else {
43
+ throw new Error(`Unknown job type: ${jobType}`);
44
+ }
45
+ logger.log(`Background worker completed successfully: ${jobType}`);
46
+ process.exit(0);
47
+ }
48
+ catch (error) {
49
+ logger.error(`Background worker failed: ${error.message}`, error.stack);
50
+ process.exit(1);
51
+ }
52
+ finally {
53
+ await app.close();
54
+ }
55
+ }
56
+ async function handleCreateCluster(app, jobData) {
57
+ const { clusterId, operationId } = jobData;
58
+ logger.log(`Creating cluster ${clusterId} (operation ${operationId})`);
59
+ const clusterRepo = app.get(cli_cluster_repository_1.CliClusterRepository);
60
+ const operationRepo = app.get(cli_operation_repository_1.CliOperationRepository);
61
+ const creatorService = app.get(cli_cluster_creator_service_1.CliClusterCreatorService);
62
+ const loggerService = app.get(cli_logger_service_1.CliLoggerService);
63
+ // Load cluster and operation from file storage
64
+ const cluster = await clusterRepo.findOne({ where: { id: clusterId } });
65
+ const operation = await operationRepo.findOne({ where: { id: operationId } });
66
+ if (!cluster) {
67
+ throw new Error(`Cluster ${clusterId} not found`);
68
+ }
69
+ if (!operation) {
70
+ throw new Error(`Operation ${operationId} not found`);
71
+ }
72
+ loggerService.writeLog(operationId, `Background worker started for cluster ${cluster.name}`, 'INFO');
73
+ try {
74
+ // Execute cluster creation synchronously (within this background process)
75
+ await creatorService.createClusterSync(cluster, operation);
76
+ loggerService.writeLog(operationId, `Cluster ${cluster.name} created successfully`, 'INFO');
77
+ }
78
+ catch (error) {
79
+ loggerService.writeLog(operationId, `Cluster creation failed: ${error.message}`, 'ERROR');
80
+ throw error;
81
+ }
82
+ }
83
+ async function handleDeleteCluster(app, jobData) {
84
+ const { clusterId } = jobData;
85
+ logger.log(`Deleting cluster ${clusterId}`);
86
+ // TODO: Implement background cluster deletion if needed
87
+ throw new Error('Background cluster deletion not yet implemented');
88
+ }
89
+ // Run main function
90
+ main();
@@ -0,0 +1,2 @@
1
+ export declare class CliProvidersModule {
2
+ }
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.CliProvidersModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const cli_credential_provider_service_1 = require("./lib/cli-credential-provider.service");
12
+ const ip_detection_1 = require("./lib/utils/ip-detection");
13
+ const cli_firewall_repository_1 = require("./lib/repositories/cli-firewall.repository");
14
+ const cli_vnet_repository_1 = require("./lib/repositories/cli-vnet.repository");
15
+ const vnet_provisioning_service_1 = require("./lib/services/vnet-provisioning.service");
16
+ const api_client_1 = require("./lib/api-client");
17
+ const config_storage_1 = require("./lib/config-storage");
18
+ const provider_core_module_1 = require("../../src/modules/providers/provider-core.module");
19
+ const common_module_1 = require("../../src/modules/common/common.module");
20
+ const hetzner_provider_module_1 = require("../../src/modules/providers/implementations/hetzner/hetzner-provider.module");
21
+ const scaleway_provider_module_1 = require("../../src/modules/providers/implementations/scaleway/scaleway-provider.module");
22
+ const provider_factory_1 = require("../../src/modules/providers/core/factories/provider.factory");
23
+ const firewall_provider_factory_1 = require("../../src/modules/providers/core/factories/firewall-provider.factory");
24
+ const dns_provider_factory_1 = require("../../src/modules/providers/core/factories/dns-provider.factory");
25
+ const cloud_provider_enum_1 = require("../../src/modules/providers/enums/cloud-provider.enum");
26
+ const dns_provider_enum_1 = require("../../src/modules/providers/enums/dns-provider.enum");
27
+ const hetzner_provider_service_1 = require("../../src/modules/providers/services/hetzner-provider.service");
28
+ const hetzner_firewall_service_1 = require("../../src/modules/providers/services/hetzner-firewall.service");
29
+ const hetzner_dns_service_1 = require("../../src/modules/providers/services/hetzner-dns.service");
30
+ const scaleway_provider_service_1 = require("../../src/modules/providers/implementations/scaleway/scaleway-provider.service");
31
+ const scaleway_firewall_service_1 = require("../../src/modules/providers/implementations/scaleway/scaleway-firewall.service");
32
+ const scaleway_dns_service_1 = require("../../src/modules/providers/implementations/scaleway/scaleway-dns.service");
33
+ const hetzner_bootstrap_seeder_service_1 = require("../../src/modules/providers/implementations/hetzner/hetzner-bootstrap-seeder.service");
34
+ const scaleway_bootstrap_seeder_service_1 = require("../../src/modules/providers/implementations/scaleway/scaleway-bootstrap-seeder.service");
35
+ const tokens_1 = require("../../src/modules/providers/core/tokens");
36
+ let CliProvidersModule = class CliProvidersModule {
37
+ };
38
+ exports.CliProvidersModule = CliProvidersModule;
39
+ exports.CliProvidersModule = CliProvidersModule = __decorate([
40
+ (0, common_1.Global)(),
41
+ (0, common_1.Module)({
42
+ imports: [
43
+ provider_core_module_1.ProviderCoreModule,
44
+ common_module_1.CommonModule,
45
+ hetzner_provider_module_1.HetznerProviderModule,
46
+ scaleway_provider_module_1.ScalewayProviderModule,
47
+ ],
48
+ providers: [
49
+ cli_credential_provider_service_1.CliCredentialProviderService,
50
+ {
51
+ provide: 'ICredentialProvider',
52
+ useExisting: cli_credential_provider_service_1.CliCredentialProviderService,
53
+ },
54
+ {
55
+ provide: provider_factory_1.ProviderFactory,
56
+ useFactory: (hetzner, scaleway) => new provider_factory_1.ProviderFactory([
57
+ { provider: cloud_provider_enum_1.CloudProvider.HETZNER, service: hetzner },
58
+ { provider: cloud_provider_enum_1.CloudProvider.SCALEWAY, service: scaleway },
59
+ ]),
60
+ inject: [hetzner_provider_service_1.HetznerProviderService, scaleway_provider_service_1.ScalewayProviderService],
61
+ },
62
+ {
63
+ provide: firewall_provider_factory_1.FirewallProviderFactory,
64
+ useFactory: (hetzner, scaleway) => new firewall_provider_factory_1.FirewallProviderFactory([
65
+ { provider: cloud_provider_enum_1.CloudProvider.HETZNER, service: hetzner },
66
+ { provider: cloud_provider_enum_1.CloudProvider.SCALEWAY, service: scaleway },
67
+ ]),
68
+ inject: [hetzner_firewall_service_1.HetznerFirewallService, scaleway_firewall_service_1.ScalewayFirewallService],
69
+ },
70
+ {
71
+ provide: dns_provider_factory_1.DnsProviderFactory,
72
+ useFactory: (hetzner, scaleway) => new dns_provider_factory_1.DnsProviderFactory([
73
+ { provider: dns_provider_enum_1.DnsProvider.HETZNER, service: hetzner },
74
+ { provider: dns_provider_enum_1.DnsProvider.SCALEWAY, service: scaleway },
75
+ ]),
76
+ inject: [hetzner_dns_service_1.HetznerDnsService, scaleway_dns_service_1.ScalewayDnsService],
77
+ },
78
+ {
79
+ provide: tokens_1.PROVIDER_BOOTSTRAP_SEEDER_REGISTRY,
80
+ useFactory: (hetzner, scaleway) => [
81
+ { provider: cloud_provider_enum_1.CloudProvider.HETZNER, service: hetzner },
82
+ { provider: cloud_provider_enum_1.CloudProvider.SCALEWAY, service: scaleway },
83
+ ],
84
+ inject: [hetzner_bootstrap_seeder_service_1.HetznerBootstrapSeeder, scaleway_bootstrap_seeder_service_1.ScalewayBootstrapSeeder],
85
+ },
86
+ {
87
+ provide: api_client_1.ApiClient,
88
+ useFactory: () => {
89
+ const configStorage = new config_storage_1.ConfigStorage();
90
+ return new api_client_1.ApiClient({
91
+ baseUrl: configStorage.getApiUrl() ?? '',
92
+ apiKey: configStorage.getApiKey(),
93
+ });
94
+ },
95
+ },
96
+ ip_detection_1.IpDetectionService,
97
+ cli_firewall_repository_1.CliFirewallRepository,
98
+ cli_vnet_repository_1.CliVnetRepository,
99
+ vnet_provisioning_service_1.VnetProvisioningService,
100
+ ],
101
+ exports: [
102
+ provider_core_module_1.ProviderCoreModule,
103
+ cli_credential_provider_service_1.CliCredentialProviderService,
104
+ 'ICredentialProvider',
105
+ hetzner_provider_module_1.HetznerProviderModule,
106
+ scaleway_provider_module_1.ScalewayProviderModule,
107
+ provider_factory_1.ProviderFactory,
108
+ firewall_provider_factory_1.FirewallProviderFactory,
109
+ dns_provider_factory_1.DnsProviderFactory,
110
+ tokens_1.PROVIDER_BOOTSTRAP_SEEDER_REGISTRY,
111
+ api_client_1.ApiClient,
112
+ ip_detection_1.IpDetectionService,
113
+ cli_firewall_repository_1.CliFirewallRepository,
114
+ cli_vnet_repository_1.CliVnetRepository,
115
+ vnet_provisioning_service_1.VnetProvisioningService,
116
+ ],
117
+ })
118
+ ], CliProvidersModule);
@@ -0,0 +1,13 @@
1
+ /**
2
+ * CLI Module - Standalone Infrastructure Management
3
+ *
4
+ * This module provides CLI commands without requiring external services:
5
+ * - NO PostgreSQL database required
6
+ * - NO Redis queue required
7
+ * - File-based persistence in ~/.flui/
8
+ * - Uses CliInfrastructureModule for cluster management
9
+ * - config:* commands use file-based storage in ~/.flui/config.json
10
+ * - env:* commands use file-based cluster/operation tracking
11
+ */
12
+ export declare class CliModule {
13
+ }
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.CliModule = void 0;
43
+ const common_1 = require("@nestjs/common");
44
+ const config_1 = require("@nestjs/config");
45
+ const cli_providers_module_1 = require("./cli-providers.module");
46
+ const common_module_1 = require("../../src/modules/common/common.module");
47
+ const cli_infrastructure_module_1 = require("./modules/cli-infrastructure.module");
48
+ const path = __importStar(require("node:path"));
49
+ const os = __importStar(require("node:os"));
50
+ const CLI_DATA_DIR = path.join(os.homedir(), '.flui');
51
+ /**
52
+ * CLI Module - Standalone Infrastructure Management
53
+ *
54
+ * This module provides CLI commands without requiring external services:
55
+ * - NO PostgreSQL database required
56
+ * - NO Redis queue required
57
+ * - File-based persistence in ~/.flui/
58
+ * - Uses CliInfrastructureModule for cluster management
59
+ * - config:* commands use file-based storage in ~/.flui/config.json
60
+ * - env:* commands use file-based cluster/operation tracking
61
+ */
62
+ let CliModule = class CliModule {
63
+ };
64
+ exports.CliModule = CliModule;
65
+ exports.CliModule = CliModule = __decorate([
66
+ (0, common_1.Module)({
67
+ imports: [
68
+ config_1.ConfigModule.forRoot({
69
+ isGlobal: true,
70
+ envFilePath: [
71
+ path.join(CLI_DATA_DIR, '.env'),
72
+ path.join(process.cwd(), '.env'),
73
+ ],
74
+ }),
75
+ cli_providers_module_1.CliProvidersModule,
76
+ common_module_1.CommonModule,
77
+ cli_infrastructure_module_1.CliInfrastructureModule,
78
+ ],
79
+ })
80
+ ], CliModule);
@@ -0,0 +1,6 @@
1
+ import { Command } from '@oclif/core';
2
+ export default class DiagOidc extends Command {
3
+ static description: string;
4
+ static hidden: boolean;
5
+ run(): Promise<void>;
6
+ }
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const core_1 = require("@oclif/core");
37
+ const nest_app_1 = require("../lib/nest-app");
38
+ const cli_ssh_service_1 = require("../services/cli-ssh.service");
39
+ const cli_observability_cluster_service_1 = require("../services/cli-observability-cluster.service");
40
+ class DiagOidc extends core_1.Command {
41
+ async run() {
42
+ const app = await (0, nest_app_1.getNestApp)();
43
+ try {
44
+ const ssh = app.get(cli_ssh_service_1.CliSshService);
45
+ const obs = app.get(cli_observability_cluster_service_1.CliObservabilityClusterService);
46
+ const cluster = await obs.getObservabilityCluster();
47
+ if (!cluster?.masterIpAddress) {
48
+ this.error('No cluster / master IP');
49
+ }
50
+ const ip = cluster.masterIpAddress;
51
+ this.log('# Master IP: ' + ip);
52
+ this.log('# nipHostnameToken: ' + JSON.stringify(cluster.nipHostnameToken));
53
+ const opRepo = app.get((await Promise.resolve().then(() => __importStar(require('../lib/repositories/cli-operation.repository')))).CliOperationRepository);
54
+ const ops = await opRepo.find({ where: { resourceId: cluster.id } });
55
+ this.log('# Operations on cluster:');
56
+ for (const op of ops) {
57
+ this.log(` ${op.id} type=${op.operationType} status=${op.status} step=${op.currentStepIndex}/${op.totalSteps} createdAt=${op.createdAt}`);
58
+ if (op.status === 'FAILED' || op.status === 'IN_PROGRESS' || op.status === 'PENDING') {
59
+ this.log(' metadata=' + JSON.stringify(op.metadata).slice(0, 600));
60
+ }
61
+ }
62
+ this.log('# Local cluster status: ' + cluster.status);
63
+ const cmds = [
64
+ ['ACME solver ingresses (k8s Ingress)', "kubectl -n flui-system get ingress 2>&1; echo ---; kubectl -n flui-system get ingress -o yaml 2>&1 | grep -E 'host:|path:|name:|number:|className' | head -40"],
65
+ ['Traefik routers on :web', "TPOD=$(kubectl -n kube-system get pod -l app.kubernetes.io/name=traefik -o jsonpath='{.items[0].metadata.name}'); kubectl -n kube-system exec $TPOD -- wget -qO- http://localhost:9000/api/http/routers 2>/dev/null | head -c 4000; echo"],
66
+ ['Traefik routers via host curl', "TIP=$(kubectl -n kube-system get pod -l app.kubernetes.io/name=traefik -o jsonpath='{.items[0].status.podIP}'); echo TIP=$TIP; curl -s --connect-timeout 5 http://$TIP:9000/api/http/routers > /tmp/routers.json 2>&1; head -c 200 /tmp/routers.json; echo; echo ---PARSE---; python3 -c 'import json; rs=json.load(open(\"/tmp/routers.json\")); [print(r.get(\"name\",\"?\"),\"|rule=\",r.get(\"rule\",\"\")[:80],\"|eps=\",r.get(\"entryPoints\",[]),\"|stat=\",r.get(\"status\",\"\"),\"|tls=\",bool(r.get(\"tls\")),\"|err=\",str(r.get(\"error\",\"\"))[:120]) for r in rs]' 2>&1 | head -40"],
67
+ ['IngressClass + Traefik k8s ingress provider', "kubectl get ingressclass -o wide 2>&1; echo ---traefik-args; kubectl -n kube-system get pod -l app.kubernetes.io/name=traefik -o jsonpath='{.items[0].spec.containers[0].args}' 2>&1 | tr ',' '\\n' | grep -iE 'kubernetesingress|kubernetescrd|providers' | head -20"],
68
+ ['Sleep 8 then retest :80 (Traefik reload)', "sleep 8; for h in app api auth; do echo --- $h; curl -sk --connect-timeout 5 -o /dev/null -w 'HTTP %{http_code}\\n' --resolve $h.royal-gecko-72.162.55.56.10.nip.io:80:162.55.56.10 http://$h.royal-gecko-72.162.55.56.10.nip.io/ ; done"],
69
+ ['PATCH: drop tls + add web entrypoint to zitadel', "for ir in flui-api flui-web zitadel; do kubectl -n flui-system patch ingressroute $ir --type=json -p '[{\"op\":\"remove\",\"path\":\"/spec/tls\"}]' 2>&1 | head -1; done; kubectl -n flui-system patch ingressroute zitadel --type=json -p '[{\"op\":\"replace\",\"path\":\"/spec/entryPoints\",\"value\":[\"web\",\"websecure\"]}]'; sleep 5; echo ---test---; for h in app api auth; do curl -sk --connect-timeout 5 -o /dev/null -w \"$h=HTTP %{http_code}\\n\" --resolve $h.royal-gecko-72.162.55.56.10.nip.io:80:162.55.56.10 http://$h.royal-gecko-72.162.55.56.10.nip.io/; done"],
70
+ ['Test ACME path before retry', "TOKEN=$(kubectl -n flui-system get challenge -o jsonpath='{.items[0].spec.token}'); HOST=$(kubectl -n flui-system get challenge -o jsonpath='{.items[0].spec.dnsName}'); echo TOKEN=${TOKEN:0:20}... HOST=$HOST; curl -sk --connect-timeout 5 -o /tmp/c -w 'HTTP %{http_code}\\n' --resolve $HOST:80:162.55.56.10 http://$HOST/.well-known/acme-challenge/$TOKEN; echo body_first50=$(head -c 50 /tmp/c)"],
71
+ ['Force cert-manager retry (delete Order)', "kubectl -n flui-system delete order --all 2>&1; kubectl -n flui-system delete certificaterequest --all 2>&1; sleep 6; kubectl -n flui-system get challenge,order,certificaterequest 2>&1 | head"],
72
+ ['PATCH: cert-manager hostAliases -> Traefik ClusterIP', "TIP=$(kubectl -n kube-system get svc traefik -o jsonpath='{.spec.clusterIP}'); echo TIP=$TIP; kubectl -n cert-manager patch deploy cert-manager --type=json -p '[{\"op\":\"add\",\"path\":\"/spec/template/spec/hostAliases\",\"value\":[{\"ip\":\"'$TIP'\",\"hostnames\":[\"app.royal-gecko-72.162.55.56.10.nip.io\",\"api.royal-gecko-72.162.55.56.10.nip.io\",\"auth.royal-gecko-72.162.55.56.10.nip.io\"]}]}]' 2>&1; kubectl -n cert-manager rollout status deploy/cert-manager --timeout=60s 2>&1 | tail -3"],
73
+ ['Order invalid reason + restart cycle', "kubectl -n flui-system get order -o yaml 2>&1 | grep -A2 -E 'state:|reason:|message:' | head -40; echo ---deleting all + restart cert-manager---; kubectl -n flui-system delete order,certificaterequest,challenge --all 2>&1; kubectl -n flui-system delete certificate flui-system-tls 2>&1"],
74
+ ['Recreate Certificate', "cat <<'YAML' | kubectl apply -f -\napiVersion: cert-manager.io/v1\nkind: Certificate\nmetadata:\n name: flui-system-tls\n namespace: flui-system\n labels:\n app.kubernetes.io/managed-by: flui-cloud\nspec:\n secretName: flui-system-tls\n issuerRef:\n name: letsencrypt-production\n kind: ClusterIssuer\n dnsNames:\n - auth.royal-gecko-72.162.55.56.10.nip.io\n - api.royal-gecko-72.162.55.56.10.nip.io\n - app.royal-gecko-72.162.55.56.10.nip.io\nYAML\nsleep 10; kubectl -n flui-system get challenge,order 2>&1 | head"],
75
+ ['Wait 25s then check', "sleep 25; kubectl -n flui-system get certificate,secret/flui-system-tls,challenge 2>&1"],
76
+ ['Cert challenges + Certificate after fix', "kubectl -n flui-system get certificate flui-system-tls -o jsonpath='{.status.conditions[*].message}' 2>&1; echo; kubectl -n flui-system get challenge -o wide 2>&1 | head"],
77
+ ['external curl :80 to ACME path', "for h in app api auth; do echo --- $h; curl -sk --connect-timeout 6 -o /dev/null -w 'HTTP %{http_code} loc=%{redirect_url}\\n' --resolve $h.royal-gecko-72.162.55.56.10.nip.io:80:162.55.56.10 http://$h.royal-gecko-72.162.55.56.10.nip.io/.well-known/acme-challenge/test 2>&1; done"],
78
+ ['external curl :80 root', "for h in app api auth; do echo --- $h; curl -sk --connect-timeout 6 -o /dev/null -w 'HTTP %{http_code} loc=%{redirect_url}\\n' --resolve $h.royal-gecko-72.162.55.56.10.nip.io:80:162.55.56.10 http://$h.royal-gecko-72.162.55.56.10.nip.io/ 2>&1; done"],
79
+ ['ACME solver ingresses', "kubectl -n flui-system get ingress 2>&1; echo ---; kubectl -n flui-system get ingress -o yaml 2>&1 | grep -E 'host:|path:|backend:|service:|name:|number:|class:' | head -50"],
80
+ ['HTTP-01 self-check from cm pod', "CMP=$(kubectl -n cert-manager get pod -l app=cert-manager -o jsonpath='{.items[0].metadata.name}'); echo CMP=$CMP; for h in app api auth; do echo --- $h; kubectl -n cert-manager exec $CMP -- wget --spider --timeout=8 -S http://${h}.royal-gecko-72.162.55.56.10.nip.io/ 2>&1 | tail -10; done"],
81
+ ['HTTP-01 self-check via local nginx-style', "CHALLENGE=$(kubectl -n flui-system get challenge -o jsonpath='{.items[0].spec.token}'); echo TOKEN=$CHALLENGE; CMP=$(kubectl -n cert-manager get pod -l app=cert-manager -o jsonpath='{.items[0].metadata.name}'); kubectl -n cert-manager exec $CMP -- wget -qO- --timeout=8 http://app.royal-gecko-72.162.55.56.10.nip.io/.well-known/acme-challenge/$CHALLENGE 2>&1 | head -5; echo ---; kubectl -n cert-manager exec $CMP -- wget -S --timeout=8 -O /dev/null http://162.55.56.10/.well-known/acme-challenge/$CHALLENGE 2>&1 | tail -8"],
82
+ ['cert-manager Certificate', "kubectl -n flui-system get certificate -o wide 2>&1; echo ---; kubectl -n flui-system describe certificate 2>&1 | tail -50"],
83
+ ['cert-manager Order/Challenge', "kubectl -n flui-system get order,challenge -o wide 2>&1; echo ---; kubectl -n flui-system describe challenge 2>&1 | tail -50"],
84
+ ['cert-manager logs', "kubectl -n cert-manager logs -l app=cert-manager --tail=80 2>&1 | grep -iE 'error|fail|warn|royal-gecko' | tail -30"],
85
+ ['ClusterIssuer', "kubectl get clusterissuer 2>&1"],
86
+ ['placeholder',
87
+ 'noop'],
88
+ ['Traefik pod / svc', "kubectl -n kube-system get pods -l app.kubernetes.io/name=traefik -o wide 2>&1; echo; kubectl -n kube-system get svc traefik 2>&1"],
89
+ ['Traefik logs (last 80, errors)', "kubectl -n kube-system logs -l app.kubernetes.io/name=traefik --tail=200 2>&1 | grep -iE 'error|fail|warn' | tail -40"],
90
+ ['IngressRoutes flui-system', "kubectl -n flui-system get ingressroute -o wide 2>&1"],
91
+ ['flui-system pods', "kubectl -n flui-system get pods 2>&1"],
92
+ ['flui-system services', "kubectl -n flui-system get svc 2>&1"],
93
+ ['flui-system-tls secret', "kubectl -n flui-system get secret flui-system-tls -o yaml 2>&1 | grep -E 'tls.crt|tls.key|name:' | head -10; echo ---; kubectl -n flui-system get secret flui-system-tls -o jsonpath='{.data.tls\\.crt}' 2>/dev/null | base64 -d | openssl x509 -noout -subject -issuer -dates 2>&1 | head"],
94
+ ['IngressRoute for app/api/auth detail', "for n in 09-flui-api 10-flui-web 11-zitadel; do echo '=== '$n; kubectl -n flui-system get ingressroute -o yaml | grep -E 'host\\(|Host\\(|tls:|secretName' | head -20; done; kubectl -n flui-system get ingressroute -o yaml | grep -E 'match:|host:' | head -30"],
95
+ ['curl from inside cluster (Traefik svc IP)', "TIP=$(kubectl -n kube-system get svc traefik -o jsonpath='{.spec.clusterIP}'); echo TIP=$TIP; for h in app.royal-gecko-72.162.55.56.10.nip.io api.royal-gecko-72.162.55.56.10.nip.io auth.royal-gecko-72.162.55.56.10.nip.io; do echo --- $h ---; curl -sk --connect-timeout 5 -o /dev/null -w 'HTTP %{http_code}\\n' -H \"Host: $h\" https://$TIP/; done"],
96
+ ];
97
+ const _allCmds = [
98
+ ['OIDC_AUDIENCE in flui-secrets', "kubectl -n flui-system get secret flui-secrets -o jsonpath='{.data.OIDC_AUDIENCE}' | base64 -d; echo"],
99
+ ['OIDC_ISSUER in flui-api-config', "kubectl -n flui-system get cm flui-api-config -o jsonpath='{.data.OIDC_ISSUER}'; echo"],
100
+ ['OIDC_CLI_CLIENT_ID in flui-api-config', "kubectl -n flui-system get cm flui-api-config -o jsonpath='{.data.OIDC_CLI_CLIENT_ID}'; echo"],
101
+ ['oidcClientId in flui-web-config', "kubectl -n flui-system get cm flui-web-config -o jsonpath='{.data.config\\.json}'; echo"],
102
+ ['flui-api OIDC log lines', "kubectl -n flui-system logs deploy/flui-api --tail=400 2>/dev/null | grep -iE 'oidc|bootstrap|zitadel' | tail -40 || echo '(no matches)'"],
103
+ ['/var/log/flui-oidc-bootstrap.log tail', "test -f /var/log/flui-oidc-bootstrap.log && tail -80 /var/log/flui-oidc-bootstrap.log || echo '(file missing)'"],
104
+ ['Zitadel pod status', "kubectl -n flui-system get pods 2>&1 | grep -i zitadel"],
105
+ ['Zitadel ExternalDomain', "for cm in $(kubectl -n flui-system get cm -o name | grep -i zitadel); do echo --- $cm ---; kubectl -n flui-system get $cm -o yaml | grep -iE 'external|domain' | head -10; done"],
106
+ ['flui-api pod -> Zitadel via tokenized Host', "POD=$(kubectl -n flui-system get pod -l app=flui-api -o jsonpath='{.items[0].metadata.name}'); ZDOM=$(kubectl -n flui-system get cm flui-api-config -o jsonpath='{.data.OIDC_ISSUER}' | sed 's|https://||'); PAT=$(kubectl -n flui-system get secret flui-secrets -o jsonpath='{.data.ZITADEL_SERVICE_ACCOUNT_PAT}' | base64 -d); echo POD=$POD; echo ZDOM_used=$ZDOM; kubectl -n flui-system exec $POD -c flui-api -- sh -c \"curl -s -o /tmp/o -w 'HTTP %{http_code}\\n' -H 'Host: $ZDOM' -H 'Authorization: Bearer $PAT' http://zitadel.flui-system.svc.cluster.local:8080/auth/v1/users/me; head -c 200 /tmp/o; echo; echo --no-host--; curl -s -o /tmp/o -w 'HTTP %{http_code}\\n' -H 'Authorization: Bearer $PAT' http://zitadel.flui-system.svc.cluster.local:8080/auth/v1/users/me; head -c 250 /tmp/o; echo\" 2>&1"],
107
+ ['axios from flui-api pod: capital Host vs lowercase host', "POD=$(kubectl -n flui-system get pod -l app=flui-api -o jsonpath='{.items[0].metadata.name}'); ZDOM=$(kubectl -n flui-system get cm flui-api-config -o jsonpath='{.data.OIDC_ISSUER}' | sed 's|https://||'); PAT=$(kubectl -n flui-system get secret flui-secrets -o jsonpath='{.data.ZITADEL_SERVICE_ACCOUNT_PAT}' | base64 -d); kubectl -n flui-system exec $POD -c flui-api -- node -e \"const a=require('axios');(async()=>{for (const k of ['Host','host']){try{const r=await a.get('http://zitadel.flui-system.svc.cluster.local:8080/auth/v1/users/me',{headers:{[k]:'$ZDOM',Authorization:'Bearer $PAT'},validateStatus:()=>true});console.log(k+'=>HTTP '+r.status+' '+JSON.stringify(r.data).slice(0,100));}catch(e){console.log(k+'=>ERR '+e.message)}}})();\" 2>&1"],
108
+ ['find postgres pod', "kubectl -n flui-system get pods -o wide | grep -iE 'postgres|sql' | head"],
109
+ ['flui-api DB env', "POD=$(kubectl -n flui-system get pod -l app=flui-api -o jsonpath='{.items[0].metadata.name}'); kubectl -n flui-system exec $POD -c flui-api -- sh -c 'echo DB_USERNAME=$DB_USERNAME; echo DB_NAME=$DB_NAME; echo DB_HOST=$DB_HOST'"],
110
+ ['cluster row (in-cluster DB)', "kubectl -n flui-system exec postgres-0 -- psql -U fluicloud -d fluicloud -tAc 'SELECT id, name, \"masterIpAddress\", \"nipHostnameToken\", \"clusterType\" FROM infrastructure_clusters;' 2>&1 | head"],
111
+ ['flui-api PAT in env vs in PVC', "POD=$(kubectl -n flui-system get pod -l app=flui-api -o jsonpath='{.items[0].metadata.name}'); kubectl -n flui-system exec $POD -c flui-api -- sh -c 'echo ENV_PAT_LEN=${#ZITADEL_SERVICE_ACCOUNT_PAT}; echo ENV_PAT_HEAD=${ZITADEL_SERVICE_ACCOUNT_PAT:0:8}'; SECRET_PAT=$(kubectl -n flui-system get secret flui-secrets -o jsonpath='{.data.ZITADEL_SERVICE_ACCOUNT_PAT}' | base64 -d); echo SECRET_PAT_LEN=${#SECRET_PAT}; echo SECRET_PAT_HEAD=${SECRET_PAT:0:8}; PVC_PAT=$(kubectl -n flui-system exec deploy/zitadel -- cat /pvc/flui-api-system.pat 2>/dev/null || echo none); echo PVC_PAT_LEN=${#PVC_PAT}; echo PVC_PAT_HEAD=${PVC_PAT:0:8}"],
112
+ ['Zitadel /auth/v1/users/me (what verifyPat hits)', "PAT=$(kubectl -n flui-system get secret flui-secrets -o jsonpath='{.data.ZITADEL_SERVICE_ACCOUNT_PAT}' | base64 -d); ZDOM=$(kubectl -n flui-system get cm flui-api-config -o jsonpath='{.data.OIDC_ISSUER}' | sed 's|https://||'); echo via_internal_dns:; curl -s -o /tmp/out -w 'HTTP %{http_code}\\n' -H \"Host: $ZDOM\" -H \"Authorization: Bearer $PAT\" http://zitadel.flui-system.svc.cluster.local:8080/auth/v1/users/me; head -c 300 /tmp/out; echo; echo via_clusterip:; ZSVC=$(kubectl -n flui-system get svc zitadel -o jsonpath='{.spec.clusterIP}'):8080; curl -s -o /tmp/out -w 'HTTP %{http_code}\\n' -H \"Host: $ZDOM\" -H \"Authorization: Bearer $PAT\" http://$ZSVC/auth/v1/users/me; head -c 300 /tmp/out; echo"],
113
+ ];
114
+ for (const [label, cmd] of cmds) {
115
+ this.log('\n=== ' + label + ' ===');
116
+ try {
117
+ const out = await ssh.sshExec(ip, cmd);
118
+ this.log(out.trim());
119
+ }
120
+ catch (e) {
121
+ this.log('ERR: ' + (e?.message ?? String(e)));
122
+ }
123
+ }
124
+ }
125
+ finally {
126
+ await (0, nest_app_1.closeNestApp)();
127
+ }
128
+ }
129
+ }
130
+ DiagOidc.description = 'Internal diag: OIDC bootstrap state';
131
+ DiagOidc.hidden = true;
132
+ exports.default = DiagOidc;
@@ -0,0 +1,20 @@
1
+ import { Command } from '@oclif/core';
2
+ export default class AppBackupCreate extends Command {
3
+ static readonly description: string;
4
+ static readonly examples: string[];
5
+ static readonly args: {
6
+ name: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static readonly flags: {
9
+ cluster: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ volume: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
11
+ description: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
12
+ bucket: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
13
+ endpoint: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
14
+ region: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
15
+ 'access-key': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
16
+ 'secret-key': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
17
+ 'key-prefix': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
18
+ };
19
+ run(): Promise<void>;
20
+ }