@oktis-works/cms 0.2.1 → 0.3.1

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.
Files changed (75) hide show
  1. package/dist/assets.d.ts +23 -6
  2. package/dist/assets.d.ts.map +1 -1
  3. package/dist/assets.js +262 -87
  4. package/dist/assets.js.map +1 -1
  5. package/dist/bluegreen.d.ts.map +1 -1
  6. package/dist/bluegreen.js +75 -52
  7. package/dist/bluegreen.js.map +1 -1
  8. package/dist/commands.d.ts.map +1 -1
  9. package/dist/commands.js +238 -142
  10. package/dist/commands.js.map +1 -1
  11. package/dist/config-wizard.js +34 -36
  12. package/dist/config-wizard.js.map +1 -1
  13. package/dist/deploy-target.d.ts +20 -0
  14. package/dist/deploy-target.d.ts.map +1 -0
  15. package/dist/deploy-target.js +90 -0
  16. package/dist/deploy-target.js.map +1 -0
  17. package/dist/deploy.d.ts +7 -7
  18. package/dist/deploy.d.ts.map +1 -1
  19. package/dist/deploy.js +123 -273
  20. package/dist/deploy.js.map +1 -1
  21. package/dist/docker.d.ts +16 -0
  22. package/dist/docker.d.ts.map +1 -1
  23. package/dist/docker.js +25 -0
  24. package/dist/docker.js.map +1 -1
  25. package/dist/doctor.js +12 -12
  26. package/dist/doctor.js.map +1 -1
  27. package/dist/env-file.js +1 -1
  28. package/dist/env-file.js.map +1 -1
  29. package/dist/env-schema.d.ts.map +1 -1
  30. package/dist/env-schema.js +64 -64
  31. package/dist/env-schema.js.map +1 -1
  32. package/dist/extension-scaffold.js +5 -5
  33. package/dist/extension-scaffold.js.map +1 -1
  34. package/dist/guards.js +8 -8
  35. package/dist/guards.js.map +1 -1
  36. package/dist/history.js +1 -1
  37. package/dist/installer.js +9 -9
  38. package/dist/installer.js.map +1 -1
  39. package/dist/npm-registry.js +1 -1
  40. package/dist/npm-registry.js.map +1 -1
  41. package/dist/pm2.d.ts +18 -0
  42. package/dist/pm2.d.ts.map +1 -0
  43. package/dist/pm2.js +179 -0
  44. package/dist/pm2.js.map +1 -0
  45. package/dist/project-config.js +1 -1
  46. package/dist/project-config.js.map +1 -1
  47. package/dist/prompt.d.ts +27 -4
  48. package/dist/prompt.d.ts.map +1 -1
  49. package/dist/prompt.js +254 -29
  50. package/dist/prompt.js.map +1 -1
  51. package/dist/redeploy.d.ts +6 -1
  52. package/dist/redeploy.d.ts.map +1 -1
  53. package/dist/redeploy.js +137 -74
  54. package/dist/redeploy.js.map +1 -1
  55. package/dist/rollback.js +21 -21
  56. package/dist/rollback.js.map +1 -1
  57. package/dist/scaffold-docs.d.ts.map +1 -1
  58. package/dist/scaffold-docs.js +44 -19
  59. package/dist/scaffold-docs.js.map +1 -1
  60. package/dist/scaffold.d.ts +3 -1
  61. package/dist/scaffold.d.ts.map +1 -1
  62. package/dist/scaffold.js +25 -16
  63. package/dist/scaffold.js.map +1 -1
  64. package/dist/simple.d.ts +31 -0
  65. package/dist/simple.d.ts.map +1 -0
  66. package/dist/simple.js +200 -0
  67. package/dist/simple.js.map +1 -0
  68. package/dist/start.js +1 -1
  69. package/dist/theme-build.js +3 -3
  70. package/dist/theme-build.js.map +1 -1
  71. package/dist/update.d.ts +22 -15
  72. package/dist/update.d.ts.map +1 -1
  73. package/dist/update.js +163 -81
  74. package/dist/update.js.map +1 -1
  75. package/package.json +7 -7
