@neetru/cli 2.28.10 → 2.31.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/CHANGELOG.md +92 -1
- package/README.md +61 -17
- package/dist/commands/code.js +10 -1
- package/dist/commands/code.js.map +1 -1
- package/dist/commands/db-move.d.ts +50 -1
- package/dist/commands/db-move.js +137 -13
- package/dist/commands/db-move.js.map +1 -1
- package/dist/commands/db.js +17 -9
- package/dist/commands/db.js.map +1 -1
- package/dist/commands/deploy.d.ts +45 -0
- package/dist/commands/deploy.js +181 -2
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/deployments.d.ts +7 -1
- package/dist/commands/deployments.js +59 -8
- package/dist/commands/deployments.js.map +1 -1
- package/dist/commands/dev-up.d.ts +7 -5
- package/dist/commands/dev-up.js +24 -23
- package/dist/commands/dev-up.js.map +1 -1
- package/dist/commands/docs-produto.d.ts +65 -0
- package/dist/commands/docs-produto.js +322 -0
- package/dist/commands/docs-produto.js.map +1 -0
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.js +7 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/new.d.ts +2 -0
- package/dist/commands/new.js +2 -0
- package/dist/commands/new.js.map +1 -1
- package/dist/commands/servers.d.ts +28 -0
- package/dist/commands/servers.js +126 -1
- package/dist/commands/servers.js.map +1 -1
- package/dist/index.js +110 -11
- package/dist/index.js.map +1 -1
- package/dist/lib/api-client.d.ts +8 -1
- package/dist/lib/api-client.js +20 -2
- package/dist/lib/api-client.js.map +1 -1
- package/dist/lib/compose-generator.d.ts +13 -9
- package/dist/lib/compose-generator.js +28 -60
- package/dist/lib/compose-generator.js.map +1 -1
- package/dist/lib/config-schema.d.ts +40 -6
- package/dist/lib/config-schema.js +11 -0
- package/dist/lib/config-schema.js.map +1 -1
- package/dist/lib/product-docs/check.d.ts +62 -0
- package/dist/lib/product-docs/check.js +489 -0
- package/dist/lib/product-docs/check.js.map +1 -0
- package/dist/lib/product-docs/config.d.ts +66 -0
- package/dist/lib/product-docs/config.js +234 -0
- package/dist/lib/product-docs/config.js.map +1 -0
- package/dist/lib/product-docs/dates.d.ts +17 -0
- package/dist/lib/product-docs/dates.js +41 -0
- package/dist/lib/product-docs/dates.js.map +1 -0
- package/dist/lib/product-docs/frontmatter.d.ts +43 -0
- package/dist/lib/product-docs/frontmatter.js +302 -0
- package/dist/lib/product-docs/frontmatter.js.map +1 -0
- package/dist/lib/product-docs/git.d.ts +16 -0
- package/dist/lib/product-docs/git.js +92 -0
- package/dist/lib/product-docs/git.js.map +1 -0
- package/dist/lib/product-docs/markdown.d.ts +27 -0
- package/dist/lib/product-docs/markdown.js +98 -0
- package/dist/lib/product-docs/markdown.js.map +1 -0
- package/dist/lib/product-docs/ops.d.ts +133 -0
- package/dist/lib/product-docs/ops.js +975 -0
- package/dist/lib/product-docs/ops.js.map +1 -0
- package/dist/lib/product-docs/structure.d.ts +61 -0
- package/dist/lib/product-docs/structure.js +239 -0
- package/dist/lib/product-docs/structure.js.map +1 -0
- package/dist/lib/product-docs/sync.d.ts +101 -0
- package/dist/lib/product-docs/sync.js +313 -0
- package/dist/lib/product-docs/sync.js.map +1 -0
- package/dist/lib/product-docs/taxonomy.d.ts +46 -0
- package/dist/lib/product-docs/taxonomy.js +163 -0
- package/dist/lib/product-docs/taxonomy.js.map +1 -0
- package/dist/lib/product-docs/templates.d.ts +53 -0
- package/dist/lib/product-docs/templates.js +245 -0
- package/dist/lib/product-docs/templates.js.map +1 -0
- package/dist/lib/public-secret-scan.d.ts +76 -0
- package/dist/lib/public-secret-scan.js +446 -0
- package/dist/lib/public-secret-scan.js.map +1 -0
- package/package.json +2 -1
- package/templates/dev/Dockerfile.agent +0 -39
- package/templates/dev/agent-entrypoint.sh +0 -41
- package/templates/dev/docker-compose.dev.yml +0 -63
package/dist/commands/db-move.js
CHANGED
|
@@ -24,20 +24,34 @@
|
|
|
24
24
|
* logo após o POST — a mentira que este arquivo corta.
|
|
25
25
|
* - `decommission` é o ÚNICO caminho que dropa a ORIGEM (comando SEPARADO, MFA),
|
|
26
26
|
* recusado client-side se o ledger ainda não aponta pro destino — espelho da
|
|
27
|
-
* INV-DESTROY do Core (nunca dropar quem o ledger diz ser o vivo).
|
|
27
|
+
* INV-DESTROY do Core (nunca dropar quem o ledger diz ser o vivo). O drop em
|
|
28
|
+
* si é ASSÍNCRONO (o Core despacha `agent.db.drop` pro agente da origem): o
|
|
29
|
+
* POST só confirma o DESPACHO (`outcome: 'dispatched' | 'already_requested'`),
|
|
30
|
+
* nunca "descomissionada" — o desfecho real sai em `db move status`
|
|
31
|
+
* (`sourceDecommission.status`: `dispatched` → `dropped` | `failed`).
|
|
32
|
+
* `--retry` pede uma NOVA tentativa explícita, só aceita depois de uma
|
|
33
|
+
* tentativa anterior `failed` (o Core recusa com `RELOCATE_DECOMMISSION_RETRY_NOT_ALLOWED`
|
|
34
|
+
* senão). Recusas da trava lógica (kill switch, migração não-`done`, período
|
|
35
|
+
* de observação de 7 dias após o `done`, ledger não confirmado no destino,
|
|
36
|
+
* migração ativa do banco, origem já liberada) voltam como 409 com código
|
|
37
|
+
* estável `RELOCATE_DECOMMISSION_*` / `RELOCATE_DISABLED` / `RELOCATE_SOURCE_RELEASED`
|
|
38
|
+
* — mapeados em `DECOMMISSION_REFUSAL_GUIDANCE` pra mensagem PT-BR com o que fazer.
|
|
28
39
|
*
|
|
29
40
|
* Endpoints (contrato com o Core — construídos pelo componente irmão):
|
|
30
41
|
* POST /api/cli/v1/db/{id}/relocate — kickoff (MFA)
|
|
31
42
|
* GET /api/cli/v1/db/relocate/{migrationId} — status (poll)
|
|
32
43
|
* POST /api/cli/v1/db/relocate/{migrationId}/confirm — cutover manual (MFA)
|
|
33
44
|
* POST /api/cli/v1/db/relocate/{migrationId}/abort — rollback seguro (MFA)
|
|
34
|
-
* POST /api/cli/v1/db/relocate/{migrationId}/decommission —
|
|
45
|
+
* POST /api/cli/v1/db/relocate/{migrationId}/decommission — despacha o drop
|
|
46
|
+
* da origem (MFA,
|
|
47
|
+
* ASSÍNCRONO, aceita
|
|
48
|
+
* `retry`)
|
|
35
49
|
*
|
|
36
50
|
* Plain PT-BR em toda string visível ao usuário.
|
|
37
51
|
*/
|
|
38
52
|
import chalk from 'chalk';
|
|
39
53
|
import ora from 'ora';
|
|
40
|
-
import { apiRequest, CliNetworkError } from '../lib/api-client.js';
|
|
54
|
+
import { apiRequest, CliApiError, CliNetworkError } from '../lib/api-client.js';
|
|
41
55
|
import { handleApiError } from '../lib/api-error.js';
|
|
42
56
|
import { requireToken } from '../lib/cli-read.js';
|
|
43
57
|
import { confirmDestructive, resolveStepUp } from '../lib/cli-write.js';
|
|
@@ -543,9 +557,30 @@ export async function runDbMoveStatus(migrationId, opts = {}) {
|
|
|
543
557
|
}
|
|
544
558
|
if (m.live?.serverId)
|
|
545
559
|
log.dim(` vivo agora em (ledger): ${m.live.serverId}`);
|
|
560
|
+
if (m.doneAt)
|
|
561
|
+
log.dim(` concluído (done) em: ${m.doneAt}`);
|
|
546
562
|
if (m.lastError) {
|
|
547
563
|
log.warn(`Último erro: ${m.lastError.code} — ${m.lastError.message}`);
|
|
548
564
|
}
|
|
565
|
+
// ── Decommission da origem (assíncrono) — `neetru db move decommission`. ──
|
|
566
|
+
if (m.sourceDecommission) {
|
|
567
|
+
const sd = m.sourceDecommission;
|
|
568
|
+
log.heading('Decommission da origem (cópia antiga)');
|
|
569
|
+
log.info(`Status: ${sd.status} (tentativa ${sd.attempt ?? 1})`);
|
|
570
|
+
log.dim(` pedido em: ${sd.requestedAt}`);
|
|
571
|
+
if (sd.finishedAt)
|
|
572
|
+
log.dim(` terminou em: ${sd.finishedAt}`);
|
|
573
|
+
if (sd.error)
|
|
574
|
+
log.warn(` erro: ${sd.error.status} — ${sd.error.message}`);
|
|
575
|
+
if (sd.status === 'failed') {
|
|
576
|
+
log.info(` tentar de novo: ${chalk.cyan(`neetru db move decommission ${m.id} --reason "<motivo>" --retry`)}`);
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
else if (m.state === 'done') {
|
|
580
|
+
log.dim(' origem ainda não descomissionada (neetru db move decommission).');
|
|
581
|
+
}
|
|
582
|
+
if (m.sourceDecommissionedAt)
|
|
583
|
+
log.dim(` origem removida (drop concluído) em: ${m.sourceDecommissionedAt}`);
|
|
549
584
|
if (TERMINAL_ATTENTION.has(m.state)) {
|
|
550
585
|
log.warn('PAROU (fail-closed): drift de ledger ou destroy recusado por INV-DESTROY. ' +
|
|
551
586
|
'NENHUM dado foi destruído — a máquina espera intervenção manual.');
|
|
@@ -752,13 +787,51 @@ async function pollAbort(migrationId, opts) {
|
|
|
752
787
|
// ---------------------------------------------------------------------------
|
|
753
788
|
// neetru db move decommission <migrationId> (drop da ORIGEM — comando à parte)
|
|
754
789
|
// ---------------------------------------------------------------------------
|
|
790
|
+
/**
|
|
791
|
+
* Guia PT-BR (o que o código significa + o que fazer) pras recusas 409 do
|
|
792
|
+
* `POST .../decommission` — a trava lógica inteira vive numa única tx no Core
|
|
793
|
+
* (`decideSourceDecommission`/`dispatchSourceDecommission`); o CLI só explica.
|
|
794
|
+
* Mantido como mapa simples (não função) pra ser testável/legível sem mocks.
|
|
795
|
+
*/
|
|
796
|
+
export const DECOMMISSION_REFUSAL_GUIDANCE = {
|
|
797
|
+
RELOCATE_DISABLED: 'O relocate automático está DESLIGADO (platform_config/relocate.enabled != true) — ' +
|
|
798
|
+
'o decommission foi recusado ANTES de qualquer efeito. Fale com quem administra a ' +
|
|
799
|
+
'plataforma antes de tentar de novo.',
|
|
800
|
+
RELOCATE_DECOMMISSION_NOT_DONE: 'Esta migração ainda não terminou (precisa estar em "done" com doneAt gravado). ' +
|
|
801
|
+
`Não dá pra descomissionar a origem antes do cutover ser confirmado — veja: ${chalk.cyan('neetru db move status <id>')}.`,
|
|
802
|
+
RELOCATE_DECOMMISSION_OBSERVATION_PENDING: 'Ainda dentro do período de observação de 7 dias depois do "done" — a cópia fria da ' +
|
|
803
|
+
'origem continua servindo de fallback até lá (a mensagem do Core traz a data exata de ' +
|
|
804
|
+
'liberação). Espere o prazo passar e tente de novo.',
|
|
805
|
+
RELOCATE_DECOMMISSION_LEDGER_MISMATCH: 'O banco vivo (ledger) não está confirmado no destino desta migração — dropar a origem ' +
|
|
806
|
+
`agora arriscaria apagar o banco em USO. Confira ${chalk.cyan('neetru db move status <id>')} antes de insistir.`,
|
|
807
|
+
RELOCATE_DECOMMISSION_MIGRATION_ACTIVE: 'Há uma migração deste banco ainda ativa (ou um ponteiro de migração no ledger) — espere ' +
|
|
808
|
+
'ela terminar (ou falhar) antes de descomissionar a origem desta.',
|
|
809
|
+
RELOCATE_DECOMMISSION_RETRY_NOT_ALLOWED: '--retry só é aceito depois de uma tentativa anterior que terminou "failed". Ou não há ' +
|
|
810
|
+
`tentativa anterior (tire o --retry), ou a última ainda não falhou — confira ${chalk.cyan('neetru db move status <id>')}.`,
|
|
811
|
+
RELOCATE_SOURCE_RELEASED: 'A origem já foi liberada de volta pro app nesta migração (o watchdog autorizou o ' +
|
|
812
|
+
'retorno) — ela deixou de ser uma cópia fria isolada e pode estar recebendo escrita. ' +
|
|
813
|
+
'Investigue manualmente antes de qualquer drop.',
|
|
814
|
+
RELOCATE_ENGINE_UNSUPPORTED: 'O engine deste banco não é suportado pelo relocate (hoje só vm-postgres-single).',
|
|
815
|
+
};
|
|
816
|
+
/**
|
|
817
|
+
* Monta a mensagem final de uma recusa 409 do decommission: a mensagem DINÂMICA
|
|
818
|
+
* do Core primeiro (datas/serverIds reais — nunca descartada), seguida da
|
|
819
|
+
* explicação+ação ESTÁTICA do código (quando conhecido). Função pura — testável
|
|
820
|
+
* sem rede.
|
|
821
|
+
*/
|
|
822
|
+
export function describeDecommissionRefusal(code, serverMessage) {
|
|
823
|
+
const guidance = DECOMMISSION_REFUSAL_GUIDANCE[code];
|
|
824
|
+
return guidance ? `${serverMessage}\n ${guidance}` : serverMessage;
|
|
825
|
+
}
|
|
755
826
|
/**
|
|
756
827
|
* Descomissiona (dropa) a ORIGEM de uma relocação JÁ concluída. É o ÚNICO caminho
|
|
757
828
|
* que destrói a origem, e por design é SEPARADO, explícito, gated por MFA e —
|
|
758
829
|
* client-side — recusado se o ledger ainda NÃO aponta pro destino (i.e., o move
|
|
759
830
|
* não terminou / foi revertido). Isto é o espelho-CLI da INV-DESTROY: nunca pedir
|
|
760
831
|
* o drop de um servidor que o ledger diz ser o vivo. O Core é a autoridade final
|
|
761
|
-
* (re-checa live==target + grace + INV-DESTROY
|
|
832
|
+
* (re-checa live==target + grace + INV-DESTROY + observação de 7 dias), mas
|
|
833
|
+
* falhamos cedo e claro quando dá. O drop em si é ASSÍNCRONO — este comando só
|
|
834
|
+
* confirma o DESPACHO (`neetru db move status` acompanha o desfecho real).
|
|
762
835
|
*/
|
|
763
836
|
export async function runDbMoveDecommission(migrationId, opts = {}) {
|
|
764
837
|
if (!opts.json)
|
|
@@ -793,37 +866,88 @@ export async function runDbMoveDecommission(migrationId, opts = {}) {
|
|
|
793
866
|
`destino (estado=${m.state}` +
|
|
794
867
|
(liveServerId ? `, vivo=${liveServerId}` : '') +
|
|
795
868
|
`). Descomissionar a origem (${m.sourceServerId}) agora poderia apagar o ` +
|
|
796
|
-
'banco VIVO. Conclua
|
|
869
|
+
'banco VIVO. Conclua a relocação ou reverta primeiro.';
|
|
797
870
|
if (opts.json)
|
|
798
871
|
console.log(JSON.stringify({ ok: false, error: 'not_decommissionable', message: msg, state: m.state }));
|
|
799
872
|
else
|
|
800
873
|
log.error(msg);
|
|
801
874
|
safeExit(1);
|
|
802
875
|
}
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
876
|
+
// ── Guarda-cliente de `--retry`: mesma regra do Core (RELOCATE_DECOMMISSION_
|
|
877
|
+
// RETRY_NOT_ALLOWED), só pra falhar cedo com uma mensagem clara. O Core
|
|
878
|
+
// re-checa na MESMA tx que despacharia o drop — é a autoridade final. ──
|
|
879
|
+
if (opts.retry && (!m.sourceDecommission || m.sourceDecommission.status !== 'failed')) {
|
|
880
|
+
const msg = m.sourceDecommission
|
|
881
|
+
? `RECUSADO: --retry só é aceito depois de uma tentativa que terminou "failed" — ` +
|
|
882
|
+
`a tentativa ${m.sourceDecommission.attempt ?? 1} está "${m.sourceDecommission.status}".`
|
|
883
|
+
: 'RECUSADO: --retry só é aceito depois de uma tentativa anterior que terminou "failed" — não há nenhuma.';
|
|
884
|
+
if (opts.json) {
|
|
885
|
+
console.log(JSON.stringify({ ok: false, error: 'RELOCATE_DECOMMISSION_RETRY_NOT_ALLOWED', message: msg }));
|
|
886
|
+
}
|
|
887
|
+
else {
|
|
888
|
+
log.error(msg);
|
|
889
|
+
}
|
|
890
|
+
safeExit(1);
|
|
891
|
+
}
|
|
892
|
+
const retryNote = opts.retry
|
|
893
|
+
? ' Esta é uma NOVA TENTATIVA (--retry) sobre a anterior, que falhou.'
|
|
894
|
+
: '';
|
|
895
|
+
await confirmDestructive(`Dropar (DESCOMISSIONAR) a cópia ANTIGA na origem ${m.sourceServerId} do banco ${m.dbId}? ` +
|
|
896
|
+
`O vivo já está no destino (${m.targetServerId}).${retryNote} O drop é despachado pro ` +
|
|
897
|
+
'agente da origem de forma ASSÍNCRONA e, ao terminar, é IRREVERSÍVEL — fecha de vez a ' +
|
|
898
|
+
'janela de rollback frio.', { yes: opts.yes, json: opts.json });
|
|
806
899
|
const { headers } = await resolveStepUp({
|
|
807
900
|
mfaToken: opts.mfaToken,
|
|
808
901
|
json: opts.json,
|
|
809
902
|
yes: opts.yes,
|
|
810
903
|
});
|
|
811
|
-
const spinner = opts.json ? null : ora({ text: '
|
|
904
|
+
const spinner = opts.json ? null : ora({ text: 'Despachando o drop da origem…', color: 'blue' }).start();
|
|
812
905
|
let resp;
|
|
813
906
|
try {
|
|
814
|
-
resp = await apiRequest(`/api/cli/v1/db/relocate/${encodeURIComponent(migrationId)}/decommission`, {
|
|
907
|
+
resp = await apiRequest(`/api/cli/v1/db/relocate/${encodeURIComponent(migrationId)}/decommission`, {
|
|
908
|
+
method: 'POST',
|
|
909
|
+
body: { reason: opts.reason, ...(opts.retry ? { retry: true } : {}) },
|
|
910
|
+
headers,
|
|
911
|
+
});
|
|
815
912
|
spinner?.stop();
|
|
816
913
|
}
|
|
817
914
|
catch (err) {
|
|
818
|
-
spinner?.fail('Falha ao
|
|
915
|
+
spinner?.fail('Falha ao despachar o decommission da origem.');
|
|
916
|
+
// 409 = recusa da TRAVA LÓGICA (não erro de transporte) — mensagem PT-BR
|
|
917
|
+
// específica por código (o que significa + o que fazer), nunca genérica.
|
|
918
|
+
if (err instanceof CliApiError && err.status === 409) {
|
|
919
|
+
if (opts.json) {
|
|
920
|
+
console.log(JSON.stringify({
|
|
921
|
+
ok: false,
|
|
922
|
+
error: err.code,
|
|
923
|
+
message: err.message,
|
|
924
|
+
guidance: DECOMMISSION_REFUSAL_GUIDANCE[err.code] ?? null,
|
|
925
|
+
}));
|
|
926
|
+
}
|
|
927
|
+
else {
|
|
928
|
+
log.error(describeDecommissionRefusal(err.code, err.message));
|
|
929
|
+
}
|
|
930
|
+
safeExit(1);
|
|
931
|
+
}
|
|
819
932
|
handleApiError(err, opts.json);
|
|
820
933
|
}
|
|
821
934
|
if (opts.json) {
|
|
822
935
|
console.log(JSON.stringify({ ...resp, ok: true }));
|
|
823
936
|
return;
|
|
824
937
|
}
|
|
825
|
-
|
|
826
|
-
`
|
|
938
|
+
if (resp.outcome === 'already_requested') {
|
|
939
|
+
log.warn(`Já existe um pedido de decommission pra esta migração (commandId ${resp.commandId}` +
|
|
940
|
+
`${resp.status ? `, status atual: ${resp.status}` : ''}) — nenhum novo drop foi criado ` +
|
|
941
|
+
'(no-op idempotente).');
|
|
942
|
+
log.info(resp.status === 'failed'
|
|
943
|
+
? `A tentativa anterior FALHOU. Pra tentar de novo: ${chalk.cyan(`neetru db move decommission ${migrationId} --reason "<motivo>" --retry`)}`
|
|
944
|
+
: `Acompanhe com: ${chalk.cyan(`neetru db move status ${migrationId}`)}`);
|
|
945
|
+
return;
|
|
946
|
+
}
|
|
947
|
+
log.success(`Drop da origem ${resp.sourceServerId ?? m.sourceServerId} DESPACHADO ` +
|
|
948
|
+
`(tentativa ${resp.attempt ?? 1}, commandId ${resp.commandId}).`);
|
|
949
|
+
log.info(`O drop é ASSÍNCRONO — acompanhe até terminar com: ${chalk.cyan(`neetru db move status ${migrationId}`)} ` +
|
|
950
|
+
'(sourceDecommission.status: dispatched → dropped | failed).');
|
|
827
951
|
}
|
|
828
952
|
// ---------------------------------------------------------------------------
|
|
829
953
|
// neetru db where (onde o banco vive) — por --product <slug> ou --db <dbId>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-move.js","sourceRoot":"","sources":["../../src/commands/db-move.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db-move.js","sourceRoot":"","sources":["../../src/commands/db-move.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/db.js
CHANGED
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
import * as fs from 'node:fs/promises';
|
|
24
24
|
import * as fsSync from 'node:fs';
|
|
25
25
|
import * as path from 'node:path';
|
|
26
|
-
import inquirer from 'inquirer';
|
|
27
26
|
import chalk from 'chalk';
|
|
28
27
|
import ora from 'ora';
|
|
29
28
|
import { log } from '../utils/logger.js';
|
|
@@ -35,6 +34,15 @@ import { safeExit } from '../utils/safe-exit.js';
|
|
|
35
34
|
import { runApplyPipeline, runExecSqlPipeline, buildPipelineDeps, isPipelineError, } from '../lib/db-pipeline/index.js';
|
|
36
35
|
import { resolveStepUp } from '../lib/cli-write.js';
|
|
37
36
|
import { loadProductConfig } from '../lib/product-config.js';
|
|
37
|
+
/**
|
|
38
|
+
* `inquirer` sob demanda (bug_b1e9af59): ~0,5s de carga, e so os prompts
|
|
39
|
+
* interativos usam. Era o unico import estatico dele no grafo de `neetru db`
|
|
40
|
+
* — `db list`/`db status`/`db apply --json` (e os testes) pagavam a carga sem
|
|
41
|
+
* nunca perguntar nada.
|
|
42
|
+
*/
|
|
43
|
+
async function carregarInquirer() {
|
|
44
|
+
return (await import('inquirer')).default;
|
|
45
|
+
}
|
|
38
46
|
// ---------------------------------------------------------------------------
|
|
39
47
|
// Constantes e tipos locais
|
|
40
48
|
// ---------------------------------------------------------------------------
|
|
@@ -343,7 +351,7 @@ export async function runDbInit(opts = {}) {
|
|
|
343
351
|
let dbName = opts.name;
|
|
344
352
|
if (!dbName && !opts.yes && !opts.json) {
|
|
345
353
|
const existing = dbJson.databases.map((d) => d.name);
|
|
346
|
-
const { n } = await
|
|
354
|
+
const { n } = await (await carregarInquirer()).prompt([
|
|
347
355
|
{
|
|
348
356
|
type: 'input',
|
|
349
357
|
name: 'n',
|
|
@@ -400,7 +408,7 @@ export async function runDbInit(opts = {}) {
|
|
|
400
408
|
engine = 'cloud-sql-postgres';
|
|
401
409
|
}
|
|
402
410
|
else {
|
|
403
|
-
const { e } = await
|
|
411
|
+
const { e } = await (await carregarInquirer()).prompt([
|
|
404
412
|
{
|
|
405
413
|
type: 'list',
|
|
406
414
|
name: 'e',
|
|
@@ -454,7 +462,7 @@ export async function runDbInit(opts = {}) {
|
|
|
454
462
|
// segue pro fallback de input livre
|
|
455
463
|
}
|
|
456
464
|
if (hosts.length > 0) {
|
|
457
|
-
const { sid } = await
|
|
465
|
+
const { sid } = await (await carregarInquirer()).prompt([
|
|
458
466
|
{
|
|
459
467
|
type: 'list',
|
|
460
468
|
name: 'sid',
|
|
@@ -468,7 +476,7 @@ export async function runDbInit(opts = {}) {
|
|
|
468
476
|
serverId = sid;
|
|
469
477
|
}
|
|
470
478
|
else {
|
|
471
|
-
const { sid } = await
|
|
479
|
+
const { sid } = await (await carregarInquirer()).prompt([
|
|
472
480
|
{
|
|
473
481
|
type: 'input',
|
|
474
482
|
name: 'sid',
|
|
@@ -720,7 +728,7 @@ export async function runDbApply(opts = {}) {
|
|
|
720
728
|
return;
|
|
721
729
|
}
|
|
722
730
|
else if (dbJson.databases.length > 1 && !opts.yes && !opts.json) {
|
|
723
|
-
const { chosen } = await
|
|
731
|
+
const { chosen } = await (await carregarInquirer()).prompt([
|
|
724
732
|
{
|
|
725
733
|
type: 'list',
|
|
726
734
|
name: 'chosen',
|
|
@@ -1177,7 +1185,7 @@ export async function runDbExecSql(opts = {}) {
|
|
|
1177
1185
|
spinner?.stop();
|
|
1178
1186
|
log.dim('');
|
|
1179
1187
|
log.dim(` Severidade: ${severityColor(classification.overallSeverity)}`);
|
|
1180
|
-
const { confirmed } = await
|
|
1188
|
+
const { confirmed } = await (await carregarInquirer()).prompt([
|
|
1181
1189
|
{
|
|
1182
1190
|
type: 'confirm',
|
|
1183
1191
|
name: 'confirmed',
|
|
@@ -1442,7 +1450,7 @@ export async function runDbRestore(dbId, opts) {
|
|
|
1442
1450
|
backupId = opts.backupId;
|
|
1443
1451
|
}
|
|
1444
1452
|
else {
|
|
1445
|
-
const ans = await
|
|
1453
|
+
const ans = await (await carregarInquirer()).prompt([
|
|
1446
1454
|
{
|
|
1447
1455
|
type: 'list',
|
|
1448
1456
|
name: 'backupId',
|
|
@@ -1463,7 +1471,7 @@ export async function runDbRestore(dbId, opts) {
|
|
|
1463
1471
|
log.warn(`pelo backup ${chalk.bold(backupId)} (${fmtTimestamp(chosen?.timestamp)}).`);
|
|
1464
1472
|
log.warn('Esta operação NÃO pode ser desfeita.');
|
|
1465
1473
|
log.warn('');
|
|
1466
|
-
const { confirmText } = await
|
|
1474
|
+
const { confirmText } = await (await carregarInquirer()).prompt([
|
|
1467
1475
|
{
|
|
1468
1476
|
type: 'input',
|
|
1469
1477
|
name: 'confirmText',
|