@iobroker/js-controller-cli 7.2.3 → 8.0.0-alpha.2-20260923-99da17fcc

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 (225) hide show
  1. package/build/cjs/index.js +3 -3
  2. package/build/cjs/lib/_Types.d.ts +8 -1
  3. package/build/cjs/lib/cli/cliCert.d.ts +7 -4
  4. package/build/cjs/lib/cli/cliCert.js +10 -6
  5. package/build/cjs/lib/cli/cliCert.js.map +2 -2
  6. package/build/cjs/lib/cli/cliCommand.d.ts +63 -15
  7. package/build/cjs/lib/cli/cliCommand.js +8 -1
  8. package/build/cjs/lib/cli/cliCommand.js.map +2 -2
  9. package/build/cjs/lib/cli/cliCompact.d.ts +5 -2
  10. package/build/cjs/lib/cli/cliCompact.js +9 -2
  11. package/build/cjs/lib/cli/cliCompact.js.map +2 -2
  12. package/build/cjs/lib/cli/cliDebug.d.ts +5 -2
  13. package/build/cjs/lib/cli/cliDebug.js +8 -1
  14. package/build/cjs/lib/cli/cliDebug.js.map +2 -2
  15. package/build/cjs/lib/cli/cliHost.d.ts +13 -10
  16. package/build/cjs/lib/cli/cliHost.js +13 -5
  17. package/build/cjs/lib/cli/cliHost.js.map +2 -2
  18. package/build/cjs/lib/cli/cliLogs.d.ts +9 -3
  19. package/build/cjs/lib/cli/cliLogs.js +12 -1
  20. package/build/cjs/lib/cli/cliLogs.js.map +2 -2
  21. package/build/cjs/lib/cli/cliMessage.d.ts +2 -1
  22. package/build/cjs/lib/cli/cliMessage.js +5 -0
  23. package/build/cjs/lib/cli/cliMessage.js.map +2 -2
  24. package/build/cjs/lib/cli/cliObjects.d.ts +21 -18
  25. package/build/cjs/lib/cli/cliObjects.js +51 -33
  26. package/build/cjs/lib/cli/cliObjects.js.map +2 -2
  27. package/build/cjs/lib/cli/cliPlugin.d.ts +3 -3
  28. package/build/cjs/lib/cli/cliPlugin.js +6 -0
  29. package/build/cjs/lib/cli/cliPlugin.js.map +2 -2
  30. package/build/cjs/lib/cli/cliProcess.d.ts +17 -7
  31. package/build/cjs/lib/cli/cliProcess.js +77 -24
  32. package/build/cjs/lib/cli/cliProcess.js.map +3 -3
  33. package/build/cjs/lib/cli/cliStates.d.ts +7 -4
  34. package/build/cjs/lib/cli/cliStates.js +14 -6
  35. package/build/cjs/lib/cli/cliStates.js.map +2 -2
  36. package/build/cjs/lib/cli/cliTools.js +11 -0
  37. package/build/cjs/lib/cli/cliTools.js.map +1 -1
  38. package/build/cjs/lib/cli/messages.js +47 -46
  39. package/build/cjs/lib/cli/messages.js.map +1 -1
  40. package/build/cjs/lib/progressBar.d.ts +59 -0
  41. package/build/cjs/lib/progressBar.js +115 -0
  42. package/build/cjs/lib/progressBar.js.map +7 -0
  43. package/build/cjs/lib/setup/customError.d.ts +4 -0
  44. package/build/cjs/lib/setup/customError.js +7 -0
  45. package/build/cjs/lib/setup/customError.js.map +2 -2
  46. package/build/cjs/lib/setup/dbConnection.js +69 -64
  47. package/build/cjs/lib/setup/dbConnection.js.map +3 -3
  48. package/build/cjs/lib/setup/formatters.d.ts +4 -4
  49. package/build/cjs/lib/setup/formatters.js +5 -0
  50. package/build/cjs/lib/setup/formatters.js.map +2 -2
  51. package/build/cjs/lib/setup/multihostClient.js +6 -2
  52. package/build/cjs/lib/setup/multihostClient.js.map +1 -1
  53. package/build/cjs/lib/setup/pluginInfos.d.ts +5 -0
  54. package/build/cjs/lib/setup/pluginInfos.js +2 -0
  55. package/build/cjs/lib/setup/pluginInfos.js.map +2 -2
  56. package/build/cjs/lib/setup/setupBackup.d.ts +53 -0
  57. package/build/cjs/lib/setup/setupBackup.js +125 -14
  58. package/build/cjs/lib/setup/setupBackup.js.map +3 -3
  59. package/build/cjs/lib/setup/setupInstall.d.ts +66 -15
  60. package/build/cjs/lib/setup/setupInstall.js +282 -28
  61. package/build/cjs/lib/setup/setupInstall.js.map +2 -2
  62. package/build/cjs/lib/setup/setupLicense.d.ts +13 -0
  63. package/build/cjs/lib/setup/setupLicense.js +33 -2
  64. package/build/cjs/lib/setup/setupLicense.js.map +2 -2
  65. package/build/cjs/lib/setup/setupList.d.ts +55 -1
  66. package/build/cjs/lib/setup/setupList.js +78 -24
  67. package/build/cjs/lib/setup/setupList.js.map +3 -3
  68. package/build/cjs/lib/setup/setupMultihost.d.ts +7 -0
  69. package/build/cjs/lib/setup/setupMultihost.js +78 -11
  70. package/build/cjs/lib/setup/setupMultihost.js.map +3 -3
  71. package/build/cjs/lib/setup/setupPacketManager.d.ts +10 -0
  72. package/build/cjs/lib/setup/setupPacketManager.js +16 -6
  73. package/build/cjs/lib/setup/setupPacketManager.js.map +2 -2
  74. package/build/cjs/lib/setup/setupRepo.d.ts +19 -0
  75. package/build/cjs/lib/setup/setupRepo.js +141 -13
  76. package/build/cjs/lib/setup/setupRepo.js.map +2 -2
  77. package/build/cjs/lib/setup/setupSetup.d.ts +34 -0
  78. package/build/cjs/lib/setup/setupSetup.js +209 -35
  79. package/build/cjs/lib/setup/setupSetup.js.map +3 -3
  80. package/build/cjs/lib/setup/setupUpgrade.d.ts +13 -2
  81. package/build/cjs/lib/setup/setupUpgrade.js +72 -12
  82. package/build/cjs/lib/setup/setupUpgrade.js.map +2 -2
  83. package/build/cjs/lib/setup/setupUpload.d.ts +77 -1
  84. package/build/cjs/lib/setup/setupUpload.js +152 -9
  85. package/build/cjs/lib/setup/setupUpload.js.map +2 -2
  86. package/build/cjs/lib/setup/setupUsers.d.ts +44 -14
  87. package/build/cjs/lib/setup/setupUsers.js +330 -17
  88. package/build/cjs/lib/setup/setupUsers.js.map +2 -2
  89. package/build/cjs/lib/setup/setupVendor.d.ts +14 -1
  90. package/build/cjs/lib/setup/setupVendor.js +40 -8
  91. package/build/cjs/lib/setup/setupVendor.js.map +2 -2
  92. package/build/cjs/lib/setup/setupVisDebug.d.ts +16 -2
  93. package/build/cjs/lib/setup/setupVisDebug.js +41 -17
  94. package/build/cjs/lib/setup/setupVisDebug.js.map +3 -3
  95. package/build/cjs/lib/setup/utils.d.ts +1 -1
  96. package/build/cjs/lib/setup/utils.js +13 -9
  97. package/build/cjs/lib/setup/utils.js.map +3 -3
  98. package/build/cjs/lib/setup.d.ts +1 -1
  99. package/build/cjs/lib/setup.js +858 -1758
  100. package/build/cjs/lib/setup.js.map +3 -3
  101. package/build/esm/lib/_Types.d.ts +8 -1
  102. package/build/esm/lib/_Types.d.ts.map +1 -1
  103. package/build/esm/lib/cli/cliCert.d.ts +7 -4
  104. package/build/esm/lib/cli/cliCert.d.ts.map +1 -1
  105. package/build/esm/lib/cli/cliCert.js +6 -6
  106. package/build/esm/lib/cli/cliCert.js.map +1 -1
  107. package/build/esm/lib/cli/cliCommand.d.ts +63 -15
  108. package/build/esm/lib/cli/cliCommand.d.ts.map +1 -1
  109. package/build/esm/lib/cli/cliCommand.js +4 -1
  110. package/build/esm/lib/cli/cliCommand.js.map +1 -1
  111. package/build/esm/lib/cli/cliCompact.d.ts +5 -2
  112. package/build/esm/lib/cli/cliCompact.d.ts.map +1 -1
  113. package/build/esm/lib/cli/cliCompact.js +5 -2
  114. package/build/esm/lib/cli/cliCompact.js.map +1 -1
  115. package/build/esm/lib/cli/cliDebug.d.ts +5 -2
  116. package/build/esm/lib/cli/cliDebug.d.ts.map +1 -1
  117. package/build/esm/lib/cli/cliDebug.js +4 -1
  118. package/build/esm/lib/cli/cliDebug.js.map +1 -1
  119. package/build/esm/lib/cli/cliHost.d.ts +13 -10
  120. package/build/esm/lib/cli/cliHost.d.ts.map +1 -1
  121. package/build/esm/lib/cli/cliHost.js +8 -5
  122. package/build/esm/lib/cli/cliHost.js.map +1 -1
  123. package/build/esm/lib/cli/cliLogs.d.ts +9 -3
  124. package/build/esm/lib/cli/cliLogs.d.ts.map +1 -1
  125. package/build/esm/lib/cli/cliLogs.js +8 -1
  126. package/build/esm/lib/cli/cliLogs.js.map +1 -1
  127. package/build/esm/lib/cli/cliMessage.d.ts +2 -1
  128. package/build/esm/lib/cli/cliMessage.d.ts.map +1 -1
  129. package/build/esm/lib/cli/cliMessage.js +1 -0
  130. package/build/esm/lib/cli/cliMessage.js.map +1 -1
  131. package/build/esm/lib/cli/cliObjects.d.ts +21 -18
  132. package/build/esm/lib/cli/cliObjects.d.ts.map +1 -1
  133. package/build/esm/lib/cli/cliObjects.js +44 -38
  134. package/build/esm/lib/cli/cliObjects.js.map +1 -1
  135. package/build/esm/lib/cli/cliPlugin.d.ts +3 -3
  136. package/build/esm/lib/cli/cliPlugin.d.ts.map +1 -1
  137. package/build/esm/lib/cli/cliPlugin.js +1 -1
  138. package/build/esm/lib/cli/cliPlugin.js.map +1 -1
  139. package/build/esm/lib/cli/cliProcess.d.ts +17 -7
  140. package/build/esm/lib/cli/cliProcess.d.ts.map +1 -1
  141. package/build/esm/lib/cli/cliProcess.js +73 -12
  142. package/build/esm/lib/cli/cliProcess.js.map +1 -1
  143. package/build/esm/lib/cli/cliStates.d.ts +7 -4
  144. package/build/esm/lib/cli/cliStates.d.ts.map +1 -1
  145. package/build/esm/lib/cli/cliStates.js +6 -2
  146. package/build/esm/lib/cli/cliStates.js.map +1 -1
  147. package/build/esm/lib/progressBar.d.ts +59 -0
  148. package/build/esm/lib/progressBar.d.ts.map +1 -0
  149. package/build/esm/lib/progressBar.js +104 -0
  150. package/build/esm/lib/progressBar.js.map +1 -0
  151. package/build/esm/lib/setup/customError.d.ts +4 -0
  152. package/build/esm/lib/setup/customError.d.ts.map +1 -1
  153. package/build/esm/lib/setup/customError.js +3 -0
  154. package/build/esm/lib/setup/customError.js.map +1 -1
  155. package/build/esm/lib/setup/dbConnection.d.ts.map +1 -1
  156. package/build/esm/lib/setup/dbConnection.js +10 -13
  157. package/build/esm/lib/setup/dbConnection.js.map +1 -1
  158. package/build/esm/lib/setup/formatters.d.ts +4 -4
  159. package/build/esm/lib/setup/formatters.js +4 -4
  160. package/build/esm/lib/setup/pluginInfos.d.ts +5 -0
  161. package/build/esm/lib/setup/pluginInfos.d.ts.map +1 -1
  162. package/build/esm/lib/setup/pluginInfos.js +5 -0
  163. package/build/esm/lib/setup/pluginInfos.js.map +1 -1
  164. package/build/esm/lib/setup/setupBackup.d.ts +53 -0
  165. package/build/esm/lib/setup/setupBackup.d.ts.map +1 -1
  166. package/build/esm/lib/setup/setupBackup.js +132 -13
  167. package/build/esm/lib/setup/setupBackup.js.map +1 -1
  168. package/build/esm/lib/setup/setupInstall.d.ts +66 -15
  169. package/build/esm/lib/setup/setupInstall.d.ts.map +1 -1
  170. package/build/esm/lib/setup/setupInstall.js +309 -23
  171. package/build/esm/lib/setup/setupInstall.js.map +1 -1
  172. package/build/esm/lib/setup/setupLicense.d.ts +13 -0
  173. package/build/esm/lib/setup/setupLicense.d.ts.map +1 -1
  174. package/build/esm/lib/setup/setupLicense.js +31 -1
  175. package/build/esm/lib/setup/setupLicense.js.map +1 -1
  176. package/build/esm/lib/setup/setupList.d.ts +55 -1
  177. package/build/esm/lib/setup/setupList.d.ts.map +1 -1
  178. package/build/esm/lib/setup/setupList.js +61 -8
  179. package/build/esm/lib/setup/setupList.js.map +1 -1
  180. package/build/esm/lib/setup/setupMultihost.d.ts +7 -0
  181. package/build/esm/lib/setup/setupMultihost.d.ts.map +1 -1
  182. package/build/esm/lib/setup/setupMultihost.js +85 -6
  183. package/build/esm/lib/setup/setupMultihost.js.map +1 -1
  184. package/build/esm/lib/setup/setupPacketManager.d.ts +10 -0
  185. package/build/esm/lib/setup/setupPacketManager.d.ts.map +1 -1
  186. package/build/esm/lib/setup/setupPacketManager.js +9 -0
  187. package/build/esm/lib/setup/setupPacketManager.js.map +1 -1
  188. package/build/esm/lib/setup/setupRepo.d.ts +19 -0
  189. package/build/esm/lib/setup/setupRepo.d.ts.map +1 -1
  190. package/build/esm/lib/setup/setupRepo.js +164 -14
  191. package/build/esm/lib/setup/setupRepo.js.map +1 -1
  192. package/build/esm/lib/setup/setupSetup.d.ts +34 -0
  193. package/build/esm/lib/setup/setupSetup.d.ts.map +1 -1
  194. package/build/esm/lib/setup/setupSetup.js +218 -21
  195. package/build/esm/lib/setup/setupSetup.js.map +1 -1
  196. package/build/esm/lib/setup/setupUpgrade.d.ts +13 -2
  197. package/build/esm/lib/setup/setupUpgrade.d.ts.map +1 -1
  198. package/build/esm/lib/setup/setupUpgrade.js +70 -6
  199. package/build/esm/lib/setup/setupUpgrade.js.map +1 -1
  200. package/build/esm/lib/setup/setupUpload.d.ts +77 -1
  201. package/build/esm/lib/setup/setupUpload.d.ts.map +1 -1
  202. package/build/esm/lib/setup/setupUpload.js +164 -7
  203. package/build/esm/lib/setup/setupUpload.js.map +1 -1
  204. package/build/esm/lib/setup/setupUsers.d.ts +44 -14
  205. package/build/esm/lib/setup/setupUsers.d.ts.map +1 -1
  206. package/build/esm/lib/setup/setupUsers.js +346 -14
  207. package/build/esm/lib/setup/setupUsers.js.map +1 -1
  208. package/build/esm/lib/setup/setupVendor.d.ts +14 -1
  209. package/build/esm/lib/setup/setupVendor.d.ts.map +1 -1
  210. package/build/esm/lib/setup/setupVendor.js +33 -2
  211. package/build/esm/lib/setup/setupVendor.js.map +1 -1
  212. package/build/esm/lib/setup/setupVisDebug.d.ts +16 -2
  213. package/build/esm/lib/setup/setupVisDebug.d.ts.map +1 -1
  214. package/build/esm/lib/setup/setupVisDebug.js +39 -14
  215. package/build/esm/lib/setup/setupVisDebug.js.map +1 -1
  216. package/build/esm/lib/setup/utils.d.ts +1 -1
  217. package/build/esm/lib/setup/utils.d.ts.map +1 -1
  218. package/build/esm/lib/setup/utils.js +2 -4
  219. package/build/esm/lib/setup/utils.js.map +1 -1
  220. package/build/esm/lib/setup.d.ts +1 -1
  221. package/build/esm/lib/setup.d.ts.map +1 -1
  222. package/build/esm/lib/setup.js +959 -1910
  223. package/build/esm/lib/setup.js.map +1 -1
  224. package/build/tsconfig.build.tsbuildinfo +1 -1
  225. package/package.json +14 -14