package/dist/update.d.ts CHANGED
@@ -1,52 +1,59 @@
1
1
  import { type DeployChoices } from './bluegreen.js';
2
+ import { type DeployTarget } from './deploy-target.js';
2
3
  import { type Runner } from './docker.js';
3
4
  import { type ContainerProbe } from './guards.js';
4
5
  import { Prompt } from './prompt.js';
5
6
  export type UpdateMode = 'download' | 'deploy';
6
7
  export interface OutdatedEntry {
7
- /** nome curto do pacote (`api`), como aparece em node_modules. */
8
+ /** short name (`api`), as it appears in node_modules. */
8
9
  name: string;
9
- /** nome publicado (`@oktis-works/api`). */
10
+ /** published name (`@oktis-works/api`). */
10
11
  pkg: string;
11
12
  current: string;
12
13
  latest: string;
13
14
  }
14
15
  export interface ScanResult {
15
- /** false = não existe `node_modules/@oktis-works` (projeto nunca instalou). */
16
+ /** false = no `node_modules/@oktis-works` (project never installed). */
16
17
  installed: boolean;
17
18
  outdated: OutdatedEntry[];
18
19
  }
19
20
  export interface UpdateOptions {
20
21
  cwd?: string;
21
- /** `--install`: aplica as atualizações no modo download. */
22
+ /** `--install`: applies the updates in download mode. */
22
23
  install?: boolean;
23
- /** `--mode download|deploy` (aliases abaixo); ausente = menu/default. */
24
+ /** `--mode download|deploy`; absent = menu/default. */
24
25
  mode?: string;
25
- /** `--no-cache`: build limpo. */
26
+ /** `--target blue-green|simple|pm2` (deploy mode only). */
27
+ target?: string;
28
+ /** `--no-cache`: clean build. */
26
29
  noCache?: boolean;
27
30
  /** `--remove-orphans` / `--keep-orphans`. */
28
31
  removeOrphans?: boolean;
29
32
  keepOrphans?: boolean;
30
- /** `--yes`: nenhum prompt, tudo em default. */
33
+ /** `--yes`: no prompts, everything at its default. */
31
34
  yes?: boolean;
32
- /** `--force`: permite rodar dentro de container (não recomendado). */
35
+ /** `--force`: allows running inside a container (not recommended). */
33
36
  force?: boolean;
34
- /** Sonda do `assertHostOnly` (testes); em produção usa a detecção real. */
37
+ /** `assertHostOnly` probe (tests); production uses the real detection. */
35
38
  probe?: ContainerProbe;
36
39
  runner?: Runner;
37
40
  prompt?: Prompt;
38
41
  log?: (message: string) => void;
39
42
  }
40
- /** `null` = valor inválido (diferente de "não informado"). */
43
+ /** `null` = invalid value (different from "not provided"). */
41
44
  export declare function parseMode(value: string): UpdateMode | null;
42
45
  /**
43
- * Varre `node_modules/@oktis-works/*` e compara cada versão instalada com a
44
- * do registry. Falha de rede num pacote não derruba a varredura: ele fica de
45
- * fora e o operador vê `?` na próxima rodada.
46
+ * Scans `node_modules/@oktis-works/*` and compares each installed version with
47
+ * the registry. A network failure on one package never breaks the scan — it is
48
+ * skipped and the operator sees `?` on the next run.
46
49
  */
47
50
  export declare function scanOutdated(cwd: string, log?: (message: string) => void): Promise<ScanResult>;
