@iobroker/js-controller-cli 7.2.3 → 8.0.0-alpha.1-20260921-e5941ca8a
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.
- package/build/cjs/index.js +3 -3
- package/build/cjs/lib/_Types.d.ts +8 -1
- package/build/cjs/lib/cli/cliCert.d.ts +7 -4
- package/build/cjs/lib/cli/cliCert.js +10 -6
- package/build/cjs/lib/cli/cliCert.js.map +2 -2
- package/build/cjs/lib/cli/cliCommand.d.ts +63 -15
- package/build/cjs/lib/cli/cliCommand.js +8 -1
- package/build/cjs/lib/cli/cliCommand.js.map +2 -2
- package/build/cjs/lib/cli/cliCompact.d.ts +5 -2
- package/build/cjs/lib/cli/cliCompact.js +9 -2
- package/build/cjs/lib/cli/cliCompact.js.map +2 -2
- package/build/cjs/lib/cli/cliDebug.d.ts +5 -2
- package/build/cjs/lib/cli/cliDebug.js +8 -1
- package/build/cjs/lib/cli/cliDebug.js.map +2 -2
- package/build/cjs/lib/cli/cliHost.d.ts +13 -10
- package/build/cjs/lib/cli/cliHost.js +13 -5
- package/build/cjs/lib/cli/cliHost.js.map +2 -2
- package/build/cjs/lib/cli/cliLogs.d.ts +9 -3
- package/build/cjs/lib/cli/cliLogs.js +12 -1
- package/build/cjs/lib/cli/cliLogs.js.map +2 -2
- package/build/cjs/lib/cli/cliMessage.d.ts +2 -1
- package/build/cjs/lib/cli/cliMessage.js +5 -0
- package/build/cjs/lib/cli/cliMessage.js.map +2 -2
- package/build/cjs/lib/cli/cliObjects.d.ts +21 -18
- package/build/cjs/lib/cli/cliObjects.js +51 -33
- package/build/cjs/lib/cli/cliObjects.js.map +2 -2
- package/build/cjs/lib/cli/cliPlugin.d.ts +3 -3
- package/build/cjs/lib/cli/cliPlugin.js +6 -0
- package/build/cjs/lib/cli/cliPlugin.js.map +2 -2
- package/build/cjs/lib/cli/cliProcess.d.ts +17 -7
- package/build/cjs/lib/cli/cliProcess.js +77 -24
- package/build/cjs/lib/cli/cliProcess.js.map +3 -3
- package/build/cjs/lib/cli/cliStates.d.ts +7 -4
- package/build/cjs/lib/cli/cliStates.js +14 -6
- package/build/cjs/lib/cli/cliStates.js.map +2 -2
- package/build/cjs/lib/cli/cliTools.js +11 -0
- package/build/cjs/lib/cli/cliTools.js.map +1 -1
- package/build/cjs/lib/cli/messages.js +47 -46
- package/build/cjs/lib/cli/messages.js.map +1 -1
- package/build/cjs/lib/progressBar.d.ts +59 -0
- package/build/cjs/lib/progressBar.js +115 -0
- package/build/cjs/lib/progressBar.js.map +7 -0
- package/build/cjs/lib/setup/customError.d.ts +4 -0
- package/build/cjs/lib/setup/customError.js +7 -0
- package/build/cjs/lib/setup/customError.js.map +2 -2
- package/build/cjs/lib/setup/dbConnection.js +69 -64
- package/build/cjs/lib/setup/dbConnection.js.map +3 -3
- package/build/cjs/lib/setup/formatters.d.ts +4 -4
- package/build/cjs/lib/setup/formatters.js +5 -0
- package/build/cjs/lib/setup/formatters.js.map +2 -2
- package/build/cjs/lib/setup/multihostClient.js +6 -2
- package/build/cjs/lib/setup/multihostClient.js.map +1 -1
- package/build/cjs/lib/setup/pluginInfos.d.ts +5 -0
- package/build/cjs/lib/setup/pluginInfos.js +2 -0
- package/build/cjs/lib/setup/pluginInfos.js.map +2 -2
- package/build/cjs/lib/setup/setupBackup.d.ts +53 -0
- package/build/cjs/lib/setup/setupBackup.js +125 -14
- package/build/cjs/lib/setup/setupBackup.js.map +3 -3
- package/build/cjs/lib/setup/setupInstall.d.ts +51 -15
- package/build/cjs/lib/setup/setupInstall.js +212 -28
- package/build/cjs/lib/setup/setupInstall.js.map +2 -2
- package/build/cjs/lib/setup/setupLicense.d.ts +13 -0
- package/build/cjs/lib/setup/setupLicense.js +33 -2
- package/build/cjs/lib/setup/setupLicense.js.map +2 -2
- package/build/cjs/lib/setup/setupList.d.ts +55 -1
- package/build/cjs/lib/setup/setupList.js +78 -24
- package/build/cjs/lib/setup/setupList.js.map +3 -3
- package/build/cjs/lib/setup/setupMultihost.d.ts +7 -0
- package/build/cjs/lib/setup/setupMultihost.js +78 -11
- package/build/cjs/lib/setup/setupMultihost.js.map +3 -3
- package/build/cjs/lib/setup/setupPacketManager.d.ts +10 -0
- package/build/cjs/lib/setup/setupPacketManager.js +16 -6
- package/build/cjs/lib/setup/setupPacketManager.js.map +2 -2
- package/build/cjs/lib/setup/setupRepo.d.ts +19 -0
- package/build/cjs/lib/setup/setupRepo.js +141 -13
- package/build/cjs/lib/setup/setupRepo.js.map +2 -2
- package/build/cjs/lib/setup/setupSetup.d.ts +34 -0
- package/build/cjs/lib/setup/setupSetup.js +209 -35
- package/build/cjs/lib/setup/setupSetup.js.map +3 -3
- package/build/cjs/lib/setup/setupUpgrade.d.ts +13 -2
- package/build/cjs/lib/setup/setupUpgrade.js +72 -12
- package/build/cjs/lib/setup/setupUpgrade.js.map +2 -2
- package/build/cjs/lib/setup/setupUpload.d.ts +77 -1
- package/build/cjs/lib/setup/setupUpload.js +152 -9
- package/build/cjs/lib/setup/setupUpload.js.map +2 -2
- package/build/cjs/lib/setup/setupUsers.d.ts +44 -14
- package/build/cjs/lib/setup/setupUsers.js +330 -17
- package/build/cjs/lib/setup/setupUsers.js.map +2 -2
- package/build/cjs/lib/setup/setupVendor.d.ts +14 -1
- package/build/cjs/lib/setup/setupVendor.js +40 -8
- package/build/cjs/lib/setup/setupVendor.js.map +2 -2
- package/build/cjs/lib/setup/setupVisDebug.d.ts +16 -2
- package/build/cjs/lib/setup/setupVisDebug.js +41 -17
- package/build/cjs/lib/setup/setupVisDebug.js.map +3 -3
- package/build/cjs/lib/setup/utils.d.ts +1 -1
- package/build/cjs/lib/setup/utils.js +13 -9
- package/build/cjs/lib/setup/utils.js.map +3 -3
- package/build/cjs/lib/setup.d.ts +1 -1
- package/build/cjs/lib/setup.js +858 -1758
- package/build/cjs/lib/setup.js.map +3 -3
- package/build/esm/lib/_Types.d.ts +8 -1
- package/build/esm/lib/_Types.d.ts.map +1 -1
- package/build/esm/lib/cli/cliCert.d.ts +7 -4
- package/build/esm/lib/cli/cliCert.d.ts.map +1 -1
- package/build/esm/lib/cli/cliCert.js +6 -6
- package/build/esm/lib/cli/cliCert.js.map +1 -1
- package/build/esm/lib/cli/cliCommand.d.ts +63 -15
- package/build/esm/lib/cli/cliCommand.d.ts.map +1 -1
- package/build/esm/lib/cli/cliCommand.js +4 -1
- package/build/esm/lib/cli/cliCommand.js.map +1 -1
- package/build/esm/lib/cli/cliCompact.d.ts +5 -2
- package/build/esm/lib/cli/cliCompact.d.ts.map +1 -1
- package/build/esm/lib/cli/cliCompact.js +5 -2
- package/build/esm/lib/cli/cliCompact.js.map +1 -1
- package/build/esm/lib/cli/cliDebug.d.ts +5 -2
- package/build/esm/lib/cli/cliDebug.d.ts.map +1 -1
- package/build/esm/lib/cli/cliDebug.js +4 -1
- package/build/esm/lib/cli/cliDebug.js.map +1 -1
- package/build/esm/lib/cli/cliHost.d.ts +13 -10
- package/build/esm/lib/cli/cliHost.d.ts.map +1 -1
- package/build/esm/lib/cli/cliHost.js +8 -5
- package/build/esm/lib/cli/cliHost.js.map +1 -1
- package/build/esm/lib/cli/cliLogs.d.ts +9 -3
- package/build/esm/lib/cli/cliLogs.d.ts.map +1 -1
- package/build/esm/lib/cli/cliLogs.js +8 -1
- package/build/esm/lib/cli/cliLogs.js.map +1 -1
- package/build/esm/lib/cli/cliMessage.d.ts +2 -1
- package/build/esm/lib/cli/cliMessage.d.ts.map +1 -1
- package/build/esm/lib/cli/cliMessage.js +1 -0
- package/build/esm/lib/cli/cliMessage.js.map +1 -1
- package/build/esm/lib/cli/cliObjects.d.ts +21 -18
- package/build/esm/lib/cli/cliObjects.d.ts.map +1 -1
- package/build/esm/lib/cli/cliObjects.js +44 -38
- package/build/esm/lib/cli/cliObjects.js.map +1 -1
- package/build/esm/lib/cli/cliPlugin.d.ts +3 -3
- package/build/esm/lib/cli/cliPlugin.d.ts.map +1 -1
- package/build/esm/lib/cli/cliPlugin.js +1 -1
- package/build/esm/lib/cli/cliPlugin.js.map +1 -1
- package/build/esm/lib/cli/cliProcess.d.ts +17 -7
- package/build/esm/lib/cli/cliProcess.d.ts.map +1 -1
- package/build/esm/lib/cli/cliProcess.js +73 -12
- package/build/esm/lib/cli/cliProcess.js.map +1 -1
- package/build/esm/lib/cli/cliStates.d.ts +7 -4
- package/build/esm/lib/cli/cliStates.d.ts.map +1 -1
- package/build/esm/lib/cli/cliStates.js +6 -2
- package/build/esm/lib/cli/cliStates.js.map +1 -1
- package/build/esm/lib/progressBar.d.ts +59 -0
- package/build/esm/lib/progressBar.d.ts.map +1 -0
- package/build/esm/lib/progressBar.js +104 -0
- package/build/esm/lib/progressBar.js.map +1 -0
- package/build/esm/lib/setup/customError.d.ts +4 -0
- package/build/esm/lib/setup/customError.d.ts.map +1 -1
- package/build/esm/lib/setup/customError.js +3 -0
- package/build/esm/lib/setup/customError.js.map +1 -1
- package/build/esm/lib/setup/dbConnection.d.ts.map +1 -1
- package/build/esm/lib/setup/dbConnection.js +10 -13
- package/build/esm/lib/setup/dbConnection.js.map +1 -1
- package/build/esm/lib/setup/formatters.d.ts +4 -4
- package/build/esm/lib/setup/formatters.js +4 -4
- package/build/esm/lib/setup/pluginInfos.d.ts +5 -0
- package/build/esm/lib/setup/pluginInfos.d.ts.map +1 -1
- package/build/esm/lib/setup/pluginInfos.js +5 -0
- package/build/esm/lib/setup/pluginInfos.js.map +1 -1
- package/build/esm/lib/setup/setupBackup.d.ts +53 -0
- package/build/esm/lib/setup/setupBackup.d.ts.map +1 -1
- package/build/esm/lib/setup/setupBackup.js +132 -13
- package/build/esm/lib/setup/setupBackup.js.map +1 -1
- package/build/esm/lib/setup/setupInstall.d.ts +51 -15
- package/build/esm/lib/setup/setupInstall.d.ts.map +1 -1
- package/build/esm/lib/setup/setupInstall.js +228 -23
- package/build/esm/lib/setup/setupInstall.js.map +1 -1
- package/build/esm/lib/setup/setupLicense.d.ts +13 -0
- package/build/esm/lib/setup/setupLicense.d.ts.map +1 -1
- package/build/esm/lib/setup/setupLicense.js +31 -1
- package/build/esm/lib/setup/setupLicense.js.map +1 -1
- package/build/esm/lib/setup/setupList.d.ts +55 -1
- package/build/esm/lib/setup/setupList.d.ts.map +1 -1
- package/build/esm/lib/setup/setupList.js +61 -8
- package/build/esm/lib/setup/setupList.js.map +1 -1
- package/build/esm/lib/setup/setupMultihost.d.ts +7 -0
- package/build/esm/lib/setup/setupMultihost.d.ts.map +1 -1
- package/build/esm/lib/setup/setupMultihost.js +85 -6
- package/build/esm/lib/setup/setupMultihost.js.map +1 -1
- package/build/esm/lib/setup/setupPacketManager.d.ts +10 -0
- package/build/esm/lib/setup/setupPacketManager.d.ts.map +1 -1
- package/build/esm/lib/setup/setupPacketManager.js +9 -0
- package/build/esm/lib/setup/setupPacketManager.js.map +1 -1
- package/build/esm/lib/setup/setupRepo.d.ts +19 -0
- package/build/esm/lib/setup/setupRepo.d.ts.map +1 -1
- package/build/esm/lib/setup/setupRepo.js +164 -14
- package/build/esm/lib/setup/setupRepo.js.map +1 -1
- package/build/esm/lib/setup/setupSetup.d.ts +34 -0
- package/build/esm/lib/setup/setupSetup.d.ts.map +1 -1
- package/build/esm/lib/setup/setupSetup.js +218 -21
- package/build/esm/lib/setup/setupSetup.js.map +1 -1
- package/build/esm/lib/setup/setupUpgrade.d.ts +13 -2
- package/build/esm/lib/setup/setupUpgrade.d.ts.map +1 -1
- package/build/esm/lib/setup/setupUpgrade.js +70 -6
- package/build/esm/lib/setup/setupUpgrade.js.map +1 -1
- package/build/esm/lib/setup/setupUpload.d.ts +77 -1
- package/build/esm/lib/setup/setupUpload.d.ts.map +1 -1
- package/build/esm/lib/setup/setupUpload.js +164 -7
- package/build/esm/lib/setup/setupUpload.js.map +1 -1
- package/build/esm/lib/setup/setupUsers.d.ts +44 -14
- package/build/esm/lib/setup/setupUsers.d.ts.map +1 -1
- package/build/esm/lib/setup/setupUsers.js +346 -14
- package/build/esm/lib/setup/setupUsers.js.map +1 -1
- package/build/esm/lib/setup/setupVendor.d.ts +14 -1
- package/build/esm/lib/setup/setupVendor.d.ts.map +1 -1
- package/build/esm/lib/setup/setupVendor.js +33 -2
- package/build/esm/lib/setup/setupVendor.js.map +1 -1
- package/build/esm/lib/setup/setupVisDebug.d.ts +16 -2
- package/build/esm/lib/setup/setupVisDebug.d.ts.map +1 -1
- package/build/esm/lib/setup/setupVisDebug.js +39 -14
- package/build/esm/lib/setup/setupVisDebug.js.map +1 -1
- package/build/esm/lib/setup/utils.d.ts +1 -1
- package/build/esm/lib/setup/utils.d.ts.map +1 -1
- package/build/esm/lib/setup/utils.js +2 -4
- package/build/esm/lib/setup/utils.js.map +1 -1
- package/build/esm/lib/setup.d.ts +1 -1
- package/build/esm/lib/setup.d.ts.map +1 -1
- package/build/esm/lib/setup.js +959 -1910
- package/build/esm/lib/setup.js.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +14 -14
|
@@ -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
|
-
|
|
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":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;
|
|
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
|
-
|
|
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
|
|
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 (
|
|
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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupUpload.js","sourceRoot":"","sources":["../../../../src/lib/setup/setupUpload.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setupUpload.js","sourceRoot":"","sources":["../../../../src/lib/setup/setupUpload.ts"],"names":[],"mappings":"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"}
|