clever-tools 4.10.0 → 5.0.0
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/bin/clever.js +5 -10
- package/package.json +27 -27
- package/src/clever-client/drains.js +17 -0
- package/src/commands/accesslogs/accesslogs.command.js +35 -18
- package/src/commands/accesslogs/accesslogs.docs.md +1 -1
- package/src/commands/addon/addon.docs.md +2 -2
- package/src/commands/config-provider/config-provider.docs.md +5 -5
- package/src/commands/create/create.command.js +8 -1
- package/src/commands/database/database.docs.md +2 -2
- package/src/commands/deploy/deploy.docs.md +7 -6
- package/src/commands/drain/drain.args.js +6 -0
- package/src/commands/drain/drain.check.command.js +43 -0
- package/src/commands/drain/drain.create.betterstack.command.js +36 -0
- package/src/commands/drain/drain.create.command.js +0 -118
- package/src/commands/drain/drain.create.datadog.command.js +27 -0
- package/src/commands/drain/drain.create.elasticsearch.command.js +48 -0
- package/src/commands/drain/drain.create.newrelic.command.js +36 -0
- package/src/commands/drain/drain.create.ovh-tcp.command.js +29 -0
- package/src/commands/drain/drain.create.raw-http.command.js +30 -0
- package/src/commands/drain/drain.create.splunk.command.js +61 -0
- package/src/commands/drain/drain.create.syslog-tcp.command.js +29 -0
- package/src/commands/drain/drain.create.syslog-udp.command.js +29 -0
- package/src/commands/drain/drain.docs.md +296 -7
- package/src/commands/drain/drain.options.js +26 -0
- package/src/commands/features/features.list.command.js +6 -13
- package/src/commands/global.commands.js +25 -1
- package/src/commands/global.options.js +8 -0
- package/src/commands/k8s/k8s.docs.md +17 -17
- package/src/commands/keycloak/keycloak.docs.md +11 -11
- package/src/commands/kv/kv.docs.md +1 -1
- package/src/commands/link/link.docs.md +1 -1
- package/src/commands/login/login.command.js +11 -1
- package/src/commands/matomo/matomo.docs.md +6 -6
- package/src/commands/metabase/metabase.docs.md +9 -9
- package/src/commands/ng/ng.docs.md +10 -10
- package/src/commands/oauth-consumers/oauth-consumers.docs.md +4 -4
- package/src/commands/otoroshi/otoroshi.docs.md +13 -13
- package/src/commands/profile/profile.switch.command.js +5 -1
- package/src/commands/service/service.docs.md +4 -4
- package/src/commands/ssh/ssh.command.js +7 -1
- package/src/config/features.js +61 -29
- package/src/format-table.js +14 -10
- package/src/initial-setup.js +13 -0
- package/src/initial-update-notifier.js +2 -5
- package/src/lib/access-logs-clf.js +52 -0
- package/src/lib/access-logs-transport.js +29 -0
- package/src/lib/cliparse-patched.js +19 -1
- package/src/lib/define-command.types.d.ts +7 -2
- package/src/lib/k8s.js +1 -0
- package/src/lib/operator-commands.js +1 -0
- package/src/lib/profile.js +8 -1
- package/src/lib/prompts.js +30 -2
- package/src/models/drain.js +39 -12
- package/src/models/git-isomorphic.js +16 -1
- package/src/models/git-system.js +2 -2
- package/src/models/git.js +19 -1
- package/src/models/oauth-consumer.js +1 -1
- package/src/models/send-to-api.js +15 -0
|
@@ -39,8 +39,18 @@ import { domainFavouriteSetCommand } from './domain/domain.favourite.set.command
|
|
|
39
39
|
import { domainFavouriteUnsetCommand } from './domain/domain.favourite.unset.command.js';
|
|
40
40
|
import { domainOverviewCommand } from './domain/domain.overview.command.js';
|
|
41
41
|
import { domainRmCommand } from './domain/domain.rm.command.js';
|
|
42
|
+
import { drainCheckCommand } from './drain/drain.check.command.js';
|
|
42
43
|
import { drainCommand } from './drain/drain.command.js';
|
|
44
|
+
import { drainCreateBetterstackCommand } from './drain/drain.create.betterstack.command.js';
|
|
43
45
|
import { drainCreateCommand } from './drain/drain.create.command.js';
|
|
46
|
+
import { drainCreateDatadogCommand } from './drain/drain.create.datadog.command.js';
|
|
47
|
+
import { drainCreateElasticsearchCommand } from './drain/drain.create.elasticsearch.command.js';
|
|
48
|
+
import { drainCreateNewRelicCommand } from './drain/drain.create.newrelic.command.js';
|
|
49
|
+
import { drainCreateOvhTcpCommand } from './drain/drain.create.ovh-tcp.command.js';
|
|
50
|
+
import { drainCreateRawHttpCommand } from './drain/drain.create.raw-http.command.js';
|
|
51
|
+
import { drainCreateSplunkCommand } from './drain/drain.create.splunk.command.js';
|
|
52
|
+
import { drainCreateSyslogTcpCommand } from './drain/drain.create.syslog-tcp.command.js';
|
|
53
|
+
import { drainCreateSyslogUdpCommand } from './drain/drain.create.syslog-udp.command.js';
|
|
44
54
|
import { drainDisableCommand } from './drain/drain.disable.command.js';
|
|
45
55
|
import { drainEnableCommand } from './drain/drain.enable.command.js';
|
|
46
56
|
import { drainGetCommand } from './drain/drain.get.command.js';
|
|
@@ -268,7 +278,21 @@ export const globalCommands = {
|
|
|
268
278
|
drain: [
|
|
269
279
|
drainCommand,
|
|
270
280
|
{
|
|
271
|
-
|
|
281
|
+
check: drainCheckCommand,
|
|
282
|
+
create: [
|
|
283
|
+
drainCreateCommand,
|
|
284
|
+
{
|
|
285
|
+
betterstack: drainCreateBetterstackCommand,
|
|
286
|
+
datadog: drainCreateDatadogCommand,
|
|
287
|
+
elasticsearch: drainCreateElasticsearchCommand,
|
|
288
|
+
newrelic: drainCreateNewRelicCommand,
|
|
289
|
+
'ovh-tcp': drainCreateOvhTcpCommand,
|
|
290
|
+
'raw-http': drainCreateRawHttpCommand,
|
|
291
|
+
splunk: drainCreateSplunkCommand,
|
|
292
|
+
'syslog-tcp': drainCreateSyslogTcpCommand,
|
|
293
|
+
'syslog-udp': drainCreateSyslogUdpCommand,
|
|
294
|
+
},
|
|
295
|
+
],
|
|
272
296
|
disable: drainDisableCommand,
|
|
273
297
|
enable: drainEnableCommand,
|
|
274
298
|
get: drainGetCommand,
|
|
@@ -28,6 +28,14 @@ export const logsFormatOption = defineOption({
|
|
|
28
28
|
placeholder: 'format',
|
|
29
29
|
});
|
|
30
30
|
|
|
31
|
+
export const accessLogsFormatOption = defineOption({
|
|
32
|
+
name: 'format',
|
|
33
|
+
schema: z.enum(['human', 'json', 'json-stream', 'clf']).default('human'),
|
|
34
|
+
description: 'Output format (clf only outputs HTTP access logs)',
|
|
35
|
+
aliases: ['F'],
|
|
36
|
+
placeholder: 'format',
|
|
37
|
+
});
|
|
38
|
+
|
|
31
39
|
export const beforeOption = defineOption({
|
|
32
40
|
name: 'before',
|
|
33
41
|
schema: z.string().transform(date).optional(),
|
|
@@ -24,7 +24,7 @@ clever k8s activity <cluster-id|cluster-name> [options]
|
|
|
24
24
|
|
|
25
25
|
|Name|Description|
|
|
26
26
|
|---|---|
|
|
27
|
-
|`cluster-id
|
|
27
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
28
28
|
|
|
29
29
|
### ⚙️ Options
|
|
30
30
|
|
|
@@ -46,7 +46,7 @@ clever k8s add-persistent-storage <cluster-id|cluster-name> [options]
|
|
|
46
46
|
|
|
47
47
|
|Name|Description|
|
|
48
48
|
|---|---|
|
|
49
|
-
|`cluster-id
|
|
49
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
50
50
|
|
|
51
51
|
### ⚙️ Options
|
|
52
52
|
|
|
@@ -97,7 +97,7 @@ clever k8s delete <cluster-id|cluster-name> [options]
|
|
|
97
97
|
|
|
98
98
|
|Name|Description|
|
|
99
99
|
|---|---|
|
|
100
|
-
|`cluster-id
|
|
100
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
101
101
|
|
|
102
102
|
### ⚙️ Options
|
|
103
103
|
|
|
@@ -118,7 +118,7 @@ clever k8s get <cluster-id|cluster-name> [options]
|
|
|
118
118
|
|
|
119
119
|
|Name|Description|
|
|
120
120
|
|---|---|
|
|
121
|
-
|`cluster-id
|
|
121
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
122
122
|
|
|
123
123
|
### ⚙️ Options
|
|
124
124
|
|
|
@@ -139,7 +139,7 @@ clever k8s get-kubeconfig <cluster-id|cluster-name> [options]
|
|
|
139
139
|
|
|
140
140
|
|Name|Description|
|
|
141
141
|
|---|---|
|
|
142
|
-
|`cluster-id
|
|
142
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
143
143
|
|
|
144
144
|
### ⚙️ Options
|
|
145
145
|
|
|
@@ -182,7 +182,7 @@ clever k8s nodegroups create <cluster-id|cluster-name> <nodegroup-name> <flavor:
|
|
|
182
182
|
|
|
183
183
|
|Name|Description|
|
|
184
184
|
|---|---|
|
|
185
|
-
|`cluster-id
|
|
185
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
186
186
|
|`nodegroup-name`|Node group name (lowercase RFC 1123, max 63 chars)|
|
|
187
187
|
|`flavor:count`|Node group flavor and target node count (format: <flavor>:<count>, e.g.: XS:3)|
|
|
188
188
|
|
|
@@ -209,8 +209,8 @@ clever k8s nodegroups delete <cluster-id|cluster-name> <nodegroup-id|nodegroup-n
|
|
|
209
209
|
|
|
210
210
|
|Name|Description|
|
|
211
211
|
|---|---|
|
|
212
|
-
|`cluster-id
|
|
213
|
-
|`nodegroup-id
|
|
212
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
213
|
+
|`nodegroup-id\|nodegroup-name`|Kubernetes node group ID or name|
|
|
214
214
|
|
|
215
215
|
### ⚙️ Options
|
|
216
216
|
|
|
@@ -231,8 +231,8 @@ clever k8s nodegroups get <cluster-id|cluster-name> <nodegroup-id|nodegroup-name
|
|
|
231
231
|
|
|
232
232
|
|Name|Description|
|
|
233
233
|
|---|---|
|
|
234
|
-
|`cluster-id
|
|
235
|
-
|`nodegroup-id
|
|
234
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
235
|
+
|`nodegroup-id\|nodegroup-name`|Kubernetes node group ID or name|
|
|
236
236
|
|
|
237
237
|
### ⚙️ Options
|
|
238
238
|
|
|
@@ -253,7 +253,7 @@ clever k8s nodegroups list <cluster-id|cluster-name> [options]
|
|
|
253
253
|
|
|
254
254
|
|Name|Description|
|
|
255
255
|
|---|---|
|
|
256
|
-
|`cluster-id
|
|
256
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
257
257
|
|
|
258
258
|
### ⚙️ Options
|
|
259
259
|
|
|
@@ -274,8 +274,8 @@ clever k8s nodegroups update <cluster-id|cluster-name> <nodegroup-id|nodegroup-n
|
|
|
274
274
|
|
|
275
275
|
|Name|Description|
|
|
276
276
|
|---|---|
|
|
277
|
-
|`cluster-id
|
|
278
|
-
|`nodegroup-id
|
|
277
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
278
|
+
|`nodegroup-id\|nodegroup-name`|Kubernetes node group ID or name|
|
|
279
279
|
|
|
280
280
|
### ⚙️ Options
|
|
281
281
|
|
|
@@ -317,7 +317,7 @@ clever k8s update <cluster-id|cluster-name> [options]
|
|
|
317
317
|
|
|
318
318
|
|Name|Description|
|
|
319
319
|
|---|---|
|
|
320
|
-
|`cluster-id
|
|
320
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
321
321
|
|
|
322
322
|
### ⚙️ Options
|
|
323
323
|
|
|
@@ -342,7 +342,7 @@ clever k8s version <cluster-id|cluster-name> [options]
|
|
|
342
342
|
|
|
343
343
|
|Name|Description|
|
|
344
344
|
|---|---|
|
|
345
|
-
|`cluster-id
|
|
345
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
346
346
|
|
|
347
347
|
### ⚙️ Options
|
|
348
348
|
|
|
@@ -363,7 +363,7 @@ clever k8s version check <cluster-id|cluster-name> [options]
|
|
|
363
363
|
|
|
364
364
|
|Name|Description|
|
|
365
365
|
|---|---|
|
|
366
|
-
|`cluster-id
|
|
366
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
367
367
|
|
|
368
368
|
### ⚙️ Options
|
|
369
369
|
|
|
@@ -384,7 +384,7 @@ clever k8s version update <cluster-id|cluster-name> [options]
|
|
|
384
384
|
|
|
385
385
|
|Name|Description|
|
|
386
386
|
|---|---|
|
|
387
|
-
|`cluster-id
|
|
387
|
+
|`cluster-id\|cluster-name`|Kubernetes cluster ID or name|
|
|
388
388
|
|
|
389
389
|
### ⚙️ Options
|
|
390
390
|
|
|
@@ -30,7 +30,7 @@ clever keycloak disable-ng <addon-id|addon-name>
|
|
|
30
30
|
|
|
31
31
|
|Name|Description|
|
|
32
32
|
|---|---|
|
|
33
|
-
|`addon-id
|
|
33
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
34
34
|
|
|
35
35
|
## ➡️ `clever keycloak enable-ng` <kbd>Since 3.13.0</kbd>
|
|
36
36
|
|
|
@@ -44,7 +44,7 @@ clever keycloak enable-ng <addon-id|addon-name>
|
|
|
44
44
|
|
|
45
45
|
|Name|Description|
|
|
46
46
|
|---|---|
|
|
47
|
-
|`addon-id
|
|
47
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
48
48
|
|
|
49
49
|
## ➡️ `clever keycloak get` <kbd>Since 3.13.0</kbd>
|
|
50
50
|
|
|
@@ -58,7 +58,7 @@ clever keycloak get <addon-id|addon-name> [options]
|
|
|
58
58
|
|
|
59
59
|
|Name|Description|
|
|
60
60
|
|---|---|
|
|
61
|
-
|`addon-id
|
|
61
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
62
62
|
|
|
63
63
|
### ⚙️ Options
|
|
64
64
|
|
|
@@ -78,7 +78,7 @@ clever keycloak open <addon-id|addon-name>
|
|
|
78
78
|
|
|
79
79
|
|Name|Description|
|
|
80
80
|
|---|---|
|
|
81
|
-
|`addon-id
|
|
81
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
82
82
|
|
|
83
83
|
## ➡️ `clever keycloak open logs` <kbd>Since 3.13.0</kbd>
|
|
84
84
|
|
|
@@ -92,7 +92,7 @@ clever keycloak open logs <addon-id|addon-name>
|
|
|
92
92
|
|
|
93
93
|
|Name|Description|
|
|
94
94
|
|---|---|
|
|
95
|
-
|`addon-id
|
|
95
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
96
96
|
|
|
97
97
|
## ➡️ `clever keycloak open webui` <kbd>Since 3.13.0</kbd>
|
|
98
98
|
|
|
@@ -106,7 +106,7 @@ clever keycloak open webui <addon-id|addon-name>
|
|
|
106
106
|
|
|
107
107
|
|Name|Description|
|
|
108
108
|
|---|---|
|
|
109
|
-
|`addon-id
|
|
109
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
110
110
|
|
|
111
111
|
## ➡️ `clever keycloak rebuild` <kbd>Since 3.13.0</kbd>
|
|
112
112
|
|
|
@@ -120,7 +120,7 @@ clever keycloak rebuild <addon-id|addon-name>
|
|
|
120
120
|
|
|
121
121
|
|Name|Description|
|
|
122
122
|
|---|---|
|
|
123
|
-
|`addon-id
|
|
123
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
124
124
|
|
|
125
125
|
## ➡️ `clever keycloak restart` <kbd>Since 3.13.0</kbd>
|
|
126
126
|
|
|
@@ -134,7 +134,7 @@ clever keycloak restart <addon-id|addon-name>
|
|
|
134
134
|
|
|
135
135
|
|Name|Description|
|
|
136
136
|
|---|---|
|
|
137
|
-
|`addon-id
|
|
137
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
138
138
|
|
|
139
139
|
## ➡️ `clever keycloak version` <kbd>Since 3.13.0</kbd>
|
|
140
140
|
|
|
@@ -148,7 +148,7 @@ clever keycloak version <addon-id|addon-name> [options]
|
|
|
148
148
|
|
|
149
149
|
|Name|Description|
|
|
150
150
|
|---|---|
|
|
151
|
-
|`addon-id
|
|
151
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
152
152
|
|
|
153
153
|
### ⚙️ Options
|
|
154
154
|
|
|
@@ -168,7 +168,7 @@ clever keycloak version check <addon-id|addon-name> [options]
|
|
|
168
168
|
|
|
169
169
|
|Name|Description|
|
|
170
170
|
|---|---|
|
|
171
|
-
|`addon-id
|
|
171
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
172
172
|
|
|
173
173
|
### ⚙️ Options
|
|
174
174
|
|
|
@@ -188,7 +188,7 @@ clever keycloak version update <addon-id|addon-name> [options]
|
|
|
188
188
|
|
|
189
189
|
|Name|Description|
|
|
190
190
|
|---|---|
|
|
191
|
-
|`addon-id
|
|
191
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
192
192
|
|
|
193
193
|
### ⚙️ Options
|
|
194
194
|
|
|
@@ -16,7 +16,7 @@ clever kv <kv-id|addon-id|addon-name> <command> [options]
|
|
|
16
16
|
|
|
17
17
|
|Name|Description|
|
|
18
18
|
|---|---|
|
|
19
|
-
|`kv-id
|
|
19
|
+
|`kv-id\|addon-id\|addon-name`|Add-on/Real ID (or name, if unambiguous) of a Materia KV or Redis® add-on|
|
|
20
20
|
|`command`|The raw command to send to the Materia KV or Redis® add-on|
|
|
21
21
|
|
|
22
22
|
### ⚙️ Options
|
|
@@ -56,7 +56,17 @@ async function loginViaConsole(apiHost, consoleTokenUrl) {
|
|
|
56
56
|
|
|
57
57
|
Logger.debug('Try to login to Clever Cloud…');
|
|
58
58
|
Logger.println(`Opening ${styleText('blue', consoleUrl.toString())} in your browser to log you in…`);
|
|
59
|
-
|
|
59
|
+
function warnBrowserLaunchFailed(error) {
|
|
60
|
+
Logger.warn(`Failed to open your browser automatically (${error.message}).`);
|
|
61
|
+
Logger.println('Open the URL above manually to continue logging in.');
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
try {
|
|
65
|
+
const browserProcess = await open(consoleUrl.toString(), { wait: false });
|
|
66
|
+
browserProcess.once('error', warnBrowserLaunchFailed);
|
|
67
|
+
} catch (error) {
|
|
68
|
+
warnBrowserLaunchFailed(error);
|
|
69
|
+
}
|
|
60
70
|
|
|
61
71
|
return pollOauthData(cliPollUrl.toString());
|
|
62
72
|
}
|
|
@@ -30,7 +30,7 @@ clever matomo get <addon-id|addon-name> [options]
|
|
|
30
30
|
|
|
31
31
|
|Name|Description|
|
|
32
32
|
|---|---|
|
|
33
|
-
|`addon-id
|
|
33
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
34
34
|
|
|
35
35
|
### ⚙️ Options
|
|
36
36
|
|
|
@@ -50,7 +50,7 @@ clever matomo open <addon-id|addon-name>
|
|
|
50
50
|
|
|
51
51
|
|Name|Description|
|
|
52
52
|
|---|---|
|
|
53
|
-
|`addon-id
|
|
53
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
54
54
|
|
|
55
55
|
## ➡️ `clever matomo open logs` <kbd>Since 3.13.0</kbd>
|
|
56
56
|
|
|
@@ -64,7 +64,7 @@ clever matomo open logs <addon-id|addon-name>
|
|
|
64
64
|
|
|
65
65
|
|Name|Description|
|
|
66
66
|
|---|---|
|
|
67
|
-
|`addon-id
|
|
67
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
68
68
|
|
|
69
69
|
## ➡️ `clever matomo open webui` <kbd>Since 3.13.0</kbd>
|
|
70
70
|
|
|
@@ -78,7 +78,7 @@ clever matomo open webui <addon-id|addon-name>
|
|
|
78
78
|
|
|
79
79
|
|Name|Description|
|
|
80
80
|
|---|---|
|
|
81
|
-
|`addon-id
|
|
81
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
82
82
|
|
|
83
83
|
## ➡️ `clever matomo rebuild` <kbd>Since 3.13.0</kbd>
|
|
84
84
|
|
|
@@ -92,7 +92,7 @@ clever matomo rebuild <addon-id|addon-name>
|
|
|
92
92
|
|
|
93
93
|
|Name|Description|
|
|
94
94
|
|---|---|
|
|
95
|
-
|`addon-id
|
|
95
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
96
96
|
|
|
97
97
|
## ➡️ `clever matomo restart` <kbd>Since 3.13.0</kbd>
|
|
98
98
|
|
|
@@ -106,4 +106,4 @@ clever matomo restart <addon-id|addon-name>
|
|
|
106
106
|
|
|
107
107
|
|Name|Description|
|
|
108
108
|
|---|---|
|
|
109
|
-
|`addon-id
|
|
109
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
@@ -30,7 +30,7 @@ clever metabase get <addon-id|addon-name> [options]
|
|
|
30
30
|
|
|
31
31
|
|Name|Description|
|
|
32
32
|
|---|---|
|
|
33
|
-
|`addon-id
|
|
33
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
34
34
|
|
|
35
35
|
### ⚙️ Options
|
|
36
36
|
|
|
@@ -50,7 +50,7 @@ clever metabase open <addon-id|addon-name>
|
|
|
50
50
|
|
|
51
51
|
|Name|Description|
|
|
52
52
|
|---|---|
|
|
53
|
-
|`addon-id
|
|
53
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
54
54
|
|
|
55
55
|
## ➡️ `clever metabase open logs` <kbd>Since 3.13.0</kbd>
|
|
56
56
|
|
|
@@ -64,7 +64,7 @@ clever metabase open logs <addon-id|addon-name>
|
|
|
64
64
|
|
|
65
65
|
|Name|Description|
|
|
66
66
|
|---|---|
|
|
67
|
-
|`addon-id
|
|
67
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
68
68
|
|
|
69
69
|
## ➡️ `clever metabase open webui` <kbd>Since 3.13.0</kbd>
|
|
70
70
|
|
|
@@ -78,7 +78,7 @@ clever metabase open webui <addon-id|addon-name>
|
|
|
78
78
|
|
|
79
79
|
|Name|Description|
|
|
80
80
|
|---|---|
|
|
81
|
-
|`addon-id
|
|
81
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
82
82
|
|
|
83
83
|
## ➡️ `clever metabase rebuild` <kbd>Since 3.13.0</kbd>
|
|
84
84
|
|
|
@@ -92,7 +92,7 @@ clever metabase rebuild <addon-id|addon-name>
|
|
|
92
92
|
|
|
93
93
|
|Name|Description|
|
|
94
94
|
|---|---|
|
|
95
|
-
|`addon-id
|
|
95
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
96
96
|
|
|
97
97
|
## ➡️ `clever metabase restart` <kbd>Since 3.13.0</kbd>
|
|
98
98
|
|
|
@@ -106,7 +106,7 @@ clever metabase restart <addon-id|addon-name>
|
|
|
106
106
|
|
|
107
107
|
|Name|Description|
|
|
108
108
|
|---|---|
|
|
109
|
-
|`addon-id
|
|
109
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
110
110
|
|
|
111
111
|
## ➡️ `clever metabase version` <kbd>Since 3.13.0</kbd>
|
|
112
112
|
|
|
@@ -120,7 +120,7 @@ clever metabase version <addon-id|addon-name> [options]
|
|
|
120
120
|
|
|
121
121
|
|Name|Description|
|
|
122
122
|
|---|---|
|
|
123
|
-
|`addon-id
|
|
123
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
124
124
|
|
|
125
125
|
### ⚙️ Options
|
|
126
126
|
|
|
@@ -140,7 +140,7 @@ clever metabase version check <addon-id|addon-name> [options]
|
|
|
140
140
|
|
|
141
141
|
|Name|Description|
|
|
142
142
|
|---|---|
|
|
143
|
-
|`addon-id
|
|
143
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
144
144
|
|
|
145
145
|
### ⚙️ Options
|
|
146
146
|
|
|
@@ -160,7 +160,7 @@ clever metabase version update <addon-id|addon-name> [options]
|
|
|
160
160
|
|
|
161
161
|
|Name|Description|
|
|
162
162
|
|---|---|
|
|
163
|
-
|`addon-id
|
|
163
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
164
164
|
|
|
165
165
|
### ⚙️ Options
|
|
166
166
|
|
|
@@ -55,7 +55,7 @@ clever ng create external <external-peer-label> <ng-id|ng-label> <public-key> [o
|
|
|
55
55
|
|Name|Description|
|
|
56
56
|
|---|---|
|
|
57
57
|
|`external-peer-label`|External peer label|
|
|
58
|
-
|`ng-id
|
|
58
|
+
|`ng-id\|ng-label`|Network Group ID or label|
|
|
59
59
|
|`public-key`|WireGuard public key of the external peer to link to a Network Group|
|
|
60
60
|
|
|
61
61
|
### ⚙️ Options
|
|
@@ -76,7 +76,7 @@ clever ng delete <ng-id|ng-label> [options]
|
|
|
76
76
|
|
|
77
77
|
|Name|Description|
|
|
78
78
|
|---|---|
|
|
79
|
-
|`ng-id
|
|
79
|
+
|`ng-id\|ng-label`|Network Group ID or label|
|
|
80
80
|
|
|
81
81
|
### ⚙️ Options
|
|
82
82
|
|
|
@@ -96,8 +96,8 @@ clever ng delete external <peer-id|peer-label> <ng-id|ng-label> [options]
|
|
|
96
96
|
|
|
97
97
|
|Name|Description|
|
|
98
98
|
|---|---|
|
|
99
|
-
|`peer-id
|
|
100
|
-
|`ng-id
|
|
99
|
+
|`peer-id\|peer-label`|External peer ID or label|
|
|
100
|
+
|`ng-id\|ng-label`|Network Group ID or label|
|
|
101
101
|
|
|
102
102
|
### ⚙️ Options
|
|
103
103
|
|
|
@@ -117,7 +117,7 @@ clever ng get <id|label> [options]
|
|
|
117
117
|
|
|
118
118
|
|Name|Description|
|
|
119
119
|
|---|---|
|
|
120
|
-
|`id
|
|
120
|
+
|`id\|label`|ID or Label of a Network Group, a member or an (external) peer|
|
|
121
121
|
|
|
122
122
|
### ⚙️ Options
|
|
123
123
|
|
|
@@ -139,8 +139,8 @@ clever ng get-config <peer-id|peer-label> <ng-id|ng-label> [options]
|
|
|
139
139
|
|
|
140
140
|
|Name|Description|
|
|
141
141
|
|---|---|
|
|
142
|
-
|`peer-id
|
|
143
|
-
|`ng-id
|
|
142
|
+
|`peer-id\|peer-label`|External peer ID or label|
|
|
143
|
+
|`ng-id\|ng-label`|Network Group ID or label|
|
|
144
144
|
|
|
145
145
|
### ⚙️ Options
|
|
146
146
|
|
|
@@ -161,7 +161,7 @@ clever ng link <id> <ng-id|ng-label> [options]
|
|
|
161
161
|
|Name|Description|
|
|
162
162
|
|---|---|
|
|
163
163
|
|`id`|ID of a resource to (un)link to a Network Group|
|
|
164
|
-
|`ng-id
|
|
164
|
+
|`ng-id\|ng-label`|Network Group ID or label|
|
|
165
165
|
|
|
166
166
|
### ⚙️ Options
|
|
167
167
|
|
|
@@ -181,7 +181,7 @@ clever ng search <id|label> [options]
|
|
|
181
181
|
|
|
182
182
|
|Name|Description|
|
|
183
183
|
|---|---|
|
|
184
|
-
|`id
|
|
184
|
+
|`id\|label`|ID or Label of a Network Group, a member or an (external) peer|
|
|
185
185
|
|
|
186
186
|
### ⚙️ Options
|
|
187
187
|
|
|
@@ -204,7 +204,7 @@ clever ng unlink <id> <ng-id|ng-label> [options]
|
|
|
204
204
|
|Name|Description|
|
|
205
205
|
|---|---|
|
|
206
206
|
|`id`|ID of a resource to (un)link to a Network Group|
|
|
207
|
-
|`ng-id
|
|
207
|
+
|`ng-id\|ng-label`|Network Group ID or label|
|
|
208
208
|
|
|
209
209
|
### ⚙️ Options
|
|
210
210
|
|
|
@@ -46,7 +46,7 @@ clever oauth-consumers delete <consumer-key|consumer-name> [options]
|
|
|
46
46
|
|
|
47
47
|
|Name|Description|
|
|
48
48
|
|---|---|
|
|
49
|
-
|`consumer-key
|
|
49
|
+
|`consumer-key\|consumer-name`|OAuth consumer key (or name, if unambiguous)|
|
|
50
50
|
|
|
51
51
|
### ⚙️ Options
|
|
52
52
|
|
|
@@ -66,7 +66,7 @@ clever oauth-consumers get <consumer-key|consumer-name> [options]
|
|
|
66
66
|
|
|
67
67
|
|Name|Description|
|
|
68
68
|
|---|---|
|
|
69
|
-
|`consumer-key
|
|
69
|
+
|`consumer-key\|consumer-name`|OAuth consumer key (or name, if unambiguous)|
|
|
70
70
|
|
|
71
71
|
### ⚙️ Options
|
|
72
72
|
|
|
@@ -101,7 +101,7 @@ clever oauth-consumers open <consumer-key|consumer-name>
|
|
|
101
101
|
|
|
102
102
|
|Name|Description|
|
|
103
103
|
|---|---|
|
|
104
|
-
|`consumer-key
|
|
104
|
+
|`consumer-key\|consumer-name`|OAuth consumer key (or name, if unambiguous)|
|
|
105
105
|
|
|
106
106
|
## ➡️ `clever oauth-consumers update` <kbd>Since 4.8.0</kbd>
|
|
107
107
|
|
|
@@ -115,7 +115,7 @@ clever oauth-consumers update <consumer-key|consumer-name> [options]
|
|
|
115
115
|
|
|
116
116
|
|Name|Description|
|
|
117
117
|
|---|---|
|
|
118
|
-
|`consumer-key
|
|
118
|
+
|`consumer-key\|consumer-name`|OAuth consumer key (or name, if unambiguous)|
|
|
119
119
|
|
|
120
120
|
### ⚙️ Options
|
|
121
121
|
|
|
@@ -30,7 +30,7 @@ clever otoroshi disable-ng <addon-id|addon-name>
|
|
|
30
30
|
|
|
31
31
|
|Name|Description|
|
|
32
32
|
|---|---|
|
|
33
|
-
|`addon-id
|
|
33
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
34
34
|
|
|
35
35
|
## ➡️ `clever otoroshi enable-ng` <kbd>Since 3.13.0</kbd>
|
|
36
36
|
|
|
@@ -44,7 +44,7 @@ clever otoroshi enable-ng <addon-id|addon-name>
|
|
|
44
44
|
|
|
45
45
|
|Name|Description|
|
|
46
46
|
|---|---|
|
|
47
|
-
|`addon-id
|
|
47
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
48
48
|
|
|
49
49
|
## ➡️ `clever otoroshi get` <kbd>Since 3.13.0</kbd>
|
|
50
50
|
|
|
@@ -58,7 +58,7 @@ clever otoroshi get <addon-id|addon-name> [options]
|
|
|
58
58
|
|
|
59
59
|
|Name|Description|
|
|
60
60
|
|---|---|
|
|
61
|
-
|`addon-id
|
|
61
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
62
62
|
|
|
63
63
|
### ⚙️ Options
|
|
64
64
|
|
|
@@ -78,7 +78,7 @@ clever otoroshi get-config <addon-id|addon-name>
|
|
|
78
78
|
|
|
79
79
|
|Name|Description|
|
|
80
80
|
|---|---|
|
|
81
|
-
|`addon-id
|
|
81
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
82
82
|
|
|
83
83
|
## ➡️ `clever otoroshi open` <kbd>Since 3.13.0</kbd>
|
|
84
84
|
|
|
@@ -92,7 +92,7 @@ clever otoroshi open <addon-id|addon-name>
|
|
|
92
92
|
|
|
93
93
|
|Name|Description|
|
|
94
94
|
|---|---|
|
|
95
|
-
|`addon-id
|
|
95
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
96
96
|
|
|
97
97
|
## ➡️ `clever otoroshi open logs` <kbd>Since 3.13.0</kbd>
|
|
98
98
|
|
|
@@ -106,7 +106,7 @@ clever otoroshi open logs <addon-id|addon-name>
|
|
|
106
106
|
|
|
107
107
|
|Name|Description|
|
|
108
108
|
|---|---|
|
|
109
|
-
|`addon-id
|
|
109
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
110
110
|
|
|
111
111
|
## ➡️ `clever otoroshi open swaggerui` <kbd>Since 4.9.0</kbd>
|
|
112
112
|
|
|
@@ -120,7 +120,7 @@ clever otoroshi open swaggerui <addon-id|addon-name>
|
|
|
120
120
|
|
|
121
121
|
|Name|Description|
|
|
122
122
|
|---|---|
|
|
123
|
-
|`addon-id
|
|
123
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
124
124
|
|
|
125
125
|
## ➡️ `clever otoroshi open webui` <kbd>Since 3.13.0</kbd>
|
|
126
126
|
|
|
@@ -134,7 +134,7 @@ clever otoroshi open webui <addon-id|addon-name>
|
|
|
134
134
|
|
|
135
135
|
|Name|Description|
|
|
136
136
|
|---|---|
|
|
137
|
-
|`addon-id
|
|
137
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
138
138
|
|
|
139
139
|
## ➡️ `clever otoroshi rebuild` <kbd>Since 3.13.0</kbd>
|
|
140
140
|
|
|
@@ -148,7 +148,7 @@ clever otoroshi rebuild <addon-id|addon-name>
|
|
|
148
148
|
|
|
149
149
|
|Name|Description|
|
|
150
150
|
|---|---|
|
|
151
|
-
|`addon-id
|
|
151
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
152
152
|
|
|
153
153
|
## ➡️ `clever otoroshi restart` <kbd>Since 3.13.0</kbd>
|
|
154
154
|
|
|
@@ -162,7 +162,7 @@ clever otoroshi restart <addon-id|addon-name>
|
|
|
162
162
|
|
|
163
163
|
|Name|Description|
|
|
164
164
|
|---|---|
|
|
165
|
-
|`addon-id
|
|
165
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
166
166
|
|
|
167
167
|
## ➡️ `clever otoroshi version` <kbd>Since 3.13.0</kbd>
|
|
168
168
|
|
|
@@ -176,7 +176,7 @@ clever otoroshi version <addon-id|addon-name> [options]
|
|
|
176
176
|
|
|
177
177
|
|Name|Description|
|
|
178
178
|
|---|---|
|
|
179
|
-
|`addon-id
|
|
179
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
180
180
|
|
|
181
181
|
### ⚙️ Options
|
|
182
182
|
|
|
@@ -196,7 +196,7 @@ clever otoroshi version check <addon-id|addon-name> [options]
|
|
|
196
196
|
|
|
197
197
|
|Name|Description|
|
|
198
198
|
|---|---|
|
|
199
|
-
|`addon-id
|
|
199
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
200
200
|
|
|
201
201
|
### ⚙️ Options
|
|
202
202
|
|
|
@@ -216,7 +216,7 @@ clever otoroshi version update <addon-id|addon-name> [options]
|
|
|
216
216
|
|
|
217
217
|
|Name|Description|
|
|
218
218
|
|---|---|
|
|
219
|
-
|`addon-id
|
|
219
|
+
|`addon-id\|addon-name`|Add-on ID (or name, if unambiguous)|
|
|
220
220
|
|
|
221
221
|
### ⚙️ Options
|
|
222
222
|
|
|
@@ -75,6 +75,10 @@ async function resolveTargetProfile(profiles, requestedAlias) {
|
|
|
75
75
|
name: formatProfile(profile),
|
|
76
76
|
value: profile.alias,
|
|
77
77
|
}));
|
|
78
|
-
const selectedAlias = await selectAnswer(
|
|
78
|
+
const selectedAlias = await selectAnswer(
|
|
79
|
+
'Select a profile:',
|
|
80
|
+
choices,
|
|
81
|
+
'Use --alias <name> to select a profile directly.',
|
|
82
|
+
);
|
|
79
83
|
return profiles.find((profile) => profile.alias === selectedAlias);
|
|
80
84
|
}
|