48
- /** Flags > prompt. Fora de TTY, defaults conservadores e determinísticos. */
49
- export declare function resolveDeployChoices(opts: Pick<UpdateOptions, 'noCache' | 'removeOrphans' | 'keepOrphans' | 'yes'>, prompt: Prompt): Promise<DeployChoices>;
51
+ /**
52
+ * Flags > prompt. Outside a TTY the defaults are conservative and
53
+ * deterministic. `removeOrphans` only matters for blue/green — the simple
54
+ * stack and PM2 have no lane to clean up.
55
+ */
56
+ export declare function resolveDeployChoices(opts: Pick<UpdateOptions, 'noCache' | 'removeOrphans' | 'keepOrphans' | 'yes'>, prompt: Prompt, target?: DeployTarget): Promise<DeployChoices>;
50
57
  export declare function runDownload(scan: ScanResult, opts: UpdateOptions, prompt: Prompt): Promise<number>;
51
58
  export declare function runUpdate(opts?: UpdateOptions): Promise<number>;
52
59
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAElE,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AAIpD,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,+EAA+E;IAC/E,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4DAA4D;IAC5D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+CAA+C;IAC/C,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,sEAAsE;IACtE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAcD,8DAA8D;AAC9D,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAE1D;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAkB,GAC3C,OAAO,CAAC,UAAU,CAAC,CAiCrB;AAED,6EAA6E;AAC7E,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,eAAe,GAAG,aAAa,GAAG,KAAK,CAAC,EAC9E,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC,CAwBxB;AA0DD,wBAAsB,WAAW,CAC/B,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAkDjB;AAED,wBAAsB,SAAS,CAAC,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAoGzE"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EAA6B,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAElE,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AAIpD,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,wEAAwE;IACxE,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sDAAsD;IACtD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,sEAAsE;IACtE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAcD,8DAA8D;AAC9D,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAE1D;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAkB,GAC3C,OAAO,CAAC,UAAU,CAAC,CAiCrB;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,eAAe,GAAG,aAAa,GAAG,KAAK,CAAC,EAC9E,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,YAA2B,GAClC,OAAO,CAAC,aAAa,CAAC,CA2BxB;AAoED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAkDjB;AAED,wBAAsB,SAAS,CAAC,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CA8KzE"}
package/dist/update.js CHANGED
@@ -1,25 +1,27 @@
1
1
  // @oktis-works/cms - `okcms update` (F3)
2
2
  //
3
- // Dois caminhos, um só comando:
3
+ // Two paths, one command:
4
4
  //
5
- // download baixa/atualiza os pacotes @oktis-works no host. É o
6
- // comportamento histórico (`okcms update -i`) e continua sendo o
7
- // default em não-TTY — script nenhum passa a fazer deploy por
8
- // acidente só porque a CLI ganhou um menu.
5
+ // download fetches/updates the @oktis-works packages on the host. This is
6
+ // the historical behaviour (`okcms update -i`) and stays the
7
+ // default outside a TTY — no script starts deploying by accident
8
+ // just because the CLI grew a menu.
9
9
  //
10
- // deploy sobe a aplicação em Docker com troca blue/green: pacotes no
11
- // host → build → migrations → edge da lane nova → healthcheck →
12
- // swap do nginx → dreno do worker → derruba a lane antiga.
13
- // A CLI roda no HOST, sempre (ver assertHostOnly).
10
+ // deploy runs the application for the chosen target: blue/green lanes,
11
+ // the simple container stack, or PM2 on the host. The CLI always
12
+ // runs on the HOST (see assertHostOnly).
14
13
  //
15
- // A escolha entre os dois é o menu de TTY; fora de TTY vale `--mode` ou o
16
- // default histórico.
14
+ // The path comes from the TTY menu; outside a TTY `--mode` (and `--target`)
15
+ // or the historical default decide.
17
16
  //
18
- // Histórico e rollback: cada operação (download/deploy) grava em
19
- // `.deploy/update-history.json` — `okcms rollback` lista e permite voltar.
17
+ // History and rollback: every operation writes to `.deploy/update-history.json`
18
+ // — `okcms rollback` lists it and can go back.
20
19
  import { existsSync, readdirSync, readFileSync } from 'node:fs';
21
20
  import { join } from 'node:path';
22
21
  import { deployBlueGreen } from './bluegreen.js';
