@neetru/cli 2.3.0 → 2.4.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/dist/commands/deploy.js +8 -8
- package/dist/commands/deployments.d.ts +5 -5
- package/dist/commands/deployments.js +32 -6
- package/dist/commands/deployments.js.map +1 -1
- package/dist/commands/products-db.d.ts +9 -9
- package/dist/commands/products-db.js +84 -19
- package/dist/commands/products-db.js.map +1 -1
- package/dist/commands/products.d.ts +2 -2
- package/dist/commands/products.js +8 -6
- package/dist/commands/products.js.map +1 -1
- package/dist/commands/schema.d.ts +25 -0
- package/dist/commands/schema.js +321 -0
- package/dist/commands/schema.js.map +1 -0
- package/dist/commands/servers.d.ts +5 -5
- package/dist/commands/servers.js +25 -17
- package/dist/commands/servers.js.map +1 -1
- package/dist/commands/status.js +3 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/tenants.d.ts +14 -14
- package/dist/commands/tenants.js +62 -30
- package/dist/commands/tenants.js.map +1 -1
- package/dist/commands/ui.d.ts +1 -0
- package/dist/commands/ui.js +454 -0
- package/dist/commands/ui.js.map +1 -0
- package/dist/commands/workspaces.d.ts +9 -9
- package/dist/commands/workspaces.js +66 -31
- package/dist/commands/workspaces.js.map +1 -1
- package/dist/index.js +95 -63
- package/dist/index.js.map +1 -1
- package/dist/lib/ai/orchestrator.js +46 -23
- package/dist/lib/ai/orchestrator.js.map +1 -1
- package/dist/lib/config-schema.d.ts +18 -18
- package/dist/lib/pickers.d.ts +123 -0
- package/dist/lib/pickers.js +336 -0
- package/dist/lib/pickers.js.map +1 -0
- package/dist/lib/schema-cache.d.ts +87 -0
- package/dist/lib/schema-cache.js +134 -0
- package/dist/lib/schema-cache.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `neetru schema` — acesso à spec OpenAPI do Neetru Core via CLI.
|
|
3
|
+
*
|
|
4
|
+
* Subcomandos:
|
|
5
|
+
* dump Baixa e salva a spec localmente
|
|
6
|
+
* endpoints Lista endpoints com filtros de método/tag
|
|
7
|
+
* describe Mostra schema de um endpoint específico
|
|
8
|
+
* validate Diffa spec local vs remota
|
|
9
|
+
*
|
|
10
|
+
* A IA pode invocar este conjunto de comandos como subprocess pra entender
|
|
11
|
+
* a API do Core antes de executar operações. Veja docs ai-schema-integration.md.
|
|
12
|
+
*/
|
|
13
|
+
import fs from 'node:fs';
|
|
14
|
+
import path from 'node:path';
|
|
15
|
+
import chalk from 'chalk';
|
|
16
|
+
import ora from 'ora';
|
|
17
|
+
import { getCachedSchema, getCacheInfo, listEndpoints, describeEndpoint, } from '../lib/schema-cache.js';
|
|
18
|
+
import { requireToken, handleApiError } from '../lib/cli-read.js';
|
|
19
|
+
import { renderTable } from '../lib/render.js';
|
|
20
|
+
import { log } from '../utils/logger.js';
|
|
21
|
+
export async function runSchemaDump(opts) {
|
|
22
|
+
await requireToken();
|
|
23
|
+
const spinner = ora({ text: 'Buscando spec OpenAPI…', color: 'blue' }).start();
|
|
24
|
+
let spec;
|
|
25
|
+
try {
|
|
26
|
+
spec = await getCachedSchema(opts.refresh ?? false);
|
|
27
|
+
spinner.succeed('Spec obtida.');
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
spinner.fail('Falha ao buscar spec.');
|
|
31
|
+
handleApiError(error);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
if (opts.out) {
|
|
35
|
+
const resolved = path.resolve(opts.out);
|
|
36
|
+
fs.mkdirSync(path.dirname(resolved), { recursive: true });
|
|
37
|
+
fs.writeFileSync(resolved, JSON.stringify(spec, null, 2), 'utf-8');
|
|
38
|
+
console.log(chalk.green(` Spec salva em: ${resolved}`));
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
console.log(JSON.stringify(spec, null, 2));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export async function runSchemaEndpoints(opts) {
|
|
45
|
+
await requireToken();
|
|
46
|
+
const spinner = opts.format !== 'json'
|
|
47
|
+
? ora({ text: 'Carregando spec…', color: 'blue' }).start()
|
|
48
|
+
: null;
|
|
49
|
+
let spec;
|
|
50
|
+
try {
|
|
51
|
+
spec = await getCachedSchema(opts.refresh ?? false);
|
|
52
|
+
spinner?.stop();
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
spinner?.fail('Falha ao carregar spec.');
|
|
56
|
+
handleApiError(error);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
let endpoints = listEndpoints(spec);
|
|
60
|
+
if (opts.method) {
|
|
61
|
+
const m = opts.method.toUpperCase();
|
|
62
|
+
endpoints = endpoints.filter((e) => e.method === m);
|
|
63
|
+
}
|
|
64
|
+
if (opts.tag) {
|
|
65
|
+
const t = opts.tag.toLowerCase();
|
|
66
|
+
endpoints = endpoints.filter((e) => e.tags.some((tag) => tag.toLowerCase().includes(t)));
|
|
67
|
+
}
|
|
68
|
+
const format = opts.format ?? 'table';
|
|
69
|
+
if (format === 'json') {
|
|
70
|
+
console.log(JSON.stringify({ ok: true, count: endpoints.length, endpoints }, null, 2));
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
// Tabela
|
|
74
|
+
console.log();
|
|
75
|
+
console.log(chalk.bold(` Endpoints (${endpoints.length})`));
|
|
76
|
+
console.log();
|
|
77
|
+
renderTable([
|
|
78
|
+
{ header: 'MÉTODO', value: (r) => colorMethod(r.method), maxWidth: 8 },
|
|
79
|
+
{ header: 'PATH', value: (r) => r.path, maxWidth: 60 },
|
|
80
|
+
{ header: 'TAGS', value: (r) => r.tags.join(', '), maxWidth: 24 },
|
|
81
|
+
{ header: 'RESUMO', value: (r) => r.summary, maxWidth: 50 },
|
|
82
|
+
], endpoints);
|
|
83
|
+
console.log();
|
|
84
|
+
const info = getCacheInfo();
|
|
85
|
+
const ageMin = info.ageMs != null ? Math.round(info.ageMs / 60000) : null;
|
|
86
|
+
console.log(chalk.dim(` Cache: ${info.exists ? `${ageMin}min atrás` : 'sem cache'} — use --refresh pra atualizar`));
|
|
87
|
+
console.log();
|
|
88
|
+
}
|
|
89
|
+
export async function runSchemaDescribe(method, endpointPath, opts) {
|
|
90
|
+
await requireToken();
|
|
91
|
+
const spinner = opts.format !== 'json'
|
|
92
|
+
? ora({ text: 'Carregando spec…', color: 'blue' }).start()
|
|
93
|
+
: null;
|
|
94
|
+
let spec;
|
|
95
|
+
try {
|
|
96
|
+
spec = await getCachedSchema();
|
|
97
|
+
spinner?.stop();
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
spinner?.fail('Falha ao carregar spec.');
|
|
101
|
+
handleApiError(error);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const detail = describeEndpoint(spec, method, endpointPath);
|
|
105
|
+
if (!detail) {
|
|
106
|
+
log.error(`Endpoint não encontrado: ${method.toUpperCase()} ${endpointPath}`);
|
|
107
|
+
log.dim(' Use `neetru schema endpoints` pra listar os endpoints disponíveis.');
|
|
108
|
+
process.exit(1);
|
|
109
|
+
}
|
|
110
|
+
const format = opts.format ?? 'table';
|
|
111
|
+
if (format === 'json') {
|
|
112
|
+
console.log(JSON.stringify({ ok: true, endpoint: detail }, null, 2));
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
// Saída humana
|
|
116
|
+
console.log();
|
|
117
|
+
console.log(` ${colorMethod(detail.method)} ${chalk.cyan(detail.path)}`);
|
|
118
|
+
if (detail.summary) {
|
|
119
|
+
console.log(` ${chalk.bold(detail.summary)}`);
|
|
120
|
+
}
|
|
121
|
+
if (detail.description) {
|
|
122
|
+
console.log();
|
|
123
|
+
console.log(chalk.dim(` ${detail.description}`));
|
|
124
|
+
}
|
|
125
|
+
if (detail.tags.length > 0) {
|
|
126
|
+
console.log();
|
|
127
|
+
console.log(` ${chalk.dim('Tags:')} ${detail.tags.join(', ')}`);
|
|
128
|
+
}
|
|
129
|
+
if (detail.operationId) {
|
|
130
|
+
console.log(` ${chalk.dim('operationId:')} ${detail.operationId}`);
|
|
131
|
+
}
|
|
132
|
+
// Parâmetros
|
|
133
|
+
if (detail.parameters.length > 0) {
|
|
134
|
+
console.log();
|
|
135
|
+
console.log(chalk.bold(' Parâmetros'));
|
|
136
|
+
renderTable([
|
|
137
|
+
{ header: 'IN', value: (r) => r.in, maxWidth: 8 },
|
|
138
|
+
{ header: 'NOME', value: (r) => r.name, maxWidth: 24 },
|
|
139
|
+
{ header: 'OBR', value: (r) => r.required, maxWidth: 5 },
|
|
140
|
+
{ header: 'TIPO', value: (r) => r.schema, maxWidth: 20 },
|
|
141
|
+
{ header: 'DESCRIÇÃO', value: (r) => r.description, maxWidth: 40 },
|
|
142
|
+
], detail.parameters.map((p) => ({
|
|
143
|
+
in: String(p['in'] ?? ''),
|
|
144
|
+
name: String(p['name'] ?? ''),
|
|
145
|
+
required: p['required'] ? 'sim' : 'não',
|
|
146
|
+
schema: extractSchemaType(p['schema']),
|
|
147
|
+
description: String(p['description'] ?? ''),
|
|
148
|
+
})));
|
|
149
|
+
}
|
|
150
|
+
// requestBody
|
|
151
|
+
if (detail.requestBody) {
|
|
152
|
+
console.log();
|
|
153
|
+
console.log(chalk.bold(' requestBody'));
|
|
154
|
+
console.log(chalk.dim(' ' + JSON.stringify(detail.requestBody, null, 2).replace(/\n/g, '\n ')));
|
|
155
|
+
}
|
|
156
|
+
// responses
|
|
157
|
+
const resCodes = Object.keys(detail.responses);
|
|
158
|
+
if (resCodes.length > 0) {
|
|
159
|
+
console.log();
|
|
160
|
+
console.log(chalk.bold(' Respostas'));
|
|
161
|
+
for (const code of resCodes) {
|
|
162
|
+
const res = detail.responses[code];
|
|
163
|
+
const desc = res?.['description'] ? String(res['description']) : '';
|
|
164
|
+
const color = code.startsWith('2') ? chalk.green : code.startsWith('4') ? chalk.yellow : chalk.red;
|
|
165
|
+
console.log(` ${color(code)} ${chalk.dim(desc)}`);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
console.log();
|
|
169
|
+
}
|
|
170
|
+
export async function runSchemaValidate(opts) {
|
|
171
|
+
await requireToken();
|
|
172
|
+
const info = getCacheInfo();
|
|
173
|
+
console.log();
|
|
174
|
+
console.log(chalk.bold(' Validação da spec OpenAPI'));
|
|
175
|
+
console.log();
|
|
176
|
+
// Linha do cache local
|
|
177
|
+
if (!info.exists) {
|
|
178
|
+
console.log(` ${chalk.yellow('!')} Sem cache local. Execute: neetru schema dump`);
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
const ageMin = info.ageMs != null ? Math.round(info.ageMs / 60000) : '?';
|
|
182
|
+
const staleLabel = info.stale ? chalk.yellow(' (expirado > 24h)') : chalk.green(' (válido)');
|
|
183
|
+
console.log(` ${chalk.dim('Cache:')} ${info.path}`);
|
|
184
|
+
console.log(` ${chalk.dim('Idade:')} ${ageMin}min${staleLabel}`);
|
|
185
|
+
}
|
|
186
|
+
if (!opts.remote) {
|
|
187
|
+
console.log();
|
|
188
|
+
console.log(chalk.dim(' Use --remote pra difar local vs remoto.'));
|
|
189
|
+
console.log();
|
|
190
|
+
process.exit(info.stale ? 1 : 0);
|
|
191
|
+
}
|
|
192
|
+
// Busca remoto e difa
|
|
193
|
+
const spinner = ora({ text: 'Buscando spec remota…', color: 'blue' }).start();
|
|
194
|
+
let remoteSpec;
|
|
195
|
+
try {
|
|
196
|
+
remoteSpec = await getCachedSchema(true);
|
|
197
|
+
spinner.succeed('Spec remota obtida.');
|
|
198
|
+
}
|
|
199
|
+
catch (error) {
|
|
200
|
+
spinner.fail('Falha ao buscar spec remota.');
|
|
201
|
+
handleApiError(error);
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
const remoteEndpoints = listEndpoints(remoteSpec);
|
|
205
|
+
const localRaw = (() => {
|
|
206
|
+
try {
|
|
207
|
+
return getCacheInfo().exists
|
|
208
|
+
? JSON.parse(fs.readFileSync(info.path, 'utf-8')).spec
|
|
209
|
+
: null;
|
|
210
|
+
}
|
|
211
|
+
catch {
|
|
212
|
+
return null;
|
|
213
|
+
}
|
|
214
|
+
})();
|
|
215
|
+
if (!localRaw) {
|
|
216
|
+
console.log(chalk.yellow(' Nenhum cache pré-existente pra comparar — spec remota salva.'));
|
|
217
|
+
console.log();
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
const localEndpoints = listEndpoints(localRaw);
|
|
221
|
+
const toKey = (e) => `${e.method} ${e.path}`;
|
|
222
|
+
const remoteKeys = new Set(remoteEndpoints.map(toKey));
|
|
223
|
+
const localKeys = new Set(localEndpoints.map(toKey));
|
|
224
|
+
const added = remoteEndpoints.filter((e) => !localKeys.has(toKey(e)));
|
|
225
|
+
const removed = localEndpoints.filter((e) => !remoteKeys.has(toKey(e)));
|
|
226
|
+
console.log();
|
|
227
|
+
if (added.length === 0 && removed.length === 0) {
|
|
228
|
+
console.log(chalk.green(' Spec local e remota são idênticas em endpoints.'));
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
if (added.length > 0) {
|
|
232
|
+
console.log(chalk.green(` + ${added.length} endpoint(s) novos no remoto:`));
|
|
233
|
+
for (const e of added) {
|
|
234
|
+
console.log(` ${colorMethod(e.method)} ${e.path}`);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
if (removed.length > 0) {
|
|
238
|
+
console.log(chalk.red(` - ${removed.length} endpoint(s) removidos no remoto:`));
|
|
239
|
+
for (const e of removed) {
|
|
240
|
+
console.log(` ${colorMethod(e.method)} ${e.path}`);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
console.log();
|
|
245
|
+
console.log(chalk.dim(` Total remoto: ${remoteEndpoints.length} endpoints`));
|
|
246
|
+
console.log();
|
|
247
|
+
process.exit(removed.length > 0 ? 1 : 0);
|
|
248
|
+
}
|
|
249
|
+
// ---------------------------------------------------------------------------
|
|
250
|
+
// Helpers internos
|
|
251
|
+
// ---------------------------------------------------------------------------
|
|
252
|
+
function colorMethod(method) {
|
|
253
|
+
switch (method.toUpperCase()) {
|
|
254
|
+
case 'GET': return chalk.green(method);
|
|
255
|
+
case 'POST': return chalk.cyan(method);
|
|
256
|
+
case 'PUT':
|
|
257
|
+
case 'PATCH': return chalk.yellow(method);
|
|
258
|
+
case 'DELETE': return chalk.red(method);
|
|
259
|
+
default: return chalk.dim(method);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
function extractSchemaType(schema) {
|
|
263
|
+
if (!schema || typeof schema !== 'object')
|
|
264
|
+
return '';
|
|
265
|
+
const s = schema;
|
|
266
|
+
if (s['type'])
|
|
267
|
+
return String(s['type']);
|
|
268
|
+
if (s['$ref'])
|
|
269
|
+
return String(s['$ref']).split('/').pop() ?? '$ref';
|
|
270
|
+
return '';
|
|
271
|
+
}
|
|
272
|
+
// ---------------------------------------------------------------------------
|
|
273
|
+
// Registrador do comando (chamado por cli/src/index.ts)
|
|
274
|
+
// ---------------------------------------------------------------------------
|
|
275
|
+
/**
|
|
276
|
+
* Registra `neetru schema` e seus subcomandos num programa Commander existente.
|
|
277
|
+
*/
|
|
278
|
+
export function registerSchemaCommand(program) {
|
|
279
|
+
const schemaCmd = program
|
|
280
|
+
.command('schema')
|
|
281
|
+
.description('Inspecionar a spec OpenAPI do Neetru Core');
|
|
282
|
+
// dump
|
|
283
|
+
schemaCmd
|
|
284
|
+
.command('dump')
|
|
285
|
+
.description('Baixar e salvar a spec OpenAPI localmente')
|
|
286
|
+
.option('--refresh', 'forçar fetch mesmo com cache válido')
|
|
287
|
+
.option('--out <file>', 'arquivo de saída (default: imprime no stdout)')
|
|
288
|
+
.action(async (opts) => {
|
|
289
|
+
await runSchemaDump({ refresh: opts.refresh, out: opts.out });
|
|
290
|
+
});
|
|
291
|
+
// endpoints
|
|
292
|
+
schemaCmd
|
|
293
|
+
.command('endpoints')
|
|
294
|
+
.description('Listar endpoints registrados na spec')
|
|
295
|
+
.option('--format <fmt>', 'json | table (default: table)')
|
|
296
|
+
.option('--method <m>', 'filtrar por método HTTP (GET, POST, …)')
|
|
297
|
+
.option('--tag <t>', 'filtrar por tag (substring, case-insensitive)')
|
|
298
|
+
.option('--refresh', 'forçar fetch mesmo com cache válido')
|
|
299
|
+
.action(async (opts) => {
|
|
300
|
+
const format = (opts.format === 'json' ? 'json' : 'table');
|
|
301
|
+
await runSchemaEndpoints({ format, method: opts.method, tag: opts.tag, refresh: opts.refresh });
|
|
302
|
+
});
|
|
303
|
+
// describe
|
|
304
|
+
schemaCmd
|
|
305
|
+
.command('describe <METHOD> <path>')
|
|
306
|
+
.description('Mostrar schema de um endpoint (requestBody, parâmetros, respostas)')
|
|
307
|
+
.option('--format <fmt>', 'json | table (default: table)')
|
|
308
|
+
.action(async (method, endpointPath, opts) => {
|
|
309
|
+
const format = (opts.format === 'json' ? 'json' : 'table');
|
|
310
|
+
await runSchemaDescribe(method, endpointPath, { format });
|
|
311
|
+
});
|
|
312
|
+
// validate
|
|
313
|
+
schemaCmd
|
|
314
|
+
.command('validate')
|
|
315
|
+
.description('Comparar spec local vs remota (detectar mudanças)')
|
|
316
|
+
.option('--remote', 'busca spec remota e difa com o cache local')
|
|
317
|
+
.action(async (opts) => {
|
|
318
|
+
await runSchemaValidate({ remote: opts.remote });
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/commands/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,17 +7,17 @@ export interface ServersListOptions {
|
|
|
7
7
|
}
|
|
8
8
|
export declare function runServersList(opts: ServersListOptions): Promise<void>;
|
|
9
9
|
export interface ServersProvisionOptions {
|
|
10
|
-
name
|
|
11
|
-
zone
|
|
12
|
-
machineType
|
|
10
|
+
name?: string;
|
|
11
|
+
zone?: string;
|
|
12
|
+
machineType?: string;
|
|
13
13
|
tenant?: string;
|
|
14
14
|
customer?: string;
|
|
15
15
|
json?: boolean;
|
|
16
16
|
}
|
|
17
17
|
export declare function runServersProvision(opts: ServersProvisionOptions): Promise<void>;
|
|
18
|
-
export declare function runServersDeactivate(id: string, opts: StepUpOptions): Promise<void>;
|
|
18
|
+
export declare function runServersDeactivate(id: string | undefined, opts: StepUpOptions): Promise<void>;
|
|
19
19
|
export interface ServersDispatchOptions {
|
|
20
20
|
params?: string;
|
|
21
21
|
json?: boolean;
|
|
22
22
|
}
|
|
23
|
-
export declare function runServersDispatch(id: string, commandType: string, opts: ServersDispatchOptions): Promise<void>;
|
|
23
|
+
export declare function runServersDispatch(id: string | undefined, commandType: string | undefined, opts: ServersDispatchOptions): Promise<void>;
|
package/dist/commands/servers.js
CHANGED
|
@@ -12,6 +12,7 @@ import { apiRequest } from '../lib/api-client.js';
|
|
|
12
12
|
import { requireToken, handleApiError } from '../lib/cli-read.js';
|
|
13
13
|
import { confirmDestructive, printWriteResult, resolveStepUp, } from '../lib/cli-write.js';
|
|
14
14
|
import { renderTable } from '../lib/render.js';
|
|
15
|
+
import { pickServer, promptText } from '../lib/pickers.js';
|
|
15
16
|
import { log } from '../utils/logger.js';
|
|
16
17
|
function colorStatus(s) {
|
|
17
18
|
if (!s)
|
|
@@ -73,18 +74,22 @@ export async function runServersList(opts) {
|
|
|
73
74
|
}
|
|
74
75
|
export async function runServersProvision(opts) {
|
|
75
76
|
const token = await requireToken(opts.json);
|
|
77
|
+
const name = opts.name ?? (await promptText('Nome do servidor:', { json: opts.json }));
|
|
78
|
+
const zone = opts.zone ?? (await promptText('Zona GCP:', { default: 'us-central1-a', json: opts.json }));
|
|
79
|
+
const machineType = opts.machineType ??
|
|
80
|
+
(await promptText('Machine type:', { default: 'e2-small', json: opts.json }));
|
|
76
81
|
const spinner = opts.json
|
|
77
82
|
? null
|
|
78
|
-
: ora({ text: `Provisionando VM ${
|
|
83
|
+
: ora({ text: `Provisionando VM ${name} (${zone})...`, color: 'blue' }).start();
|
|
79
84
|
let res;
|
|
80
85
|
try {
|
|
81
86
|
res = await apiRequest('/api/cli/v1/servers/provision', {
|
|
82
87
|
method: 'POST',
|
|
83
88
|
token,
|
|
84
89
|
body: {
|
|
85
|
-
name
|
|
86
|
-
zone
|
|
87
|
-
machineType
|
|
90
|
+
name,
|
|
91
|
+
zone,
|
|
92
|
+
machineType,
|
|
88
93
|
tenantId: opts.tenant,
|
|
89
94
|
customerId: opts.customer,
|
|
90
95
|
},
|
|
@@ -105,19 +110,20 @@ export async function runServersProvision(opts) {
|
|
|
105
110
|
console.log(` ${chalk.yellow(res.token)}`);
|
|
106
111
|
}
|
|
107
112
|
export async function runServersDeactivate(id, opts) {
|
|
108
|
-
if (!id) {
|
|
109
|
-
log.error('Uso: neetru servers deactivate <serverId>');
|
|
110
|
-
process.exit(1);
|
|
111
|
-
}
|
|
112
113
|
const token = await requireToken(opts.json);
|
|
113
|
-
await
|
|
114
|
+
const serverId = await pickServer(token, {
|
|
115
|
+
fromFlag: id,
|
|
116
|
+
json: opts.json,
|
|
117
|
+
message: 'Server a desativar:',
|
|
118
|
+
});
|
|
119
|
+
await confirmDestructive(`Desativar o servidor ${serverId}? O agente para de receber comandos.`, opts);
|
|
114
120
|
const { headers } = await resolveStepUp(opts);
|
|
115
121
|
const spinner = opts.json
|
|
116
122
|
? null
|
|
117
|
-
: ora({ text: `Desativando servidor ${
|
|
123
|
+
: ora({ text: `Desativando servidor ${serverId}...`, color: 'blue' }).start();
|
|
118
124
|
let res;
|
|
119
125
|
try {
|
|
120
|
-
res = await apiRequest(`/api/cli/v1/servers/${encodeURIComponent(
|
|
126
|
+
res = await apiRequest(`/api/cli/v1/servers/${encodeURIComponent(serverId)}/deactivate${opts.dryRun ? '?dryRun=true' : ''}`, { method: 'POST', token, headers });
|
|
121
127
|
spinner?.stop();
|
|
122
128
|
}
|
|
123
129
|
catch (error) {
|
|
@@ -127,11 +133,13 @@ export async function runServersDeactivate(id, opts) {
|
|
|
127
133
|
printWriteResult(res.dryRun ? res : { serverId: res.serverId, status: res.status }, `Servidor ${res.serverId} → ${res.status}`, opts.json);
|
|
128
134
|
}
|
|
129
135
|
export async function runServersDispatch(id, commandType, opts) {
|
|
130
|
-
if (!id || !commandType) {
|
|
131
|
-
log.error('Uso: neetru servers dispatch <serverId> <commandType> [--params \'{"k":"v"}\']');
|
|
132
|
-
process.exit(1);
|
|
133
|
-
}
|
|
134
136
|
const token = await requireToken(opts.json);
|
|
137
|
+
const serverId = await pickServer(token, {
|
|
138
|
+
fromFlag: id,
|
|
139
|
+
json: opts.json,
|
|
140
|
+
message: 'Server alvo:',
|
|
141
|
+
});
|
|
142
|
+
const resolvedCommandType = commandType ?? (await promptText('Command type:', { json: opts.json }));
|
|
135
143
|
let params;
|
|
136
144
|
if (opts.params) {
|
|
137
145
|
try {
|
|
@@ -151,10 +159,10 @@ export async function runServersDispatch(id, commandType, opts) {
|
|
|
151
159
|
}
|
|
152
160
|
const spinner = opts.json
|
|
153
161
|
? null
|
|
154
|
-
: ora({ text: `Enfileirando comando "${
|
|
162
|
+
: ora({ text: `Enfileirando comando "${resolvedCommandType}" no servidor ${serverId}...`, color: 'blue' }).start();
|
|
155
163
|
let res;
|
|
156
164
|
try {
|
|
157
|
-
res = await apiRequest(`/api/cli/v1/servers/${encodeURIComponent(
|
|
165
|
+
res = await apiRequest(`/api/cli/v1/servers/${encodeURIComponent(serverId)}/dispatch`, { method: 'POST', token, body: { commandType: resolvedCommandType, params } });
|
|
158
166
|
spinner?.stop();
|
|
159
167
|
}
|
|
160
168
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"servers.js","sourceRoot":"","sources":["../../src/commands/servers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"servers.js","sourceRoot":"","sources":["../../src/commands/servers.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/status.js
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* `neetru status` — status atual do workspace.
|
|
3
3
|
*
|
|
4
4
|
* Workspace = ambiente de prototipação no Core (antes do deploy real em VM/Cloud Run).
|
|
5
|
-
* Endpoint: `GET /api/v1/
|
|
5
|
+
* Endpoint: `GET /api/cli/v1/workspaces/status?clientId=<oauthClientId>` (canônico,
|
|
6
|
+
* plural; legacy `/api/v1/cli/workspace/status` segue aliasada até 2026-07-01).
|
|
6
7
|
*
|
|
7
8
|
* Owner passa `--client-id <id>` (oauthClientId visível em UI Core /workspaces/{id}).
|
|
8
9
|
* No futuro, este valor pode vir de `neetru.config.json` se o projeto tiver workspace associado.
|
|
@@ -36,7 +37,7 @@ export async function runStatus(opts) {
|
|
|
36
37
|
const spinner = opts.json ? null : ora({ text: 'Buscando status…', color: 'blue' }).start();
|
|
37
38
|
let status;
|
|
38
39
|
try {
|
|
39
|
-
status = await apiRequest(`/api/v1/
|
|
40
|
+
status = await apiRequest(`/api/cli/v1/workspaces/status?clientId=${encodeURIComponent(opts.clientId)}`);
|
|
40
41
|
spinner?.stop();
|
|
41
42
|
}
|
|
42
43
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,26 +9,26 @@ export declare function runTenantsList(opts: TenantsListOptions): Promise<void>;
|
|
|
9
9
|
export interface TenantsGetOptions {
|
|
10
10
|
json?: boolean;
|
|
11
11
|
}
|
|
12
|
-
export declare function runTenantsGet(id: string, opts: TenantsGetOptions): Promise<void>;
|
|
12
|
+
export declare function runTenantsGet(id: string | undefined, opts: TenantsGetOptions): Promise<void>;
|
|
13
13
|
export interface TenantsCreateOptions {
|
|
14
|
-
name
|
|
15
|
-
slug
|
|
16
|
-
customer
|
|
17
|
-
product
|
|
18
|
-
env
|
|
14
|
+
name?: string;
|
|
15
|
+
slug?: string;
|
|
16
|
+
customer?: string;
|
|
17
|
+
product?: string;
|
|
18
|
+
env?: string;
|
|
19
19
|
domain?: string;
|
|
20
20
|
json?: boolean;
|
|
21
21
|
}
|
|
22
22
|
export declare function runTenantsCreate(opts: TenantsCreateOptions): Promise<void>;
|
|
23
23
|
export interface TenantsUpdateOptions {
|
|
24
|
-
name
|
|
25
|
-
slug
|
|
26
|
-
customer
|
|
27
|
-
product
|
|
28
|
-
env
|
|
24
|
+
name?: string;
|
|
25
|
+
slug?: string;
|
|
26
|
+
customer?: string;
|
|
27
|
+
product?: string;
|
|
28
|
+
env?: string;
|
|
29
29
|
domain?: string;
|
|
30
30
|
json?: boolean;
|
|
31
31
|
}
|
|
32
|
-
export declare function runTenantsUpdate(id: string, opts: TenantsUpdateOptions): Promise<void>;
|
|
33
|
-
export declare function runTenantsSuspend(id: string, opts: ConfirmOptions): Promise<void>;
|
|
34
|
-
export declare function runTenantsReactivate(id: string, opts: ConfirmOptions): Promise<void>;
|
|
32
|
+
export declare function runTenantsUpdate(id: string | undefined, opts: TenantsUpdateOptions): Promise<void>;
|
|
33
|
+
export declare function runTenantsSuspend(id: string | undefined, opts: ConfirmOptions): Promise<void>;
|
|
34
|
+
export declare function runTenantsReactivate(id: string | undefined, opts: ConfirmOptions): Promise<void>;
|