@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
@@ -9,15 +9,23 @@ import tty from 'node:tty';
9
9
  import path from 'node:path';
10
10
  import { getRepository, isVersionIgnored } from '../../lib/setup/utils.js';
11
11
  import { IoBrokerError } from '../../lib/setup/customError.js';
12
+ import { dbConnect } from '../../lib/setup/dbConnection.js';
13
+ import * as CLITools from '../../lib/cli/cliTools.js';
12
14
  const debug = Debug('iobroker:cli');
15
+ /**
16
+ * CLI command to upgrade the js-controller
17
+ */
13
18
  export class Upgrade {
14
19
  hostname = tools.getHostName();
15
20
  upload;
16
21
  install;
17
22
  objects;
18
23
  processExit;
24
+ /**
25
+ * @param options The objects client, the upload/install helpers and the process-exit callback
26
+ */
19
27
  constructor(options) {
20
- options = options || {};
28
+ options ||= {};
21
29
  if (!options.processExit) {
22
30
  throw new Error('Invalid arguments: processExit is missing');
23
31
  }
@@ -38,14 +46,15 @@ export class Upgrade {
38
46
  const relevantAdapters = [];
39
47
  // check which adapters are upgradeable and sort them according to their dependencies
40
48
  for (const adapter of list) {
41
- if (repo[adapter].controller) {
49
+ const repoAdapter = repo[adapter];
50
+ if (repoAdapter.controller) {
42
51
  // skip controller
43
52
  continue;
44
53
  }
45
54
  const adapterDir = tools.getAdapterDir(adapter);
46
55
  if (adapterDir && fs.existsSync(path.join(adapterDir, 'io-package.json'))) {
47
56
  const ioInstalled = fs.readJsonSync(path.join(adapterDir, 'io-package.json'));
48
- if (!tools.upToDate(repo[adapter].version, ioInstalled.common.version)) {
57
+ if (!tools.upToDate(repoAdapter.version, ioInstalled.common.version)) {
49
58
  // not up to date, we need to put it into account for our dependency check
50
59
  relevantAdapters.push(adapter);
51
60
  }
@@ -58,8 +67,9 @@ export class Upgrade {
58
67
  // create an ordered list for upgrades
59
68
  for (let i = relevantAdapters.length - 1; i >= 0; i--) {
60
69
  const relAdapter = relevantAdapters[i];
70
+ const relevantAdapter = repo[relAdapter];
61
71
  // if a new version has no dependencies, we can upgrade
62
- if (!repo[relAdapter].dependencies && !repo[relAdapter].globalDependencies) {
72
+ if (!relevantAdapter.dependencies && !relevantAdapter.globalDependencies) {
63
73
  // no deps, simply add it
64
74
  sortedAdapters.push(relAdapter);
65
75
  relevantAdapters.splice(relevantAdapters.indexOf(relAdapter), 1);
@@ -67,8 +77,8 @@ export class Upgrade {
67
77
  }
68
78
  else {
69
79
  const allDeps = {
70
- ...tools.parseDependencies(repo[relAdapter].dependencies),
71
- ...tools.parseDependencies(repo[relAdapter].globalDependencies),
80
+ ...tools.parseDependencies(relevantAdapter.dependencies),
81
+ ...tools.parseDependencies(relevantAdapter.globalDependencies),
72
82
  };
73
83
  // we have to check if the deps are there
74
84
  let conflict = false;
@@ -556,4 +566,58 @@ export class Upgrade {
556
566
  }
557
567
  }
558
568
  }
569
+ /**
570
+ * @param options The process-command options (args, params, callback, etc.)
571
+ */
572
+ export function processCommandUpgrade(options) {
573
+ const { args, params, callback } = options;
574
+ let adapter = CLITools.normalizeAdapterName(args[0]);
575
+ if (adapter === 'all') {
576
+ adapter = null;
577
+ }
578
+ dbConnect(params, async ({ objects, states }) => {
579
+ const upgrade = new Upgrade({
580
+ objects,
581
+ states,
582
+ params,
583
+ processExit: callback,
584
+ });
585
+ if (adapter) {
586
+ try {
587
+ if (adapter.split('@')[0] === 'self') {
588
+ const hostAlive = await states.getStateAsync(`system.host.${tools.getHostName()}.alive`);
589
+ const version = adapter.split('@')[1];
590
+ await upgrade.upgradeController({
591
+ forceDowngrade: params.force || params.f,
592
+ controllerRunning: !!hostAlive?.val,
593
+ version,
594
+ });
595
+ }
596
+ else {
597
+ await upgrade.upgradeAdapter('', adapter, params.force || params.f, params.y || params.yes, false);
598
+ }
599
+ return void callback();
600
+ }
601
+ catch (err) {
602
+ console.error(`Cannot upgrade: ${err.message}`);
603
+ return void callback(EXIT_CODES.INVALID_REPO);
604
+ }
605
+ }
606
+ else {
607
+ // upgrade all
608
+ try {
609
+ const links = await getRepository({ objects });
610
+ if (!links) {
611
+ return void callback(EXIT_CODES.INVALID_REPO);
612
+ }
613
+ await upgrade.upgradeAdapterHelper(links, Object.keys(links).sort(), false, params.y || params.yes);
614
+ return void callback();
615
+ }
616
+ catch (e) {
617
+ console.error(`Cannot upgrade: ${e.message}`);
618
+ return void callback(e instanceof IoBrokerError ? e.code : EXIT_CODES.INVALID_REPO);
619
+ }
620
+ }
621
+ });
622
+ }
559
623
  //# sourceMappingURL=setupUpgrade.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupUpgrade.js","sourceRoot":"","sources":["../../../../src/lib/setup/setupUpgrade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupUpgrade.js","sourceRoot":"","sources":["../../../../src/lib/setup/setupUpgrade.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,12 @@
9
9
  import type { Client as StatesRedisClient } from '@iobroker/db-states-redis';
10
10
  import type { Client as ObjectsRedisClient } from '@iobroker/db-objects-redis';
11
11
  import type { InternalLogger } from '@iobroker/js-controller-common-db/tools';
12
+ import type { ProcessCommandOptions } from '../../lib/cli/cliCommand.js';
13
+ /** Options for the upload command */
12
14
  export interface CLIUploadOptions {
15
+ /** The states database client */
13
16
  states: StatesRedisClient;
17
+ /** The objects database client */
14
18
  objects: ObjectsRedisClient;
15
19
  }
16
20
  interface File {
@@ -22,6 +26,9 @@ interface Logger extends InternalLogger {
22
26
  }
23
27
  /** Logger without noisy levels */
24
28
  type MinimalLogger = Omit<Logger, 'info' | 'silly' | 'debug'>;
29
+ /**
30
+ * CLI command to upload adapter files into the objects database
31
+ */
25
32
  export declare class Upload {
26
33
  private readonly states;
27
34
  private readonly objects;
@@ -30,11 +37,42 @@ export declare class Upload {
30
37
  private readonly sendToHostFromCliAsync;
31
38
  private callbacks;
32
39
  private lastProgressUpdate;
40
+ /**
41
+ * @param _options The states and objects database clients
42
+ */
33
43
  constructor(_options: CLIUploadOptions);
44
+ /**
45
+ * Filter the given hosts to those that are currently alive
46
+ *
47
+ * @param hosts The hosts to check
48
+ */
34
49
  checkHostsIfAlive(hosts: string[]): Promise<string[]>;
50
+ /**
51
+ * Get the list of known hosts
52
+ *
53
+ * @param onlyAlive Whether to only return hosts that are currently alive
54
+ */
35
55
  getHosts(onlyAlive: boolean): Promise<string[]>;
56
+ /**
57
+ * Check if some adapters must be restarted because of the given adapter's files and restart them
58
+ *
59
+ * @param adapter The adapter whose dependents should be restarted
60
+ */
36
61
  checkRestartOther(adapter: string): Promise<void>;
62
+ /**
63
+ * Send a message to a host from the CLI
64
+ *
65
+ * @param host The target host id
66
+ * @param command The command to send
67
+ * @param message The message payload
68
+ * @param callback Called with the host's response
69
+ */
37
70
  sendToHostFromCli(host: string, command: string, message: ioBroker.MessagePayload, callback: ioBroker.MessageCallback | null): void;
71
+ /**
72
+ * Upload the files of all given adapters from every host
73
+ *
74
+ * @param adapters The adapters to upload
75
+ */
38
76
  uploadAdapterFullAsync(adapters: string[]): Promise<void>;
39
77
  /**
40
78
  * Uploads a file
@@ -43,7 +81,13 @@ export declare class Upload {
43
81
  * @param target target path
44
82
  */
45
83
  uploadFile(source: string, target: string): Promise<string>;
46
- eraseFiles(files: any[], logger: MinimalLogger | typeof console): Promise<void>;
84
+ /**
85
+ * Delete the given files from the objects database
86
+ *
87
+ * @param files The files to delete
88
+ * @param logger Logger used to report errors
89
+ */
90
+ eraseFiles(files: File[], logger: MinimalLogger | typeof console): Promise<void>;
47
91
  /**
48
92
  * Collect Files of an adapter specific directory from the ioBroker storage
49
93
  *
@@ -55,7 +99,22 @@ export declare class Upload {
55
99
  filesToDelete: File[];
56
100
  dirs: File[];
57
101
  }>;
102
+ /**
103
+ * Upload the files of a single adapter into the objects database
104
+ *
105
+ * @param adapter The adapter whose files are uploaded
106
+ * @param isAdmin Whether the admin files should be uploaded
107
+ * @param files The files to upload
108
+ * @param id The upload state id used to report progress
109
+ * @param logger Logger used to report progress
110
+ */
58
111
  upload(adapter: string, isAdmin: boolean, files: string[], id: string, logger: MinimalLogger | typeof console): Promise<string>;
112
+ /**
113
+ * Recursively collect all file paths below the given directory
114
+ *
115
+ * @param dir The directory to walk
116
+ * @param _results Accumulator of results collected so far
117
+ */
59
118
  walk(dir: string, _results?: string[]): string[];
60
119
  /**
61
120
  * Upload given adapter
@@ -67,7 +126,20 @@ export declare class Upload {
67
126
  * @param _logger logger instance
68
127
  */
69
128
  uploadAdapter(adapter: string, isAdmin: boolean, forceUpload: boolean, subTree?: string, _logger?: MinimalLogger): Promise<string>;
129
+ /**
130
+ * Deep-merge additional values into the native section of an object
131
+ *
132
+ * @param target The target object to extend
133
+ * @param additional The additional values to merge in
134
+ */
70
135
  extendNative(target: Record<string, any>, additional: Record<string, unknown>): Record<string, any>;
136
+ /**
137
+ * Merge additional values into the common section of an instance object, preserving some attributes
138
+ *
139
+ * @param target The target common object to extend
140
+ * @param additional The additional values to merge in
141
+ * @param instance The instance id the common belongs to
142
+ */
71
143
  extendCommon(target: Record<string, any>, additional: Record<string, any>, instance: string): ioBroker.InstanceCommon;
72
144
  /**
73
145
  * Extends the `system.instance.adapter.<instanceNumber>` objects with the native properties from adapters io-package.json
@@ -87,5 +159,9 @@ export declare class Upload {
87
159
  */
88
160
  upgradeAdapterObjects(name: string, ioPack?: ioBroker.AdapterObject, logger?: MinimalLogger | typeof console): Promise<string>;
89
161
  }
162
+ /**
163
+ * @param options The process command options
164
+ */
165
+ export declare function processCommandUpload(options: ProcessCommandOptions): void;
90
166
  export {};
91
167
  //# sourceMappingURL=setupUpload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupUpload.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/setupUpload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupUpload.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/setupUpload.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,18 @@
7
7
  *
8
8
  */
9
9
  import fs from 'fs-extra';
10
- import { tools } from '@iobroker/js-controller-common';
10
+ import { tools, EXIT_CODES } from '@iobroker/js-controller-common';
11
11
  import deepClone from 'deep-clone';
12
12
  import { isDeepStrictEqual } from 'node:util';
13
13
  import axios from 'axios';
14
14
  import mime from 'mime-types';
15
15
  import { join } from 'node:path';
16
+ import { dbConnect } from '../../lib/setup/dbConnection.js';
17
+ import { ProgressBar } from '../../lib/progressBar.js';
16
18
  const hostname = tools.getHostName();
19
+ /**
20
+ * CLI command to upload adapter files into the objects database
21
+ */
17
22
  export class Upload {
18
23
  states;
19
24
  objects;
@@ -22,6 +27,9 @@ export class Upload {
22
27
  sendToHostFromCliAsync;
23
28
  callbacks = {};
24
29
  lastProgressUpdate = Date.now();
30
+ /**
31
+ * @param _options The states and objects database clients
32
+ */
25
33
  constructor(_options) {
26
34
  const options = _options || {};
27
35
  if (!options.states) {
@@ -34,6 +42,11 @@ export class Upload {
34
42
  this.objects = options.objects;
35
43
  this.sendToHostFromCliAsync = tools.promisifyNoError(this.sendToHostFromCli);
36
44
  }
45
+ /**
46
+ * Filter the given hosts to those that are currently alive
47
+ *
48
+ * @param hosts The hosts to check
49
+ */
37
50
  async checkHostsIfAlive(hosts) {
38
51
  const result = [];
39
52
  if (hosts) {
@@ -46,6 +59,11 @@ export class Upload {
46
59
  }
47
60
  return result;
48
61
  }
62
+ /**
63
+ * Get the list of known hosts
64
+ *
65
+ * @param onlyAlive Whether to only return hosts that are currently alive
66
+ */
49
67
  async getHosts(onlyAlive) {
50
68
  const hosts = [];
51
69
  try {
@@ -71,7 +89,11 @@ export class Upload {
71
89
  }
72
90
  return hosts;
73
91
  }
74
- // Check if some adapters must be restarted and restart them
92
+ /**
93
+ * Check if some adapters must be restarted because of the given adapter's files and restart them
94
+ *
95
+ * @param adapter The adapter whose dependents should be restarted
96
+ */
75
97
  async checkRestartOther(adapter) {
76
98
  const adapterDir = tools.getAdapterDir(adapter);
77
99
  if (!adapterDir) {
@@ -118,6 +140,14 @@ export class Upload {
118
140
  console.error(`Cannot parse ${adapterDir}/io-package.json: ${e.message}`);
119
141
  }
120
142
  }
143
+ /**
144
+ * Send a message to a host from the CLI
145
+ *
146
+ * @param host The target host id
147
+ * @param command The command to send
148
+ * @param message The message payload
149
+ * @param callback Called with the host's response
150
+ */
121
151
  sendToHostFromCli(host, command, message, callback) {
122
152
  const time = Date.now();
123
153
  const from = `system.host.${hostname}_cli_${time}`;
@@ -126,7 +156,7 @@ export class Upload {
126
156
  callback();
127
157
  }
128
158
  callback = null;
129
- this.states.unsubscribeMessage(from);
159
+ this.states.unsubscribeMessage(from).catch(e => console.error(`Cannot unsubscribe: ${e.message}`));
130
160
  // @ts-expect-error todo: I don't think this works
131
161
  this.states.onChange = null;
132
162
  }, 60_000);
@@ -141,7 +171,7 @@ export class Upload {
141
171
  callback(msg && msg.message);
142
172
  callback = null;
143
173
  clearTimeout(timeout);
144
- this.states.unsubscribeMessage(from);
174
+ this.states.unsubscribeMessage(from).catch(e => console.error(`Cannot unsubscribe: ${e.message}`));
145
175
  // @ts-expect-error
146
176
  this.states.onChange = null;
147
177
  }
@@ -164,9 +194,14 @@ export class Upload {
164
194
  }
165
195
  this.callbacks[`_${obj.callback.id}`] = { cb: callback };
166
196
  // we cannot receive answers from hosts in CLI, so this command is "fire and forget"
167
- this.states.pushMessage(host, obj);
197
+ this.states.pushMessage(host, obj).catch(e => console.error(`Cannot push message: ${e.message}`));
168
198
  });
169
199
  }
200
+ /**
201
+ * Upload the files of all given adapters from every host
202
+ *
203
+ * @param adapters The adapters to upload
204
+ */
170
205
  async uploadAdapterFullAsync(adapters) {
171
206
  if (adapters?.length) {
172
207
  const liveHosts = await this.getHosts(true);
@@ -278,8 +313,14 @@ export class Upload {
278
313
  }
279
314
  return `${adapter}/${target}`;
280
315
  }
316
+ /**
317
+ * Delete the given files from the objects database
318
+ *
319
+ * @param files The files to delete
320
+ * @param logger Logger used to report errors
321
+ */
281
322
  async eraseFiles(files, logger) {
282
- if (files && files.length) {
323
+ if (files?.length) {
283
324
  for (const file of files) {
284
325
  try {
285
326
  await this.objects.unlinkAsync(file.adapter, file.path);
@@ -336,9 +377,22 @@ export class Upload {
336
377
  }
337
378
  return { filesToDelete: _files, dirs: _dirs };
338
379
  }
380
+ /**
381
+ * Upload the files of a single adapter into the objects database
382
+ *
383
+ * @param adapter The adapter whose files are uploaded
384
+ * @param isAdmin Whether the admin files should be uploaded
385
+ * @param files The files to upload
386
+ * @param id The upload state id used to report progress
387
+ * @param logger Logger used to report progress
388
+ */
339
389
  async upload(adapter, isAdmin, files, id, logger) {
340
390
  const uploadID = `system.adapter.${adapter}.upload`;
341
391
  await this.states.setState(uploadID, { val: 0, ack: true });
392
+ // A bar only makes sense when the output goes to a terminal which can overwrite its own
393
+ // line, and when it goes to the console at all - an upload triggered by the controller
394
+ // writes through a real logger into iobroker.log, where control characters are noise.
395
+ const progress = files.length && logger === console && ProgressBar.isSupported() ? new ProgressBar(id, files.length) : null;
342
396
  for (let f = 0; f < files.length; f++) {
343
397
  const file = files[f];
344
398
  // do not upload '.gitignore' files. Todo: add other exceptions
@@ -354,7 +408,10 @@ export class Upload {
354
408
  let attName = attNameArr.pop();
355
409
  attName = attName.split('/').slice(2).join('/');
356
410
  const remainingFiles = files.length - f - 1;
357
- if (remainingFiles >= 100) {
411
+ if (progress) {
412
+ progress.update(f + 1);
413
+ }
414
+ else if (remainingFiles >= 100) {
358
415
  (!f || !(remainingFiles % 50)) &&
359
416
  logger.log(`upload [${remainingFiles}] ${id} ${file} ${attName} ${mimeType}`);
360
417
  }
@@ -382,9 +439,13 @@ export class Upload {
382
439
  await this.objects.writeFileAsync(id, attName, content, { mimeType: mimeType || undefined });
383
440
  }
384
441
  catch (e) {
442
+ // close the bar's line first, otherwise the message lands inside it and the next
443
+ // redraw overwrites it
444
+ progress?.interrupt();
385
445
  console.error(`Error: Cannot upload ${file}: ${e.message}`);
386
446
  }
387
447
  }
448
+ progress?.finish();
388
449
  // Set upload progress to 0;
389
450
  if (!isAdmin && files.length) {
390
451
  await this.states.setState(uploadID, { val: 0, ack: true });
@@ -392,6 +453,12 @@ export class Upload {
392
453
  return adapter;
393
454
  }
394
455
  // Read synchronous all files recursively from local directory
456
+ /**
457
+ * Recursively collect all file paths below the given directory
458
+ *
459
+ * @param dir The directory to walk
460
+ * @param _results Accumulator of results collected so far
461
+ */
395
462
  walk(dir, _results) {
396
463
  const results = _results || [];
397
464
  try {
@@ -537,6 +604,12 @@ export class Upload {
537
604
  }
538
605
  return adapter;
539
606
  }
607
+ /**
608
+ * Deep-merge additional values into the native section of an object
609
+ *
610
+ * @param target The target object to extend
611
+ * @param additional The additional values to merge in
612
+ */
540
613
  extendNative(target, additional) {
541
614
  if (tools.isObject(additional)) {
542
615
  for (const [attr, attrData] of Object.entries(additional)) {
@@ -558,6 +631,13 @@ export class Upload {
558
631
  }
559
632
  return target;
560
633
  }
634
+ /**
635
+ * Merge additional values into the common section of an instance object, preserving some attributes
636
+ *
637
+ * @param target The target common object to extend
638
+ * @param additional The additional values to merge in
639
+ * @param instance The instance id the common belongs to
640
+ */
561
641
  extendCommon(target, additional, instance) {
562
642
  if (tools.isObject(additional)) {
563
643
  const preserveAttributes = [
@@ -755,4 +835,81 @@ export class Upload {
755
835
  return name;
756
836
  }
757
837
  }
838
+ /**
839
+ * @param options The process command options
840
+ */
841
+ export function processCommandUpload(options) {
842
+ const { args, params, callback } = options;
843
+ const { showHelp } = options.commandOptions;
844
+ const name = args[0];
845
+ const subTree = args[1];
846
+ if (name) {
847
+ dbConnect(params, async ({ objects, states }) => {
848
+ const upload = new Upload({ states, objects });
849
+ if (name === 'all') {
850
+ try {
851
+ const objs = await objects.getObjectListAsync({
852
+ startkey: 'system.adapter.',
853
+ endkey: 'system.adapter.\u9999',
854
+ });
855
+ if (objs) {
856
+ const adapters = [];
857
+ for (const row of objs.rows) {
858
+ if (row.value.type !== 'adapter') {
859
+ continue;
860
+ }
861
+ adapters.push(tools.isObject(row.value.common.name)
862
+ ? row.value.common.name.en
863
+ : row.value.common.name);
864
+ }
865
+ await upload.uploadAdapterFullAsync(adapters);
866
+ }
867
+ callback();
868
+ }
869
+ catch (err) {
870
+ console.error(`Cannot upload all adapters: ${err.message}`);
871
+ return void callback(EXIT_CODES.CANNOT_UPLOAD_DATA);
872
+ }
873
+ }
874
+ else {
875
+ // if upload of file
876
+ if (name.includes('.')) {
877
+ if (!subTree) {
878
+ console.log(`Please specify target name, like:\n${tools.appName} upload /file/picture.png /vis-2.0/main/img/picture.png`);
879
+ return void callback(EXIT_CODES.INVALID_ARGUMENTS);
880
+ }
881
+ try {
882
+ const newName = await upload.uploadFile(name, subTree);
883
+ console.log(`File "${name}" is successfully saved under ${newName}`);
884
+ return void callback();
885
+ }
886
+ catch (err) {
887
+ console.error(`Cannot upload file "${name}": ${err.message}`);
888
+ return void callback(EXIT_CODES.CANNOT_UPLOAD_DATA);
889
+ }
890
+ }
891
+ else {
892
+ try {
893
+ if (subTree) {
894
+ await upload.uploadAdapter(name, false, true, subTree);
895
+ }
896
+ else {
897
+ await upload.uploadAdapterFullAsync([name]);
898
+ }
899
+ return void callback();
900
+ }
901
+ catch (err) {
902
+ console.error(`Cannot upload files "${name}": ${err.message}`);
903
+ return void callback(EXIT_CODES.CANNOT_UPLOAD_DATA);
904
+ }
905
+ }
906
+ }
907
+ });
908
+ }
909
+ else {
910
+ console.log('No adapter name found!');
911
+ showHelp();
912
+ return void callback(EXIT_CODES.INVALID_ADAPTER_ID);
913
+ }
914
+ }
758
915
  //# sourceMappingURL=setupUpload.js.map