22
+ import { deploySimple } from './simple.js';
23
+ import { deployPm2 } from './pm2.js';
24
+ import { resolveTarget, saveTarget } from './deploy-target.js';
23
25
  import { defaultRunner } from './docker.js';
24
26
  import { assertHostOnly } from './guards.js';
25
27
  import { getLatestVersion } from './npm-registry.js';
@@ -37,14 +39,14 @@ const MODE_ALIASES = {
37
39
  'blue-green': 'deploy',
38
40
  'blue_green': 'deploy',
39
41
  };
40
- /** `null` = valor inválido (diferente de "não informado"). */
42
+ /** `null` = invalid value (different from "not provided"). */
41
43
  export function parseMode(value) {
42
44
  return MODE_ALIASES[value.trim().toLowerCase()] ?? null;
43
45
  }
44
46
  /**
45
- * Varre `node_modules/@oktis-works/*` e compara cada versão instalada com a
46
- * do registry. Falha de rede num pacote não derruba a varredura: ele fica de
47
- * fora e o operador vê `?` na próxima rodada.
47
+ * Scans `node_modules/@oktis-works/*` and compares each installed version with
48
+ * the registry. A network failure on one package never breaks the scan — it is
49
+ * skipped and the operator sees `?` on the next run.
48
50
  */
49
51
  export async function scanOutdated(cwd, log = console.log) {
50
52
  const nmDir = join(cwd, 'node_modules', '@oktis-works');
@@ -61,40 +63,47 @@ export async function scanOutdated(cwd, log = console.log) {
61
63
  current = pkgJson.version ?? '?';
62
64
  }
63
65
  catch {
64
- // sem package.json legível — tratado como desconhecido abaixo
66
+ // no readable package.json — treated as unknown below
65
67
  }
66
68
  const latest = await getLatestVersion(`@oktis-works/${name}`);
67
69
  if (!latest || latest === current) {
68
- log(` ✓ @oktis-works/${name} ${current} (em dia)`);
70
+ log(` ✓ @oktis-works/${name} ${current} (up to date)`);
69
71
  continue;
70
72
  }
71
- log(` ↑ @oktis-works/${name} ${current} → ${latest} disponível`);
73
+ log(` ↑ @oktis-works/${name} ${current} → ${latest} available`);
72
74
  outdated.push({ name, pkg: `@oktis-works/${name}`, current, latest });
73
75
  }
74
76
  return { installed: true, outdated };
75
77
  }
