@oktis-works/cms 0.1.14 → 0.2.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 (81) hide show
  1. package/dist/assets.d.ts +94 -0
  2. package/dist/assets.d.ts.map +1 -0
  3. package/dist/assets.js +671 -0
  4. package/dist/assets.js.map +1 -0
  5. package/dist/bluegreen.d.ts +121 -0
  6. package/dist/bluegreen.d.ts.map +1 -0
  7. package/dist/bluegreen.js +393 -0
  8. package/dist/bluegreen.js.map +1 -0
  9. package/dist/commands.d.ts +6 -0
  10. package/dist/commands.d.ts.map +1 -1
  11. package/dist/commands.js +158 -61
  12. package/dist/commands.js.map +1 -1
  13. package/dist/config-wizard.d.ts +39 -0
  14. package/dist/config-wizard.d.ts.map +1 -0
  15. package/dist/config-wizard.js +308 -0
  16. package/dist/config-wizard.js.map +1 -0
  17. package/dist/deploy.d.ts +20 -0
  18. package/dist/deploy.d.ts.map +1 -0
  19. package/dist/deploy.js +304 -0
  20. package/dist/deploy.js.map +1 -0
  21. package/dist/docker.d.ts +148 -0
  22. package/dist/docker.d.ts.map +1 -0
  23. package/dist/docker.js +324 -0
  24. package/dist/docker.js.map +1 -0
  25. package/dist/docs-updater.d.ts +10 -0
  26. package/dist/docs-updater.d.ts.map +1 -0
  27. package/dist/docs-updater.js +45 -0
  28. package/dist/docs-updater.js.map +1 -0
  29. package/dist/doctor.d.ts +2 -0
  30. package/dist/doctor.d.ts.map +1 -1
  31. package/dist/doctor.js +51 -0
  32. package/dist/doctor.js.map +1 -1
  33. package/dist/env-file.d.ts +45 -0
  34. package/dist/env-file.d.ts.map +1 -0
  35. package/dist/env-file.js +200 -0
  36. package/dist/env-file.js.map +1 -0
  37. package/dist/env-schema.d.ts +28 -0
  38. package/dist/env-schema.d.ts.map +1 -0
  39. package/dist/env-schema.js +497 -0
  40. package/dist/env-schema.js.map +1 -0
  41. package/dist/guards.d.ts +40 -0
  42. package/dist/guards.d.ts.map +1 -0
  43. package/dist/guards.js +159 -0
  44. package/dist/guards.js.map +1 -0
  45. package/dist/history.d.ts +48 -0
  46. package/dist/history.d.ts.map +1 -0
  47. package/dist/history.js +104 -0
  48. package/dist/history.js.map +1 -0
  49. package/dist/parser.d.ts.map +1 -1
  50. package/dist/parser.js +12 -3
  51. package/dist/parser.js.map +1 -1
  52. package/dist/project-config.js +2 -2
  53. package/dist/prompt.d.ts +81 -0
  54. package/dist/prompt.d.ts.map +1 -0
  55. package/dist/prompt.js +379 -0
  56. package/dist/prompt.js.map +1 -0
  57. package/dist/redeploy.d.ts +109 -0
  58. package/dist/redeploy.d.ts.map +1 -0
  59. package/dist/redeploy.js +363 -0
  60. package/dist/redeploy.js.map +1 -0
  61. package/dist/rollback.d.ts +15 -0
  62. package/dist/rollback.d.ts.map +1 -0
  63. package/dist/rollback.js +170 -0
  64. package/dist/rollback.js.map +1 -0
  65. package/dist/scaffold-docs.d.ts +30 -6
  66. package/dist/scaffold-docs.d.ts.map +1 -1
  67. package/dist/scaffold-docs.js +728 -33
  68. package/dist/scaffold-docs.js.map +1 -1
  69. package/dist/scaffold.d.ts +17 -1
  70. package/dist/scaffold.d.ts.map +1 -1
  71. package/dist/scaffold.js +77 -14
  72. package/dist/scaffold.js.map +1 -1
  73. package/dist/theme-build.d.ts +35 -0
  74. package/dist/theme-build.d.ts.map +1 -0
  75. package/dist/theme-build.js +86 -0
  76. package/dist/theme-build.js.map +1 -0
  77. package/dist/update.d.ts +52 -0
  78. package/dist/update.d.ts.map +1 -0
  79. package/dist/update.js +273 -0
  80. package/dist/update.js.map +1 -0
  81. package/package.json +7 -7
