@camunda8/cli 1.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/LICENSE +201 -0
- package/README.md +387 -0
- package/dist/client.d.ts +9 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +39 -0
- package/dist/client.js.map +1 -0
- package/dist/commands/deployments.d.ts +10 -0
- package/dist/commands/deployments.d.ts.map +1 -0
- package/dist/commands/deployments.js +221 -0
- package/dist/commands/deployments.js.map +1 -0
- package/dist/commands/help.d.ts +20 -0
- package/dist/commands/help.d.ts.map +1 -0
- package/dist/commands/help.js +116 -0
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/incidents.d.ts +18 -0
- package/dist/commands/incidents.d.ts.map +1 -0
- package/dist/commands/incidents.js +62 -0
- package/dist/commands/incidents.js.map +1 -0
- package/dist/commands/jobs.d.ts +36 -0
- package/dist/commands/jobs.d.ts.map +1 -0
- package/dist/commands/jobs.js +129 -0
- package/dist/commands/jobs.js.map +1 -0
- package/dist/commands/messages.d.ts +22 -0
- package/dist/commands/messages.d.ts.map +1 -0
- package/dist/commands/messages.js +48 -0
- package/dist/commands/messages.js.map +1 -0
- package/dist/commands/plugins.d.ts +17 -0
- package/dist/commands/plugins.d.ts.map +1 -0
- package/dist/commands/plugins.js +113 -0
- package/dist/commands/plugins.js.map +1 -0
- package/dist/commands/process-instances.d.ts +34 -0
- package/dist/commands/process-instances.d.ts.map +1 -0
- package/dist/commands/process-instances.js +116 -0
- package/dist/commands/process-instances.js.map +1 -0
- package/dist/commands/profiles.d.ts +23 -0
- package/dist/commands/profiles.d.ts.map +1 -0
- package/dist/commands/profiles.js +76 -0
- package/dist/commands/profiles.js.map +1 -0
- package/dist/commands/run.d.ts +11 -0
- package/dist/commands/run.d.ts.map +1 -0
- package/dist/commands/run.js +61 -0
- package/dist/commands/run.js.map +1 -0
- package/dist/commands/session.d.ts +20 -0
- package/dist/commands/session.d.ts.map +1 -0
- package/dist/commands/session.js +54 -0
- package/dist/commands/session.js.map +1 -0
- package/dist/commands/topology.d.ts +10 -0
- package/dist/commands/topology.d.ts.map +1 -0
- package/dist/commands/topology.js +21 -0
- package/dist/commands/topology.js.map +1 -0
- package/dist/commands/user-tasks.d.ts +20 -0
- package/dist/commands/user-tasks.d.ts.map +1 -0
- package/dist/commands/user-tasks.js +78 -0
- package/dist/commands/user-tasks.js.map +1 -0
- package/dist/commands/watch.d.ts +10 -0
- package/dist/commands/watch.d.ts.map +1 -0
- package/dist/commands/watch.js +76 -0
- package/dist/commands/watch.js.map +1 -0
- package/dist/config.d.ts +129 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +356 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +405 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +22 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +132 -0
- package/dist/logger.js.map +1 -0
- package/dist/plugin-loader.d.ts +32 -0
- package/dist/plugin-loader.d.ts.map +1 -0
- package/dist/plugin-loader.js +104 -0
- package/dist/plugin-loader.js.map +1 -0
- package/dist/runtime.d.ts +20 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +35 -0
- package/dist/runtime.js.map +1 -0
- package/package.json +57 -0
package/dist/config.js
ADDED
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration and session state management for c8ctl
|
|
3
|
+
* Handles profiles, session state, and credential resolution
|
|
4
|
+
*/
|
|
5
|
+
import { homedir, platform } from 'node:os';
|
|
6
|
+
import { join } from 'node:path';
|
|
7
|
+
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'node:fs';
|
|
8
|
+
/**
|
|
9
|
+
* Get platform-specific user data directory
|
|
10
|
+
*/
|
|
11
|
+
export function getUserDataDir() {
|
|
12
|
+
// Allow override for testing
|
|
13
|
+
if (process.env.C8CTL_DATA_DIR) {
|
|
14
|
+
return process.env.C8CTL_DATA_DIR;
|
|
15
|
+
}
|
|
16
|
+
const plat = platform();
|
|
17
|
+
const home = homedir();
|
|
18
|
+
switch (plat) {
|
|
19
|
+
case 'win32':
|
|
20
|
+
return join(process.env.APPDATA || join(home, 'AppData', 'Roaming'), 'c8ctl');
|
|
21
|
+
case 'darwin':
|
|
22
|
+
return join(home, 'Library', 'Application Support', 'c8ctl');
|
|
23
|
+
default: // linux and others
|
|
24
|
+
return join(process.env.XDG_DATA_HOME || join(home, '.local', 'share'), 'c8ctl');
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Get platform-specific Camunda Modeler data directory
|
|
29
|
+
*/
|
|
30
|
+
export function getModelerDataDir() {
|
|
31
|
+
const plat = platform();
|
|
32
|
+
const home = homedir();
|
|
33
|
+
switch (plat) {
|
|
34
|
+
case 'win32':
|
|
35
|
+
return join(process.env.APPDATA || join(home, 'AppData', 'Roaming'), 'camunda-modeler');
|
|
36
|
+
case 'darwin':
|
|
37
|
+
return join(home, 'Library', 'Application Support', 'camunda-modeler');
|
|
38
|
+
default: // linux and others
|
|
39
|
+
return join(process.env.XDG_CONFIG_HOME || join(home, '.config'), 'camunda-modeler');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Ensure user data directory exists
|
|
44
|
+
*/
|
|
45
|
+
function ensureUserDataDir() {
|
|
46
|
+
const dir = getUserDataDir();
|
|
47
|
+
if (!existsSync(dir)) {
|
|
48
|
+
mkdirSync(dir, { recursive: true });
|
|
49
|
+
}
|
|
50
|
+
return dir;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get profiles file path
|
|
54
|
+
*/
|
|
55
|
+
function getProfilesPath() {
|
|
56
|
+
return join(ensureUserDataDir(), 'profiles.json');
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Get session state file path
|
|
60
|
+
*/
|
|
61
|
+
function getSessionStatePath() {
|
|
62
|
+
return join(ensureUserDataDir(), 'session.json');
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Load all profiles
|
|
66
|
+
*/
|
|
67
|
+
export function loadProfiles() {
|
|
68
|
+
const path = getProfilesPath();
|
|
69
|
+
if (!existsSync(path)) {
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
try {
|
|
73
|
+
const data = readFileSync(path, 'utf-8');
|
|
74
|
+
return JSON.parse(data);
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
return [];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Save profiles to disk
|
|
82
|
+
*/
|
|
83
|
+
export function saveProfiles(profiles) {
|
|
84
|
+
const path = getProfilesPath();
|
|
85
|
+
writeFileSync(path, JSON.stringify(profiles, null, 2), 'utf-8');
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Get a profile by name
|
|
89
|
+
* Supports both c8ctl profiles and modeler profiles (with 'modeler:' prefix)
|
|
90
|
+
*/
|
|
91
|
+
export function getProfile(name) {
|
|
92
|
+
// Check if this is a modeler profile request
|
|
93
|
+
if (name.startsWith('modeler:')) {
|
|
94
|
+
const modelerProfile = getModelerProfile(name);
|
|
95
|
+
if (modelerProfile) {
|
|
96
|
+
return convertModelerProfile(modelerProfile);
|
|
97
|
+
}
|
|
98
|
+
return undefined;
|
|
99
|
+
}
|
|
100
|
+
// Check c8ctl profiles
|
|
101
|
+
const profiles = loadProfiles();
|
|
102
|
+
return profiles.find(p => p.name === name);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Add or update a profile
|
|
106
|
+
*/
|
|
107
|
+
export function addProfile(profile) {
|
|
108
|
+
const profiles = loadProfiles();
|
|
109
|
+
const existingIndex = profiles.findIndex(p => p.name === profile.name);
|
|
110
|
+
if (existingIndex >= 0) {
|
|
111
|
+
profiles[existingIndex] = profile;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
profiles.push(profile);
|
|
115
|
+
}
|
|
116
|
+
saveProfiles(profiles);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Remove a profile
|
|
120
|
+
*/
|
|
121
|
+
export function removeProfile(name) {
|
|
122
|
+
const profiles = loadProfiles();
|
|
123
|
+
const filtered = profiles.filter(p => p.name !== name);
|
|
124
|
+
if (filtered.length === profiles.length) {
|
|
125
|
+
return false; // Profile not found
|
|
126
|
+
}
|
|
127
|
+
saveProfiles(filtered);
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Load session state
|
|
132
|
+
*/
|
|
133
|
+
export function loadSessionState() {
|
|
134
|
+
const path = getSessionStatePath();
|
|
135
|
+
if (!existsSync(path)) {
|
|
136
|
+
return { outputMode: 'text' };
|
|
137
|
+
}
|
|
138
|
+
try {
|
|
139
|
+
const data = readFileSync(path, 'utf-8');
|
|
140
|
+
return JSON.parse(data);
|
|
141
|
+
}
|
|
142
|
+
catch (error) {
|
|
143
|
+
return { outputMode: 'text' };
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Save session state to disk
|
|
148
|
+
*/
|
|
149
|
+
export function saveSessionState(state) {
|
|
150
|
+
const path = getSessionStatePath();
|
|
151
|
+
writeFileSync(path, JSON.stringify(state, null, 2), 'utf-8');
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Set active profile in session
|
|
155
|
+
*/
|
|
156
|
+
export function setActiveProfile(name) {
|
|
157
|
+
const state = loadSessionState();
|
|
158
|
+
state.activeProfile = name;
|
|
159
|
+
saveSessionState(state);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Set active tenant in session
|
|
163
|
+
*/
|
|
164
|
+
export function setActiveTenant(tenantId) {
|
|
165
|
+
const state = loadSessionState();
|
|
166
|
+
state.activeTenant = tenantId;
|
|
167
|
+
saveSessionState(state);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Set output mode in session
|
|
171
|
+
*/
|
|
172
|
+
export function setOutputMode(mode) {
|
|
173
|
+
const state = loadSessionState();
|
|
174
|
+
state.outputMode = mode;
|
|
175
|
+
saveSessionState(state);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Resolve cluster configuration from session, flags, env vars, or defaults
|
|
179
|
+
* Priority: profileFlag → session profile → env vars → localhost fallback
|
|
180
|
+
*/
|
|
181
|
+
export function resolveClusterConfig(profileFlag) {
|
|
182
|
+
// 1. Try profile flag
|
|
183
|
+
if (profileFlag) {
|
|
184
|
+
const profile = getProfile(profileFlag);
|
|
185
|
+
if (profile) {
|
|
186
|
+
return {
|
|
187
|
+
baseUrl: profile.baseUrl,
|
|
188
|
+
clientId: profile.clientId,
|
|
189
|
+
clientSecret: profile.clientSecret,
|
|
190
|
+
audience: profile.audience,
|
|
191
|
+
oAuthUrl: profile.oAuthUrl,
|
|
192
|
+
username: profile.username,
|
|
193
|
+
password: profile.password,
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
// 2. Try session profile
|
|
198
|
+
const session = loadSessionState();
|
|
199
|
+
if (session.activeProfile) {
|
|
200
|
+
const profile = getProfile(session.activeProfile);
|
|
201
|
+
if (profile) {
|
|
202
|
+
return {
|
|
203
|
+
baseUrl: profile.baseUrl,
|
|
204
|
+
clientId: profile.clientId,
|
|
205
|
+
clientSecret: profile.clientSecret,
|
|
206
|
+
audience: profile.audience,
|
|
207
|
+
oAuthUrl: profile.oAuthUrl,
|
|
208
|
+
username: profile.username,
|
|
209
|
+
password: profile.password,
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
// 3. Try environment variables
|
|
214
|
+
const baseUrl = process.env.CAMUNDA_BASE_URL;
|
|
215
|
+
const clientId = process.env.CAMUNDA_CLIENT_ID;
|
|
216
|
+
const clientSecret = process.env.CAMUNDA_CLIENT_SECRET;
|
|
217
|
+
const audience = process.env.CAMUNDA_AUDIENCE;
|
|
218
|
+
const oAuthUrl = process.env.CAMUNDA_OAUTH_URL;
|
|
219
|
+
const username = process.env.CAMUNDA_USERNAME;
|
|
220
|
+
const password = process.env.CAMUNDA_PASSWORD;
|
|
221
|
+
if (baseUrl) {
|
|
222
|
+
return {
|
|
223
|
+
baseUrl,
|
|
224
|
+
clientId,
|
|
225
|
+
clientSecret,
|
|
226
|
+
audience,
|
|
227
|
+
oAuthUrl,
|
|
228
|
+
username,
|
|
229
|
+
password,
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
// 4. Localhost fallback with basic auth (demo/demo)
|
|
233
|
+
// These default credentials match the docker-compose configuration
|
|
234
|
+
// and are intended for local development only
|
|
235
|
+
return {
|
|
236
|
+
baseUrl: 'http://localhost:8080/v2',
|
|
237
|
+
username: 'demo',
|
|
238
|
+
password: 'demo',
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Resolve tenant ID from session, profile, env vars, or default
|
|
243
|
+
* Priority: session tenant → profile default tenant → env var → '<default>'
|
|
244
|
+
*/
|
|
245
|
+
export function resolveTenantId(profileFlag) {
|
|
246
|
+
// 1. Try session tenant
|
|
247
|
+
const session = loadSessionState();
|
|
248
|
+
if (session.activeTenant) {
|
|
249
|
+
return session.activeTenant;
|
|
250
|
+
}
|
|
251
|
+
// 2. Try profile default tenant (from flag or session)
|
|
252
|
+
const profileName = profileFlag || session.activeProfile;
|
|
253
|
+
if (profileName) {
|
|
254
|
+
const profile = getProfile(profileName);
|
|
255
|
+
if (profile?.defaultTenantId) {
|
|
256
|
+
return profile.defaultTenantId;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
// 3. Try environment variable
|
|
260
|
+
const envTenant = process.env.CAMUNDA_DEFAULT_TENANT_ID;
|
|
261
|
+
if (envTenant) {
|
|
262
|
+
return envTenant;
|
|
263
|
+
}
|
|
264
|
+
// 4. Default tenant
|
|
265
|
+
return '<default>';
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Load Camunda Modeler profiles from profiles.json
|
|
269
|
+
* Always reads fresh from disk (no caching)
|
|
270
|
+
*
|
|
271
|
+
* TODO: Consider introducing caching mechanism for better performance.
|
|
272
|
+
* Current implementation reads from disk on every call. For commands that
|
|
273
|
+
* list profiles or look up multiple profiles, this could be optimized by
|
|
274
|
+
* implementing per-execution memoization or a time-based cache.
|
|
275
|
+
*/
|
|
276
|
+
export function loadModelerProfiles() {
|
|
277
|
+
try {
|
|
278
|
+
const modelerDir = getModelerDataDir();
|
|
279
|
+
const profilesPath = join(modelerDir, 'profiles.json');
|
|
280
|
+
if (!existsSync(profilesPath)) {
|
|
281
|
+
return [];
|
|
282
|
+
}
|
|
283
|
+
const data = readFileSync(profilesPath, 'utf-8');
|
|
284
|
+
const parsed = JSON.parse(data);
|
|
285
|
+
return parsed.profiles || [];
|
|
286
|
+
}
|
|
287
|
+
catch (error) {
|
|
288
|
+
// Silently return empty array if file can't be read or parsed
|
|
289
|
+
return [];
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Get a modeler profile by name or cluster ID
|
|
294
|
+
* Accepts 'modeler:name' or 'modeler:id' format, or just 'name'/'id'
|
|
295
|
+
*/
|
|
296
|
+
export function getModelerProfile(identifier) {
|
|
297
|
+
const profiles = loadModelerProfiles();
|
|
298
|
+
// Remove 'modeler:' prefix if present
|
|
299
|
+
const searchId = identifier.startsWith('modeler:')
|
|
300
|
+
? identifier.substring(8)
|
|
301
|
+
: identifier;
|
|
302
|
+
// Search by name first, then by clusterId
|
|
303
|
+
return profiles.find(p => p.name === searchId || p.clusterId === searchId);
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Construct REST API URL from modeler profile
|
|
307
|
+
* For cloud: uses clusterUrl as-is (Camunda cloud URLs don't need /v2)
|
|
308
|
+
* For self-managed: localhost URLs get /v2 appended
|
|
309
|
+
* Does not derive values - uses what's provided
|
|
310
|
+
*
|
|
311
|
+
* Note: Self-managed clusters should include /v2 in their clusterUrl if needed
|
|
312
|
+
*/
|
|
313
|
+
export function constructApiUrl(profile) {
|
|
314
|
+
// If clusterUrl is provided, use it as the base
|
|
315
|
+
if (profile.clusterUrl) {
|
|
316
|
+
const url = profile.clusterUrl;
|
|
317
|
+
// If it already has /v2 endpoint, use as-is
|
|
318
|
+
if (url.includes('/v2')) {
|
|
319
|
+
return url;
|
|
320
|
+
}
|
|
321
|
+
// Only append /v2 for localhost URLs
|
|
322
|
+
// Self-managed clusters should include /v2 in their clusterUrl if needed
|
|
323
|
+
if (url.includes('localhost') || url.includes('127.0.0.1')) {
|
|
324
|
+
return `${url.replace(/\/$/, '')}/v2`;
|
|
325
|
+
}
|
|
326
|
+
// For all other URLs (including cloud), use as-is
|
|
327
|
+
return url;
|
|
328
|
+
}
|
|
329
|
+
// If no clusterUrl but have clusterId, construct cloud URL
|
|
330
|
+
if (profile.clusterId) {
|
|
331
|
+
// Cloud cluster URLs follow pattern: https://{clusterId}.{region}.zeebe.camunda.io
|
|
332
|
+
// We can't derive the region, so just use the clusterId as a fallback base
|
|
333
|
+
return `https://${profile.clusterId}.zeebe.camunda.io`;
|
|
334
|
+
}
|
|
335
|
+
// Fallback to localhost
|
|
336
|
+
return 'http://localhost:8080/v2';
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Convert a modeler profile to a c8ctl Profile
|
|
340
|
+
*/
|
|
341
|
+
export function convertModelerProfile(modelerProfile) {
|
|
342
|
+
const name = modelerProfile.name || modelerProfile.clusterId || 'unknown';
|
|
343
|
+
const baseUrl = constructApiUrl(modelerProfile);
|
|
344
|
+
return {
|
|
345
|
+
name: `modeler:${name}`,
|
|
346
|
+
baseUrl,
|
|
347
|
+
clientId: modelerProfile.clientId,
|
|
348
|
+
clientSecret: modelerProfile.clientSecret,
|
|
349
|
+
audience: modelerProfile.audience,
|
|
350
|
+
// Cloud clusters typically use the standard OAuth URL
|
|
351
|
+
oAuthUrl: modelerProfile.audience ?
|
|
352
|
+
'https://login.cloud.camunda.io/oauth/token' :
|
|
353
|
+
undefined,
|
|
354
|
+
};
|
|
355
|
+
}
|
|
356
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;GAGG"}
|