76
- /** Flags > prompt. Fora de TTY, defaults conservadores e determinísticos. */
77
- export async function resolveDeployChoices(opts, prompt) {
78
+ /**
79
+ * Flags > prompt. Outside a TTY the defaults are conservative and
80
+ * deterministic. `removeOrphans` only matters for blue/green — the simple
81
+ * stack and PM2 have no lane to clean up.
82
+ */
83
+ export async function resolveDeployChoices(opts, prompt, target = 'blue-green') {
78
84
  const interactive = prompt.interactive && opts.yes !== true;
85
+ const wantsCache = target !== 'pm2';
79
86
  const noCache = opts.noCache === true
80
87
  ? true
81
- : interactive
82
- ? !(await prompt.confirm('Build com cache de camadas? (não = rebuild limpo, mais lento)', {
88
+ : interactive && wantsCache
89
+ ? !(await prompt.confirm('Build with layer cache? (no = clean rebuild, slower)', {
83
90
  defaultValue: true,
84
91
  }))
85
92
  : false;
86
- const removeOrphans = opts.keepOrphans === true
87
- ? false
88
- : opts.removeOrphans === true
89
- ? true
90
- : interactive
91
- ? await prompt.confirm('Remover contêineres órfãos da lane antiga?', {
92
- defaultValue: true,
93
- })
94
- : true;
93
+ const removeOrphans = target !== 'blue-green'
94
+ ? true
95
+ : opts.keepOrphans === true
96
+ ? false
97
+ : opts.removeOrphans === true
98
+ ? true
99
+ : interactive
100
+ ? await prompt.confirm('Remove orphan containers from the previous lane?', {
101
+ defaultValue: true,
102
+ })
103
+ : true;
95
104
  return { noCache, removeOrphans };
96
105
  }
97
- /** Grava entrada no histórico de update + atualiza docs do projeto. */
106
+ /** Writes the download history entry + refreshes the generated project docs. */
98
107
  async function recordUpdateAndDocs(cwd, scan) {
99
108
  const pkg = await import('../package.json', { with: { type: 'json' } });
100
109
  const cliVer = pkg.default.version;
@@ -108,13 +117,13 @@ async function recordUpdateAndDocs(cwd, scan) {
108
117
  at: new Date().toISOString(),
109
118
  cliVersion: cliVer,
110
119
  packages,
111
- message: `Atualizados ${packages.length} pacote(s) via download`,
120
+ message: `${packages.length} package(s) updated via download`,
112
121
  }, cliVer);
113
- // Atualiza docs do projeto (README/PLUGIN/THEME) — só reescreve se mudou
114
- const updatedDocs = updateProjectDocs(cwd);
115
- return updatedDocs;
122
+ // refresh project docs (README/PLUGIN/THEME) — only rewritten when changed
123
+ return updateProjectDocs(cwd);
116
124
  }
117
- async function recordDeployAndDocs(cwd, scan, lane, previousLane) {
125
+ /** Writes the deploy history entry + refreshes the generated project docs. */
126
+ async function recordDeployAndDocs(cwd, scan, record) {
118
127
  const pkg = await import('../package.json', { with: { type: 'json' } });
119
128
  const cliVer = pkg.default.version;
120
129
  const packages = scan.outdated.map((entry) => ({
@@ -123,35 +132,34 @@ async function recordDeployAndDocs(cwd, scan, lane, previousLane) {
123
132
  to: entry.latest,
124
133
  }));
125
134
  addHistoryEntry(cwd, {
126
- mode: 'deploy',
135
+ mode: record.mode,
127
136
  at: new Date().toISOString(),
128
137
  cliVersion: cliVer,
129
138
  packages,
130
- lane,
131
- previousLane,
132
- message: `Deploy blue/green → lane ${lane} (era ${previousLane ?? 'n/a'})`,
139
+ lane: record.lane,
140
+ previousLane: record.previousLane,
141
+ message: record.message,
133
142
  }, cliVer);
134
- const updatedDocs = updateProjectDocs(cwd);
135
- return updatedDocs;
143
+ return updateProjectDocs(cwd);
136
144
  }
137
145
  export async function runDownload(scan, opts, prompt) {
138
146
  const cwd = opts.cwd ?? process.cwd();
139
147
  const runner = opts.runner ?? defaultRunner;
140
148
  if (!scan.installed) {
141
- console.error('Nenhum pacote @oktis-works/* instalado em node_modules.');
142
- console.error('Rode `bun install` (ou `okcms init`) antes de atualizar.');
149
+ console.error('No @oktis-works/* package installed in node_modules.');
150
+ console.error('Run `bun install` (or `okcms init`) before updating.');
143
151
  return 1;
144
152
  }
145
153
  if (scan.outdated.length === 0) {
146
- prompt.success('Todos os pacotes estão em dia.');
154
+ prompt.success('All packages are up to date.');
147
155
  return 0;
148
156
  }
149
157
  if (opts.install !== true) {
150
- prompt.info('Use --install para atualizar automaticamente.');
151
- prompt.info('Ou --mode deploy para um deploy Docker blue/green completo.');
158
+ prompt.info('Use --install to apply the updates now.');
159
+ prompt.info('Or --mode deploy for a full Docker deploy.');
152
160
  return 0;
153
161
  }
154
- prompt.write('\nAtualizando...\n');
162
+ prompt.write('\nUpdating...\n');
155
163
  const specs = scan.outdated.map((entry) => `${entry.pkg}@latest`);
156
164
  const result = runner('bun', ['add', ...specs], {
157
165
  cwd,
@@ -161,11 +169,11 @@ export async function runDownload(scan, opts, prompt) {
161
169
  if (result.ok) {
162
170
  const updatedDocs = await recordUpdateAndDocs(cwd, scan);
163
171
  if (updatedDocs.length > 0) {
164
- prompt.success(`Documentação do projeto atualizada: ${updatedDocs.join(', ')}`);
172
+ prompt.success(`Project docs updated: ${updatedDocs.join(', ')}`);
165
173
  }
166
174
  return 0;
167
175
  }
168
- // host sem bun: o npm faz o mesmo trabalho, só mais devagar
176
+ // host without bun: npm does the same job, only slower
169
177
  const npm = runner('npm', ['install', ...specs], {
170
178
  cwd,
171
179
  inherit: true,
@@ -174,7 +182,7 @@ export async function runDownload(scan, opts, prompt) {
174
182
  if (npm.ok) {
175
183
  const updatedDocs = await recordUpdateAndDocs(cwd, scan);
176
184
  if (updatedDocs.length > 0) {
177
- prompt.success(`Documentação do projeto atualizada: ${updatedDocs.join(', ')}`);
185
+ prompt.success(`Project docs updated: ${updatedDocs.join(', ')}`);
178
186
  }
179
187
  return 0;
180
188
  }
@@ -183,8 +191,9 @@ export async function runDownload(scan, opts, prompt) {
183
191
  export async function runUpdate(opts = {}) {
184
192
  const prompt = opts.prompt ?? new Prompt();
185
193
  const ownsPrompt = opts.prompt === undefined;
186
- // A CLI de deploy/config só existe no host: dentro de um container ela
187
- // viraria um instalador de pacotes na rede do banco, com .env exposto.
194
+ const cwd = opts.cwd ?? process.cwd();
195
+ // The deploy/config CLI only exists on the host: inside a container it would
196
+ // become a package installer on the database network, with .env exposed.
188
197
  const guard = assertHostOnly('okcms update', { force: opts.force, probe: opts.probe });
189
198
  if (!guard.ok) {
190
199
  console.error(guard.message);
@@ -193,62 +202,129 @@ export async function runUpdate(opts = {}) {
193
202
  return 1;
194
203
  }
195
204
  const onInterrupt = () => {
196
- prompt.write(`\n ${style.yellow(symbol.warn)} interrompido — nenhum passo de deploy em andamento foi registrado.\n`);
205
+ prompt.write(`\n ${style.yellow(symbol.warn)} interrupted — no deploy step in progress was recorded.\n`);
197
206
  process.exit(130);
198
207
  };
199
208
  process.once('SIGINT', onInterrupt);
200
209
  try {
201
- // ---- 1. modo ----------------------------------------------------------
210
+ // ---- 1. mode ----------------------------------------------------------
202
211
  let mode;
203
212
  if (opts.mode !== undefined) {
204
213
  const parsed = parseMode(opts.mode);
205
214
  if (parsed === null) {
206
- prompt.error(`--mode inválido: ${opts.mode} — use "download" ou "deploy"`);
215
+ prompt.error(`invalid --mode: ${opts.mode} — use "download" or "deploy"`);
207
216
  return 1;
208
217
  }
209
218
  mode = parsed;
210
219
  }
211
220
  else if (prompt.interactive && opts.yes !== true) {
212
- mode = await prompt.select('O que o update deve fazer?', [
221
+ mode = await prompt.select('What should the update do?', [
213
222
  {
214
223
  value: 'download',
215
- label: 'Só baixar pacotes',
216
- hint: 'node_modules atualizado · nada sobe no Docker',
224
+ label: 'Download packages only',
225
+ hint: 'node_modules updated · nothing starts in Docker',
217
226
  },
218
227
  {
219
228
  value: 'deploy',
220
- label: 'Deploy Docker blue/green completo',
221
- hint: 'build · migrations · swap de lane · worker drenado',
229
+ label: 'Deploy',
230
+ hint: 'packages · build · migrations · proxy swap',
222
231
  },
223
232
  ], { defaultValue: 'download' });
224
233
  }
225
234
  else {
226
- // não-TTY sem --mode = comportamento histórico, inalterado
235
+ // non-TTY without --mode = historical behaviour, unchanged
227
236
  mode = 'download';
228
237
  }
229
- // ---- 2. varredura -----------------------------------------------------
230
- prompt.heading(`OkCMS update — modo ${mode}`);
231
- const scan = await scanOutdated(opts.cwd ?? process.cwd(), (message) => prompt.write(`${message}\n`));
238
+ // ---- 2. deploy target (validated before the scan prints anything) -----
239
+ prompt.heading(`OkCMS update — mode ${mode}`);
240
+ let resolved;
241
+ if (mode === 'deploy') {
242
+ try {
243
+ resolved = await resolveTarget({ cwd, target: opts.target, yes: opts.yes }, prompt);
244
+ }
245
+ catch (error) {
246
+ prompt.error(error instanceof Error ? error.message : String(error));
247
+ return 1;
248
+ }
249
+ }
250
+ // ---- 3. scan ----------------------------------------------------------
251
+ const scan = await scanOutdated(cwd, (message) => prompt.write(`${message}\n`));
232
252
  if (mode === 'download')
233
253
  return await runDownload(scan, opts, prompt);
234
- // ---- 3. escolhas do deploy -------------------------------------------
235
- const choices = await resolveDeployChoices(opts, prompt);
254
+ const target = resolved;
255
+ // ---- 4. choices + summary --------------------------------------------
256
+ const choices = await resolveDeployChoices(opts, prompt, target);
236
257
  const interactive = prompt.interactive && opts.yes !== true;
237
258
  if (interactive) {
238
- prompt.heading('Resumo do deploy blue/green');
239
- prompt.info(`pacotes: ${scan.outdated.length} atualização(ões)`);
240
- prompt.info(`build: ${choices.noCache ? 'sem cache (rebuild limpo)' : 'com cache de camadas'}`);
241
- prompt.info(`órfãos da lane antiga: ${choices.removeOrphans ? 'remover' : 'manter'}`);
242
- prompt.info('ordem: build → migrations no host → edge → health → swap → worker → down');
243
- const confirmed = await prompt.confirm('Iniciar deploy?', { defaultValue: true });
259
+ prompt.heading(`Deploy summary — ${target}`);
260
+ prompt.info(`target: ${target === 'blue-green' ? 'blue/green lanes' : target === 'simple' ? 'simple containers' : 'PM2 on the host'}`);
261
+ prompt.info(`packages: ${scan.outdated.length} update(s)`);
262
+ if (target === 'blue-green') {
263
+ prompt.info(`build: ${choices.noCache ? 'no cache (clean rebuild)' : 'layer cache'}`);
264
+ prompt.info(`old lane orphans: ${choices.removeOrphans ? 'remove' : 'keep'}`);
265
+ prompt.info('order: build → host migrations → edge → health → swap → worker → down');
266
+ }
267
+ else if (target === 'simple') {
268
+ prompt.info('order: build → host migrations → up -d → proxy → healthcheck');
269
+ prompt.info('one stack, brief restart (no second lane)');
270
+ }
271
+ else {
272
+ prompt.info(`packages on host: ${opts.install === true ? 'update them' : 'leave as they are (--install to update)'}`);
273
+ prompt.info('order: pm2 ecosystem → migrations → startOrReload');
274
+ }
275
+ const confirmed = await prompt.confirm('Start the update?', { defaultValue: true });
244
276
  if (!confirmed) {
245
- prompt.warn('cancelado — nada foi executado.');
277
+ prompt.warn('cancelled — nothing was executed.');
246
278
  return 0;
247
279
  }
248
280
  }
249
- // ---- 4. deploy --------------------------------------------------------
281
+ // ---- 5. run -----------------------------------------------------------
282
+ if (target === 'pm2') {
283
+ const code = await deployPm2({
284
+ cwd,
285
+ prompt,
286
+ runner: opts.runner,
287
+ outdated: scan.outdated,
288
+ // an update exists to apply updates; `--install` is implied here
289
+ install: true,
290
+ yes: opts.yes === true,
291
+ });
292
+ if (code === 0) {
293
+ saveTarget(cwd, 'pm2');
294
+ const updatedDocs = await recordDeployAndDocs(cwd, scan, {
295
+ mode: 'pm2',
296
+ message: `PM2 deploy — ${scan.outdated.length} package(s) updated`,
297
+ });
298
+ if (updatedDocs.length > 0) {
299
+ prompt.success(`Project docs updated: ${updatedDocs.join(', ')}`);
300
+ }
301
+ }
302
+ return code;
303
+ }
304
+ if (target === 'simple') {
305
+ const result = await deploySimple({
306
+ cwd,
307
+ runner: opts.runner,
308
+ noCache: choices.noCache,
309
+ packages: scan.outdated.map((entry) => `${entry.pkg}@latest`),
310
+ installAll: !scan.installed,
311
+ log: (message) => prompt.write(`${message}\n`),
312
+ warn: (message) => prompt.write(`${message}\n`),
313
+ });
314
+ if (!result.ok)
315
+ return 1;
316
+ saveTarget(cwd, 'simple');
317
+ const updatedDocs = await recordDeployAndDocs(cwd, scan, {
318
+ mode: 'deploy',
319
+ message: `Simple container deploy — ${scan.outdated.length} package(s) updated`,
320
+ });
321
+ if (updatedDocs.length > 0) {
322
+ prompt.success(`Project docs updated: ${updatedDocs.join(', ')}`);
323
+ }
324
+ return 0;
325
+ }
250
326
  const result = await deployBlueGreen({
251
- cwd: opts.cwd,
327
+ cwd,
252
328
  runner: opts.runner,
253
329
  choices,
254
330
  packages: scan.outdated.map((entry) => `${entry.pkg}@latest`),
@@ -257,9 +333,15 @@ export async function runUpdate(opts = {}) {
257
333
  warn: (message) => prompt.write(`${message}\n`),
258
334
  });
259
335
  if (result.ok) {
260
- const updatedDocs = await recordDeployAndDocs(opts.cwd ?? process.cwd(), scan, result.lane, result.previousLane);
336
+ saveTarget(cwd, 'blue-green');
337
+ const updatedDocs = await recordDeployAndDocs(cwd, scan, {
338
+ mode: 'deploy',
339
+ lane: result.lane,
340
+ previousLane: result.previousLane,
341
+ message: `Blue/green deploy → lane ${result.lane} (was ${result.previousLane ?? 'n/a'})`,
342
+ });
261
343
  if (updatedDocs.length > 0) {
262
- prompt.success(`Documentação do projeto atualizada: ${updatedDocs.join(', ')}`);
344
+ prompt.success(`Project docs updated: ${updatedDocs.join(', ')}`);
263
345
  }
264
346
  }
265
347
  return result.ok ? 0 : 1;
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oktis-works/cms",
3
- "version": "0.2.1",
3
+ "version": "0.3.1",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -19,12 +19,12 @@
19
19
  "clean": "rm -rf dist tsconfig.tsbuildinfo"
20
20
  },
21
21
  "dependencies": {
22
- "@oktis-works/auth": "^0.2.1",
23
- "@oktis-works/config": "^0.2.1",
24
- "@oktis-works/core": "^0.2.1",
25
- "@oktis-works/database": "^0.2.1",
26
- "@oktis-works/validation": "^0.2.1",
27
- "@oktis-works/theme-runtime": "^0.2.1"
22
+ "@oktis-works/auth": "^0.3.1",
23
+ "@oktis-works/config": "^0.3.1",
24
+ "@oktis-works/core": "^0.3.1",
25
+ "@oktis-works/database": "^0.3.1",
26
+ "@oktis-works/validation": "^0.3.1",
27
+ "@oktis-works/theme-runtime": "^0.3.1"
28
28
  },
29
29
  "devDependencies": {
30
30
  "typescript": "5.7.3"