package/dist/update.js ADDED
@@ -0,0 +1,273 @@
1
+ // @oktis-works/cms - `okcms update` (F3)
2
+ //
3
+ // Dois caminhos, um só comando:
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.
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).
14
+ //
15
+ // A escolha entre os dois é o menu de TTY; fora de TTY vale `--mode` ou o
16
+ // default histórico.
17
+ //
18
+ // Histórico e rollback: cada operação (download/deploy) grava em
19
+ // `.deploy/update-history.json` — `okcms rollback` lista e permite voltar.
20
+ import { existsSync, readdirSync, readFileSync } from 'node:fs';
21
+ import { join } from 'node:path';
22
+ import { deployBlueGreen } from './bluegreen.js';
23
+ import { defaultRunner } from './docker.js';
24
+ import { assertHostOnly } from './guards.js';
25
+ import { getLatestVersion } from './npm-registry.js';
26
+ import { Prompt, style, symbol } from './prompt.js';
27
+ import { addHistoryEntry } from './history.js';
28
+ import { updateProjectDocs } from './docs-updater.js';
29
+ const MODE_ALIASES = {
30
+ download: 'download',
31
+ pkg: 'download',
32
+ packages: 'download',
33
+ pacotes: 'download',
34
+ deploy: 'deploy',
35
+ docker: 'deploy',
36
+ bluegreen: 'deploy',
37
+ 'blue-green': 'deploy',
38
+ 'blue_green': 'deploy',
39
+ };
40
+ /** `null` = valor inválido (diferente de "não informado"). */
41
+ export function parseMode(value) {
42
+ return MODE_ALIASES[value.trim().toLowerCase()] ?? null;
43
+ }
44
+ /**
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.
48
+ */
49
+ export async function scanOutdated(cwd, log = console.log) {
50
+ const nmDir = join(cwd, 'node_modules', '@oktis-works');
51
+ if (!existsSync(nmDir))
52
+ return { installed: false, outdated: [] };
53
+ const installed = readdirSync(nmDir, { withFileTypes: true })
54
+ .filter((entry) => entry.isDirectory())
55
+ .map((entry) => entry.name);
56
+ const outdated = [];
57
+ for (const name of installed) {
58
+ let current = '?';
59
+ try {
60
+ const pkgJson = JSON.parse(readFileSync(join(nmDir, name, 'package.json'), 'utf-8'));
61
+ current = pkgJson.version ?? '?';
62
+ }
63
+ catch {
64
+ // sem package.json legível — tratado como desconhecido abaixo
65
+ }
66
+ const latest = await getLatestVersion(`@oktis-works/${name}`);
67
+ if (!latest || latest === current) {
68
+ log(` ✓ @oktis-works/${name} ${current} (em dia)`);
69
+ continue;
70
+ }
71
+ log(` ↑ @oktis-works/${name} ${current} → ${latest} disponível`);
72
+ outdated.push({ name, pkg: `@oktis-works/${name}`, current, latest });
73
+ }
74
+ return { installed: true, outdated };
75
+ }
76
+ /** Flags > prompt. Fora de TTY, defaults conservadores e determinísticos. */
77
+ export async function resolveDeployChoices(opts, prompt) {
78
+ const interactive = prompt.interactive && opts.yes !== true;
79
+ const noCache = opts.noCache === true
80
+ ? true
81
+ : interactive
82
+ ? !(await prompt.confirm('Build com cache de camadas? (não = rebuild limpo, mais lento)', {
83
+ defaultValue: true,
84
+ }))
85
+ : 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;
95
+ return { noCache, removeOrphans };
96
+ }
97
+ /** Grava entrada no histórico de update + atualiza docs do projeto. */
98
+ async function recordUpdateAndDocs(cwd, scan) {
99
+ const pkg = await import('../package.json', { with: { type: 'json' } });
100
+ const cliVer = pkg.default.version;
101
+ const packages = scan.outdated.map((entry) => ({
102
+ name: entry.name,
103
+ from: entry.current,
104
+ to: entry.latest,
105
+ }));
106
+ addHistoryEntry(cwd, {
107
+ mode: 'download',
108
+ at: new Date().toISOString(),
109
+ cliVersion: cliVer,
110
+ packages,
111
+ message: `Atualizados ${packages.length} pacote(s) via download`,
112
+ }, cliVer);
113
+ // Atualiza docs do projeto (README/PLUGIN/THEME) — só reescreve se mudou
114
+ const updatedDocs = updateProjectDocs(cwd);
115
+ return updatedDocs;
116
+ }
117
+ async function recordDeployAndDocs(cwd, scan, lane, previousLane) {
118
+ const pkg = await import('../package.json', { with: { type: 'json' } });
119
+ const cliVer = pkg.default.version;
120
+ const packages = scan.outdated.map((entry) => ({
121
+ name: entry.name,
122
+ from: entry.current,
123
+ to: entry.latest,
124
+ }));
125
+ addHistoryEntry(cwd, {
126
+ mode: 'deploy',
127
+ at: new Date().toISOString(),
128
+ cliVersion: cliVer,
129
+ packages,
130
+ lane,
131
+ previousLane,
132
+ message: `Deploy blue/green → lane ${lane} (era ${previousLane ?? 'n/a'})`,
133
+ }, cliVer);
134
+ const updatedDocs = updateProjectDocs(cwd);
135
+ return updatedDocs;
136
+ }
137
+ export async function runDownload(scan, opts, prompt) {
138
+ const cwd = opts.cwd ?? process.cwd();
139
+ const runner = opts.runner ?? defaultRunner;
140
+ 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.');
143
+ return 1;
144
+ }
145
+ if (scan.outdated.length === 0) {
146
+ prompt.success('Todos os pacotes estão em dia.');
147
+ return 0;
148
+ }
149
+ 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.');
152
+ return 0;
153
+ }
154
+ prompt.write('\nAtualizando...\n');
155
+ const specs = scan.outdated.map((entry) => `${entry.pkg}@latest`);
156
+ const result = runner('bun', ['add', ...specs], {
157
+ cwd,
158
+ inherit: true,
159
+ timeoutMs: 600_000,
160
+ });
161
+ if (result.ok) {
162
+ const updatedDocs = await recordUpdateAndDocs(cwd, scan);
163
+ if (updatedDocs.length > 0) {
164
+ prompt.success(`Documentação do projeto atualizada: ${updatedDocs.join(', ')}`);
165
+ }
166
+ return 0;
167
+ }
168
+ // host sem bun: o npm faz o mesmo trabalho, só mais devagar
169
+ const npm = runner('npm', ['install', ...specs], {
170
+ cwd,
171
+ inherit: true,
172
+ timeoutMs: 600_000,
173
+ });
174
+ if (npm.ok) {
175
+ const updatedDocs = await recordUpdateAndDocs(cwd, scan);
176
+ if (updatedDocs.length > 0) {
177
+ prompt.success(`Documentação do projeto atualizada: ${updatedDocs.join(', ')}`);
178
+ }
179
+ return 0;
180
+ }
181
+ return 1;
182
+ }
183
+ export async function runUpdate(opts = {}) {
184
+ const prompt = opts.prompt ?? new Prompt();
185
+ 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.
188
+ const guard = assertHostOnly('okcms update', { force: opts.force, probe: opts.probe });
189
+ if (!guard.ok) {
190
+ console.error(guard.message);
191
+ if (ownsPrompt)
192
+ prompt.close();
193
+ return 1;
194
+ }
195
+ const onInterrupt = () => {
196
+ prompt.write(`\n ${style.yellow(symbol.warn)} interrompido — nenhum passo de deploy em andamento foi registrado.\n`);
197
+ process.exit(130);
198
+ };
199
+ process.once('SIGINT', onInterrupt);
200
+ try {
201
+ // ---- 1. modo ----------------------------------------------------------
202
+ let mode;
203
+ if (opts.mode !== undefined) {
204
+ const parsed = parseMode(opts.mode);
205
+ if (parsed === null) {
206
+ prompt.error(`--mode inválido: ${opts.mode} — use "download" ou "deploy"`);
207
+ return 1;
208
+ }
209
+ mode = parsed;
210
+ }
211
+ else if (prompt.interactive && opts.yes !== true) {
212
+ mode = await prompt.select('O que o update deve fazer?', [
213
+ {
214
+ value: 'download',
215
+ label: 'Só baixar pacotes',
216
+ hint: 'node_modules atualizado · nada sobe no Docker',
217
+ },
218
+ {
219
+ value: 'deploy',
220
+ label: 'Deploy Docker blue/green completo',
221
+ hint: 'build · migrations · swap de lane · worker drenado',
222
+ },
223
+ ], { defaultValue: 'download' });
224
+ }
225
+ else {
226
+ // não-TTY sem --mode = comportamento histórico, inalterado
227
+ mode = 'download';
228
+ }
229
+ // ---- 2. varredura -----------------------------------------------------
230
+ prompt.heading(`OkCMS update — modo ${mode}`);
231
+ const scan = await scanOutdated(opts.cwd ?? process.cwd(), (message) => prompt.write(`${message}\n`));
232
+ if (mode === 'download')
233
+ return await runDownload(scan, opts, prompt);
234
+ // ---- 3. escolhas do deploy -------------------------------------------
235
+ const choices = await resolveDeployChoices(opts, prompt);
236
+ const interactive = prompt.interactive && opts.yes !== true;
237
+ 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 });
244
+ if (!confirmed) {
245
+ prompt.warn('cancelado — nada foi executado.');
246
+ return 0;
247
+ }
248
+ }
249
+ // ---- 4. deploy --------------------------------------------------------
250
+ const result = await deployBlueGreen({
251
+ cwd: opts.cwd,
252
+ runner: opts.runner,
253
+ choices,
254
+ packages: scan.outdated.map((entry) => `${entry.pkg}@latest`),
255
+ installAll: !scan.installed,
256
+ log: (message) => prompt.write(`${message}\n`),
257
+ warn: (message) => prompt.write(`${message}\n`),
258
+ });
259
+ if (result.ok) {
260
+ const updatedDocs = await recordDeployAndDocs(opts.cwd ?? process.cwd(), scan, result.lane, result.previousLane);
261
+ if (updatedDocs.length > 0) {
262
+ prompt.success(`Documentação do projeto atualizada: ${updatedDocs.join(', ')}`);
263
+ }
264
+ }
265
+ return result.ok ? 0 : 1;
266
+ }
267
+ finally {
268
+ process.removeListener('SIGINT', onInterrupt);
269
+ if (ownsPrompt)
270
+ prompt.close();
271
+ }
272
+ }
273
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
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.1.14",
3
+ "version": "0.2.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.1.14",
23
- "@oktis-works/config": "^0.1.14",
24
- "@oktis-works/core": "^0.1.14",
25
- "@oktis-works/database": "^0.1.14",
26
- "@oktis-works/validation": "^0.1.14",
27
- "@oktis-works/theme-runtime": "^0.1.14"
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"
28
28
  },
29
29
  "devDependencies": {
30
30
  "typescript": "5.7.3"