@@ -1 +1 @@
1
- {"version":3,"file":"customError.js","sourceRoot":"","sources":["../../../../src/lib/setup/customError.ts"],"names":[],"mappings":"AASA;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC3B,IAAI,CAAa;IAC1B,YAAY,OAA6B;QACrC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAElC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEhD,0DAA0D;QAC1D,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7B,CAAC;CACJ"}
1
+ {"version":3,"file":"customError.js","sourceRoot":"","sources":["../../../../src/lib/setup/customError.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC3B,IAAI,CAAa;IAC1B;;OAEG;IACH,YAAY,OAA6B;QACrC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAElC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEhD,0DAA0D;QAC1D,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7B,CAAC;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"dbConnection.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/dbConnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAuB5E,UAAU,eAAe;IACrB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AAC7D,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AAC1F,wBAAgB,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AA4S9G;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE1G;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAmBpD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAI3E"}
1
+ {"version":3,"file":"dbConnection.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/dbConnection.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAQ5E,UAAU,eAAe;IACrB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AAC7D,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AAC1F,wBAAgB,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AA2S9G;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE1G;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAmBpD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAI3E"}
@@ -1,9 +1,7 @@
1
+ import path from 'node:path';
1
2
  import fs from 'fs-extra';
2
- import { getObjectsConstructor, getStatesConstructor, objectsDbHasServer, statesDbHasServer, } from '@iobroker/js-controller-common';
3
- import { EXIT_CODES } from '@iobroker/js-controller-common';
4
- import { tools } from '@iobroker/js-controller-common';
3
+ import { tools, EXIT_CODES, getObjectsConstructor, getStatesConstructor, objectsDbHasServer, statesDbHasServer, } from '@iobroker/js-controller-common';
5
4
  import { setTimeout as wait } from 'node:timers/promises';
6
- import path from 'node:path';
7
5
  import { PluginHandler } from '@iobroker/plugin-base';
8
6
  let pluginHandler;
9
7
  let Objects; // constructor
@@ -201,15 +199,14 @@ export async function dbConnect(onlyCheck, params, callback) {
201
199
  }
202
200
  console.log('No connection to databases possible ...');
203
201
  if (onlyCheck) {
204
- callback &&
205
- callback({
206
- // TODO types: allow null if onlyCheck is true
207
- objects: null,
208
- states: null,
209
- isOffline: true,
210
- objectsDBType: config.objects.type,
211
- config,
212
- });
202
+ callback?.({
203
+ // TODO types: allow null if onlyCheck is true
204
+ objects: null,
205
+ states: null,
206
+ isOffline: true,
207
+ objectsDBType: config.objects.type,
208
+ config,
209
+ });
213
210
  callback = undefined;
214
211
  }
215
212
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"dbConnection.js","sourceRoot":"","sources":["../../../../src/lib/setup/dbConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbConnection.js","sourceRoot":"","sources":["../../../../src/lib/setup/dbConnection.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,25 @@
1
1
  /**
2
2
  * Format number in seconds to time text
3
3
  *
4
- * @param seconds
4
+ * @param seconds The number of seconds to format
5
5
  */
6
6
  export declare function formatSeconds(seconds: number): string;
7
7
  /**
8
8
  * Format bytes to MB or GB
9
9
  *
10
- * @param bytes
10
+ * @param bytes The number of bytes to format
11
11
  */
12
12
  export declare function formatRam(bytes: number): string;
13
13
  /**
14
14
  * Format speed
15
15
  *
16
- * @param mhz
16
+ * @param mhz The speed in MHz
17
17
  */
18
18
  export declare function formatSpeed(mhz: number): string;
19
19
  /**
20
20
  * Format bytes to human readable form
21
21
  *
22
- * @param bytes
22
+ * @param bytes The number of bytes to format
23
23
  */
24
24
  export declare function formatBytes(bytes: number): string;
25
25
  //# sourceMappingURL=formatters.d.ts.map
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Format number in seconds to time text
3
3
  *
4
- * @param seconds
4
+ * @param seconds The number of seconds to format
5
5
  */
6
6
  export function formatSeconds(seconds) {
7
7
  let _seconds = seconds;
@@ -31,7 +31,7 @@ export function formatSeconds(seconds) {
31
31
  /**
32
32
  * Format bytes to MB or GB
33
33
  *
34
- * @param bytes
34
+ * @param bytes The number of bytes to format
35
35
  */
36
36
  export function formatRam(bytes) {
37
37
  const GB = Math.floor((bytes / (1024 * 1024 * 1024)) * 10) / 10;
@@ -49,7 +49,7 @@ export function formatRam(bytes) {
49
49
  /**
50
50
  * Format speed
51
51
  *
52
- * @param mhz
52
+ * @param mhz The speed in MHz
53
53
  */
54
54
  export function formatSpeed(mhz) {
55
55
  return `${mhz} MHz`;
@@ -57,7 +57,7 @@ export function formatSpeed(mhz) {
57
57
  /**
58
58
  * Format bytes to human readable form
59
59
  *
60
- * @param bytes
60
+ * @param bytes The number of bytes to format
61
61
  */
62
62
  export function formatBytes(bytes) {
63
63
  if (Math.abs(bytes) < 1024) {
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Check whether the given plugin reports data to an external service (e.g. Sentry)
3
+ *
4
+ * @param name The plugin name to check
5
+ */
1
6
  export declare function isReportingPlugin(name: string): boolean;
2
7
  export declare const PLUGIN_INFOS: {
3
8
  readonly sentry: {
@@ -1 +1 @@
1
- {"version":3,"file":"pluginInfos.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/pluginInfos.ts"],"names":[],"mappings":"AACA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Bf,CAAC"}
1
+ {"version":3,"file":"pluginInfos.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/pluginInfos.ts"],"names":[],"mappings":"AACA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Bf,CAAC"}
@@ -1,4 +1,9 @@
1
1
  // Special Handling to inform users about reporting plugins correctly
2
+ /**
3
+ * Check whether the given plugin reports data to an external service (e.g. Sentry)
4
+ *
5
+ * @param name The plugin name to check
6
+ */
2
7
  export function isReportingPlugin(name) {
3
8
  return name === 'sentry';
4
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pluginInfos.js","sourceRoot":"","sources":["../../../../src/lib/setup/pluginInfos.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC1C,OAAO,IAAI,KAAK,QAAQ,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,MAAM,EAAE;QACJ,QAAQ,EAAE;YACN,EAAE,EAAE,mFAAmF;YACvF,EAAE,EAAE,kGAAkG;YACtG,EAAE,EAAE,0FAA0F;YAC9F,EAAE,EAAE,qFAAqF;YACzF,EAAE,EAAE,wFAAwF;YAC5F,EAAE,EAAE,yFAAyF;YAC7F,EAAE,EAAE,sGAAsG;YAC1G,EAAE,EAAE,iGAAiG;YACrG,EAAE,EAAE,6GAA6G;YACjH,EAAE,EAAE,sFAAsF;YAC1F,OAAO,EAAE,sCAAsC;SAClD;QACD,IAAI,EAAE;YACF,EAAE,EAAE,00BAA00B;YAC90B,EAAE,EAAE,08BAA08B;YAC98B,EAAE,EAAE,y2BAAy2B;YAC72B,EAAE,EAAE,m4BAAm4B;YACv4B,EAAE,EAAE,05BAA05B;YAC95B,EAAE,EAAE,49BAA49B;YACh+B,EAAE,EAAE,+9BAA+9B;YACn+B,EAAE,EAAE,67BAA67B;YACj8B,EAAE,EAAE,u5BAAu5B;YAC35B,EAAE,EAAE,q2BAAq2B;YACz2B,OAAO,EACH,wUAAwU;SAC/U;KACJ;CACK,CAAC"}
1
+ {"version":3,"file":"pluginInfos.js","sourceRoot":"","sources":["../../../../src/lib/setup/pluginInfos.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC1C,OAAO,IAAI,KAAK,QAAQ,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,MAAM,EAAE;QACJ,QAAQ,EAAE;YACN,EAAE,EAAE,mFAAmF;YACvF,EAAE,EAAE,kGAAkG;YACtG,EAAE,EAAE,0FAA0F;YAC9F,EAAE,EAAE,qFAAqF;YACzF,EAAE,EAAE,wFAAwF;YAC5F,EAAE,EAAE,yFAAyF;YAC7F,EAAE,EAAE,sGAAsG;YAC1G,EAAE,EAAE,iGAAiG;YACrG,EAAE,EAAE,6GAA6G;YACjH,EAAE,EAAE,sFAAsF;YAC1F,OAAO,EAAE,sCAAsC;SAClD;QACD,IAAI,EAAE;YACF,EAAE,EAAE,00BAA00B;YAC90B,EAAE,EAAE,08BAA08B;YAC98B,EAAE,EAAE,y2BAAy2B;YAC72B,EAAE,EAAE,m4BAAm4B;YACv4B,EAAE,EAAE,05BAA05B;YAC95B,EAAE,EAAE,49BAA49B;YACh+B,EAAE,EAAE,+9BAA+9B;YACn+B,EAAE,EAAE,67BAA67B;YACj8B,EAAE,EAAE,u5BAAu5B;YAC35B,EAAE,EAAE,q2BAAq2B;YACz2B,OAAO,EACH,wUAAwU;SAC/U;KACJ;CACK,CAAC"}
@@ -2,14 +2,23 @@ import { EXIT_CODES } from '@iobroker/js-controller-common';
2
2
  import type { Client as StatesRedisClient } from '@iobroker/db-states-redis';
3
3
  import type { Client as ObjectsRedisClient } from '@iobroker/db-objects-redis';
4
4
  import type { CleanDatabaseHandler, ProcessExitCallback, RestartController } from '../_Types.js';
5
+ import type { ProcessCommandOptions } from '../../lib/cli/cliCommand.js';
6
+ /** Options for the backup/restore command */
5
7
  export interface CLIBackupRestoreOptions {
8
+ /** Whether this is part of a database migration */
6
9
  dbMigration?: boolean;
10
+ /** The states database client */
7
11
  states: StatesRedisClient;
12
+ /** The objects database client */
8
13
  objects: ObjectsRedisClient;
14
+ /** Callback to exit the process with an exit code */
9
15
  processExit: ProcessExitCallback;
16
+ /** Handler to clean the database */
10
17
  cleanDatabase: CleanDatabaseHandler;
18
+ /** Handler to restart the controller */
11
19
  restartController: RestartController;
12
20
  }
21
+ /** Result returned after restoring a backup */
13
22
  export interface RestoreBackupReturnValue {
14
23
  /** Exit code of the process */
15
24
  exitCode: EXIT_CODES;
@@ -18,6 +27,7 @@ export interface RestoreBackupReturnValue {
18
27
  /** The new objects db connection after restore */
19
28
  objects: ObjectsRedisClient;
20
29
  }
30
+ /** Options for restoring a backup */
21
31
  export interface RestoreBackupOptions {
22
32
  /** backup name, absolute path or index */
23
33
  name: string | number;
@@ -26,6 +36,9 @@ export interface RestoreBackupOptions {
26
36
  /** skip adapter deletion, e.g. for setup custom db migration */
27
37
  dontDeleteAdapters: boolean;
28
38
  }
39
+ /**
40
+ * CLI command to create and restore ioBroker backups
41
+ */
29
42
  export declare class BackupRestore {
30
43
  private readonly hostname;
31
44
  private readonly tmpDir;
@@ -49,14 +62,36 @@ export declare class BackupRestore {
49
62
  private readonly HOSTNAME_PLACEHOLDER_REGEX;
50
63
  /** Postfix for backup name */
51
64
  private readonly BACKUP_POSTFIX;
65
+ /**
66
+ * @param options The states/objects clients and the exit, clean and restart handlers
67
+ */
52
68
  constructor(options: CLIBackupRestoreOptions);
53
69
  private _copyFile;
70
+ /**
71
+ * Recursively copy a directory from the object's file storage to disk
72
+ *
73
+ * @param id The object id owning the files
74
+ * @param srcPath The source directory in the object's file storage
75
+ * @param destPath The destination directory on disk
76
+ */
54
77
  copyDir(id: string, srcPath: string, destPath: string): Promise<void>;
55
78
  /**
56
79
  * Get the directory where backups should be stored
57
80
  */
58
81
  static getBackupDir(): string;
82
+ /**
83
+ * Copy a single file synchronously
84
+ *
85
+ * @param source The source file path
86
+ * @param target The target file or directory path
87
+ */
59
88
  copyFileSync(source: string, target: string): void;
89
+ /**
90
+ * Recursively copy a folder synchronously
91
+ *
92
+ * @param source The source folder path
93
+ * @param target The target folder path
94
+ */
60
95
  copyFolderRecursiveSync(source: string, target: string): void;
61
96
  /**
62
97
  * Removes the temporary backup directory, never throws
@@ -177,4 +212,22 @@ export declare class BackupRestore {
177
212
  */
178
213
  private _restorePreservedAdapters;
179
214
  }
215
+ /**
216
+ * Processes the `restore` command
217
+ *
218
+ * @param options the command options
219
+ */
220
+ export declare function processCommandRestore(options: ProcessCommandOptions): void;
221
+ /**
222
+ * Processes the `backup` command
223
+ *
224
+ * @param options the command options
225
+ */
226
+ export declare function processCommandBackup(options: ProcessCommandOptions): void;
227
+ /**
228
+ * Processes the `validate` command
229
+ *
230
+ * @param options the command options
231
+ */
232
+ export declare function processCommandValidate(options: ProcessCommandOptions): void;
180
233
  //# sourceMappingURL=setupBackup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupBackup.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/setupBackup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupBackup.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/setupBackup.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAS,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAE/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAIjG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,6CAA6C;AAC7C,MAAM,WAAW,uBAAuB;IACpC,mDAAmD;IACnD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iCAAiC;IACjC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,kCAAkC;IAClC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,qDAAqD;IACrD,WAAW,EAAE,mBAAmB,CAAC;IACjC,oCAAoC;IACpC,aAAa,EAAE,oBAAoB,CAAC;IACpC,wCAAwC;IACxC,iBAAiB,EAAE,iBAAiB,CAAC;CACxC;AAID,+CAA+C;AAC/C,MAAM,WAAW,wBAAwB;IACrC,+BAA+B;IAC/B,QAAQ,EAAE,UAAU,CAAC;IACrB,iDAAiD;IACjD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,kDAAkD;IAClD,OAAO,EAAE,kBAAkB,CAAC;CAC/B;AA4BD,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACjC,0CAA0C;IAC1C,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,iFAAiF;IACjF,KAAK,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,kBAAkB,EAAE,OAAO,CAAC;CAC/B;AAID;;GAEG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAC1E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAC9E,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyC;IACrE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA+C;IACjF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2C;IACzE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,oHAAoH;IACpH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IACpE,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,gFAAgF;IAChF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAsB;IAC3D,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAA0B;IACvE,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAA2B;IACtE,8BAA8B;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsC;IAErE;;OAEG;gBACS,OAAO,EAAE,uBAAuB;YAkC9B,SAAS;IAWvB;;;;;;OAMG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB3E;;OAEG;IACH,MAAM,CAAC,YAAY,IAAI,MAAM;IAI7B;;;;;OAKG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAiBlD;;;;;OAKG;IACH,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IA8B7D;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAsBnB;;;;;OAKG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAkInE;;;;;OAKG;YACW,eAAe;IAQ7B;;;;OAIG;YACW,aAAa;IAqB3B;;;;OAIG;YACW,oBAAoB;YAyBpB,sBAAsB;YAiEtB,gBAAgB;IAgC9B;;;;OAIG;YACW,iBAAiB;IA2D/B,OAAO,CAAC,kBAAkB;IAgC1B;;;;OAIG;YACW,mBAAmB;IA+FjC;;;;OAIG;YACW,iBAAiB;IA6H/B;;;;;OAKG;YACW,oBAAoB;IAclC;;OAEG;YACW,kBAAkB;IAqBhC;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAqC5B;;OAEG;IACH,WAAW,IAAI,MAAM,EAAE;IAevB;;;;OAIG;YACW,sBAAsB;IAiCpC;;OAEG;YACW,sBAAsB;IA8BpC;;;;OAIG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiG3D;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAyBvB;;;;OAIG;IACG,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAqGrF;;OAEG;YACW,yBAAyB;CAwB1C;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CA4B1E;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAuBzE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAsB3E"}
@@ -1,14 +1,17 @@
1
- import fs from 'fs-extra';
2
1
  import path from 'node:path';
3
- import { EXIT_CODES, tools } from '@iobroker/js-controller-common';
4
- import { exec as execAsync } from 'promisify-child-process';
2
+ import { open, writeFile } from 'node:fs/promises';
3
+ import fs from 'fs-extra';
4
+ import { exec } from 'node:child_process';
5
5
  import * as tar from 'tar';
6
+ import { EXIT_CODES, tools } from '@iobroker/js-controller-common';
6
7
  import { Upload } from './setupUpload.js';
7
- import { dbConnectAsync, resetDbConnect } from './dbConnection.js';
8
+ import { dbConnect, dbConnectAsync, exitApplicationSave, resetDbConnect } from './dbConnection.js';
8
9
  import { IoBrokerError } from './customError.js';
9
10
  import { CLIProcess } from '../../lib/cli/cliProcess.js';
10
- import { open, writeFile } from 'node:fs/promises';
11
11
  const controllerDir = tools.getControllerDir();
12
+ /**
13
+ * CLI command to create and restore ioBroker backups
14
+ */
12
15
  export class BackupRestore {
13
16
  hostname = tools.getHostName();
14
17
  tmpDir = path.normalize(path.join(controllerDir, 'tmp'));
@@ -32,6 +35,9 @@ export class BackupRestore {
32
35
  HOSTNAME_PLACEHOLDER_REGEX = /\$\$__hostname__\$\$/g;
33
36
  /** Postfix for backup name */
34
37
  BACKUP_POSTFIX = `_backup${tools.appNameLowerCase}`;
38
+ /**
39
+ * @param options The states/objects clients and the exit, clean and restart handlers
40
+ */
35
41
  constructor(options) {
36
42
  options = options || {};
37
43
  if (!options.states) {
@@ -64,7 +70,7 @@ export class BackupRestore {
64
70
  async _copyFile(id, srcPath, destPath) {
65
71
  try {
66
72
  const data = await this.objects.readFile(id, srcPath);
67
- if (data) {
73
+ if (data?.file) {
68
74
  fs.writeFileSync(destPath, data.file);
69
75
  }
70
76
  }
@@ -72,6 +78,13 @@ export class BackupRestore {
72
78
  console.log(`Can not copy File ${id}${srcPath} to ${destPath}: ${err.message}`);
73
79
  }
74
80
  }
81
+ /**
82
+ * Recursively copy a directory from the object's file storage to disk
83
+ *
84
+ * @param id The object id owning the files
85
+ * @param srcPath The source directory in the object's file storage
86
+ * @param destPath The destination directory on disk
87
+ */
75
88
  async copyDir(id, srcPath, destPath) {
76
89
  fs.ensureDirSync(destPath);
77
90
  try {
@@ -100,6 +113,12 @@ export class BackupRestore {
100
113
  static getBackupDir() {
101
114
  return path.join(tools.getRootDir(), 'backups/');
102
115
  }
116
+ /**
117
+ * Copy a single file synchronously
118
+ *
119
+ * @param source The source file path
120
+ * @param target The target file or directory path
121
+ */
103
122
  copyFileSync(source, target) {
104
123
  let targetFile = target;
105
124
  try {
@@ -115,6 +134,12 @@ export class BackupRestore {
115
134
  console.error(`Could not copy ${targetFile} to ${source}: ${e.message}`);
116
135
  }
117
136
  }
137
+ /**
138
+ * Recursively copy a folder synchronously
139
+ *
140
+ * @param source The source folder path
141
+ * @param target The target folder path
142
+ */
118
143
  copyFolderRecursiveSync(source, target) {
119
144
  let files = [];
120
145
  if (!fs.existsSync(target)) {
@@ -451,7 +476,7 @@ export class BackupRestore {
451
476
  return object;
452
477
  }
453
478
  if (!isCustomHostname) {
454
- if (object._id.match(/^system\.adapter\.([\w\d_-]+).(\d+)$/) && object.common.host === hostname) {
479
+ if (object._id.match(/^system\.adapter\.([\w_-]+).(\d+)$/) && object.common.host === hostname) {
455
480
  object.common.host = this.HOSTNAME_PLACEHOLDER;
456
481
  object.common.host = this.HOSTNAME_PLACEHOLDER;
457
482
  }
@@ -462,7 +487,7 @@ export class BackupRestore {
462
487
  object._id = `system.host.${this.HOSTNAME_PLACEHOLDER}`;
463
488
  object.common.name = object._id;
464
489
  object.common.hostname = this.HOSTNAME_PLACEHOLDER;
465
- if (object.native && object.native.os) {
490
+ if (object.native?.os) {
466
491
  object.native.os.hostname = this.HOSTNAME_PLACEHOLDER;
467
492
  }
468
493
  object.common.name = object._id;
@@ -686,7 +711,16 @@ export class BackupRestore {
686
711
  // js-controller version has changed (setup never called for this version)
687
712
  console.log('Forced restore - executing setup ...');
688
713
  try {
689
- await execAsync(`"${process.execPath}" "${path.join(controllerDir, `${tools.appName.toLowerCase()}.js`)}" setup`);
714
+ await new Promise((resolve, reject) => {
715
+ exec(`"${process.execPath}" "${path.join(controllerDir, `${tools.appName.toLowerCase()}.js`)}" setup`, (error, stdout, stderr) => {
716
+ if (error) {
717
+ reject(stderr ? new Error(stderr) : error);
718
+ }
719
+ else {
720
+ resolve();
721
+ }
722
+ });
723
+ });
690
724
  }
691
725
  catch (e) {
692
726
  console.error(`Could not execute "setup" command, please ensure "setup" is called before starting ioBroker: ${e.message}`);
@@ -857,8 +891,8 @@ export class BackupRestore {
857
891
  if (backups.length) {
858
892
  // List all available backups
859
893
  console.log('Please specify one of the backup names:');
860
- for (const t in backups) {
861
- console.log(`${backups[t]} or ${backups[t].replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${t}`);
894
+ for (const [t, backup] of backups.entries()) {
895
+ console.log(`${backup} or ${backup.replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${t}`);
862
896
  }
863
897
  }
864
898
  else {
@@ -875,8 +909,8 @@ export class BackupRestore {
875
909
  console.log('No matching backup found');
876
910
  if (backups.length) {
877
911
  console.log('Please specify one of the backup names:');
878
- for (const t in backups) {
879
- console.log(`${backups[t]} or ${backups[t].replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${t}`);
912
+ for (const [t, backup] of backups.entries()) {
913
+ console.log(`${backup} or ${backup.replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${t}`);
880
914
  }
881
915
  }
882
916
  else {
@@ -1111,4 +1145,89 @@ export class BackupRestore {
1111
1145
  }
1112
1146
  }
1113
1147
  }
1148
+ /**
1149
+ * Processes the `restore` command
1150
+ *
1151
+ * @param options the command options
1152
+ */
1153
+ export function processCommandRestore(options) {
1154
+ const { args, params, callback, cleanDatabase, restartController } = options;
1155
+ dbConnect(params, async ({ isOffline, objects, states }) => {
1156
+ if (!isOffline) {
1157
+ console.error(`Stop ${tools.appName} first!`);
1158
+ return void callback(EXIT_CODES.CONTROLLER_RUNNING);
1159
+ }
1160
+ const backup = new BackupRestore({
1161
+ states,
1162
+ objects,
1163
+ cleanDatabase,
1164
+ restartController,
1165
+ processExit: callback,
1166
+ });
1167
+ const { exitCode } = await backup.restoreBackup({
1168
+ name: args[0],
1169
+ force: !!params.force,
1170
+ dontDeleteAdapters: false,
1171
+ });
1172
+ if (exitCode === EXIT_CODES.NO_ERROR) {
1173
+ console.log('System successfully restored!');
1174
+ }
1175
+ return void callback(exitCode);
1176
+ });
1177
+ }
1178
+ /**
1179
+ * Processes the `backup` command
1180
+ *
1181
+ * @param options the command options
1182
+ */
1183
+ export function processCommandBackup(options) {
1184
+ const { args, params, callback, cleanDatabase, restartController } = options;
1185
+ const name = args[0];
1186
+ dbConnect(params, async ({ states, objects }) => {
1187
+ const backup = new BackupRestore({
1188
+ states,
1189
+ objects,
1190
+ cleanDatabase,
1191
+ restartController,
1192
+ processExit: callback,
1193
+ });
1194
+ try {
1195
+ const filePath = await backup.createBackup(name);
1196
+ console.log(`Backup created: ${filePath}`);
1197
+ console.log('This backup can only be restored with js-controller version 7.0 or higher');
1198
+ return void callback(EXIT_CODES.NO_ERROR);
1199
+ }
1200
+ catch (e) {
1201
+ console.log(`Cannot create backup: ${e.message}`);
1202
+ return void callback(e instanceof IoBrokerError ? e.code : EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP);
1203
+ }
1204
+ });
1205
+ }
1206
+ /**
1207
+ * Processes the `validate` command
1208
+ *
1209
+ * @param options the command options
1210
+ */
1211
+ export function processCommandValidate(options) {
1212
+ const { args, params, callback, cleanDatabase, restartController } = options;
1213
+ const name = args[0];
1214
+ dbConnect(params, async ({ objects, states }) => {
1215
+ const backup = new BackupRestore({
1216
+ states,
1217
+ objects,
1218
+ cleanDatabase,
1219
+ restartController,
1220
+ processExit: callback,
1221
+ });
1222
+ try {
1223
+ await backup.validateBackup(name);
1224
+ console.log('Backup OK');
1225
+ return void exitApplicationSave(0);
1226
+ }
1227
+ catch (e) {
1228
+ console.log(`Backup check failed: ${e.message}`);
1229
+ return void exitApplicationSave(e instanceof IoBrokerError ? e.code : 1);
1230
+ }
1231
+ });
1232
+ }
1114
1233
  //# sourceMappingURL=setupBackup.js.map