@zenifra/cli 0.3.3 → 0.3.4
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/README.md +6 -2
- package/bin/zenifra.mjs +15 -1
- package/examples/clickhouse-project.json +19 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -60,6 +60,7 @@ zenifra create project --name <name> --plan basic --payment-mode hourly --config
|
|
|
60
60
|
zenifra create project --name <name> --plan premium --payment-mode hourly --config @examples/http-autoscaling-project.json
|
|
61
61
|
zenifra create project --name <name> --plan db-basic --payment-mode monthly --config @examples/postgresql-project.json
|
|
62
62
|
zenifra create project --name <name> --plan db-basic --payment-mode monthly --config @examples/mariadb-project.json
|
|
63
|
+
zenifra create project --name <name> --plan analytics-starter --payment-mode hourly --config @examples/clickhouse-project.json
|
|
63
64
|
zenifra create project --name <name> --plan db-free --payment-mode hourly --config @examples/valkey-key-value-project.json
|
|
64
65
|
zenifra create project --name <name> --plan cache-free --payment-mode hourly --config @examples/valkey-cache-project.json
|
|
65
66
|
zenifra create project --name <name> --plan queue-free --payment-mode hourly --config @examples/valkey-queue-project.json
|
|
@@ -289,6 +290,7 @@ Use os arquivos em `examples/` como base para `zenifra create project`:
|
|
|
289
290
|
- `examples/http-autoscaling-project.json`: projeto HTTP pago criado com auto-scaling
|
|
290
291
|
- `examples/postgresql-project.json`: projeto PostgreSQL
|
|
291
292
|
- `examples/mariadb-project.json`: projeto MariaDB
|
|
293
|
+
- `examples/clickhouse-project.json`: projeto ClickHouse com Native TLS e armazenamento persistente
|
|
292
294
|
- `examples/valkey-key-value-project.json`: projeto Valkey Key Value com armazenamento persistente
|
|
293
295
|
- `examples/valkey-cache-project.json`: projeto Valkey Cache sem armazenamento persistente
|
|
294
296
|
- `examples/valkey-queue-project.json`: projeto Valkey Queue com armazenamento persistente
|
|
@@ -306,6 +308,8 @@ O wizard atual cobre:
|
|
|
306
308
|
- projetos `mariadb`
|
|
307
309
|
- projetos `valkey` nos perfis `key_value`, `cache` e `queue`
|
|
308
310
|
|
|
311
|
+
Projetos `clickhouse` usam atualmente o fluxo nao interativo com `--config`, como em `examples/clickhouse-project.json`.
|
|
312
|
+
|
|
309
313
|
`zenifra create project` nao assume valores default para `--plan` e `--payment-mode`.
|
|
310
314
|
Configs HTTP nao interativas tambem devem informar `config.exposure`; use `public` para criar rota/dominio publico ou `private` para manter a aplicacao sem exposicao na internet.
|
|
311
315
|
Antes de escolher um plano com o usuario, compare os catalogos com `zenifra plans` para evitar suposicoes sobre custo.
|
|
@@ -313,9 +317,9 @@ Antes de escolher um plano com o usuario, compare os catalogos com `zenifra plan
|
|
|
313
317
|
Valores aceitos:
|
|
314
318
|
|
|
315
319
|
- `payment_mode`: `hourly`, `monthly`, `yearly`
|
|
316
|
-
- `type_project` no `config`: `http`, `postgresql`, `mariadb`, `valkey`
|
|
320
|
+
- `type_project` no `config`: `http`, `postgresql`, `mariadb`, `valkey`, `clickhouse`
|
|
317
321
|
- `exposure` no `config` HTTP: `public`, `private`
|
|
318
|
-
- `plan`: consulte `zenifra plans` para os planos atuais; Valkey usa `db-*` para Key Value, `cache-*` para Cache e `queue-*` para Queue
|
|
322
|
+
- `plan`: consulte `zenifra plans` para os planos atuais; ClickHouse usa `analytics-*`; Valkey usa `db-*` para Key Value, `cache-*` para Cache e `queue-*` para Queue
|
|
319
323
|
- `config.profile` em projetos Valkey: `key_value`, `cache` ou `queue`
|
|
320
324
|
- `config.version` em projetos Valkey: a versão retornada por `zenifra plans --type valkey`
|
|
321
325
|
- `config.storage` em projetos Valkey: obrigatório e persistente para Key Value/Queue; omitido para Cache
|
package/bin/zenifra.mjs
CHANGED
|
@@ -96,6 +96,10 @@ const ALLOWED_PLAN_VALUES = new Set([
|
|
|
96
96
|
'db-basic',
|
|
97
97
|
'db-premium',
|
|
98
98
|
'db-enterprise',
|
|
99
|
+
'analytics-sandbox',
|
|
100
|
+
'analytics-starter',
|
|
101
|
+
'analytics-production',
|
|
102
|
+
'analytics-enterprise',
|
|
99
103
|
'cache-free',
|
|
100
104
|
'cache-starter',
|
|
101
105
|
'cache-basic',
|
|
@@ -108,7 +112,7 @@ const ALLOWED_PLAN_VALUES = new Set([
|
|
|
108
112
|
'queue-enterprise',
|
|
109
113
|
]);
|
|
110
114
|
const ALLOWED_PAYMENT_MODE_VALUES = new Set(['hourly', 'monthly', 'yearly']);
|
|
111
|
-
const ALLOWED_TYPE_PROJECT_VALUES = new Set(['http', 'postgresql', 'mariadb', 'valkey']);
|
|
115
|
+
const ALLOWED_TYPE_PROJECT_VALUES = new Set(['http', 'postgresql', 'mariadb', 'valkey', 'clickhouse']);
|
|
112
116
|
const ALLOWED_RUNTIME_VALUES = new Set(['nodejs', 'python']);
|
|
113
117
|
const ALLOWED_EXPOSURE_VALUES = new Set(['public', 'private']);
|
|
114
118
|
const GITHUB_RUNTIME_VERSIONS = {
|
|
@@ -2422,6 +2426,14 @@ function normalizePlan(value) {
|
|
|
2422
2426
|
['dbpremium', 'db-premium'],
|
|
2423
2427
|
['db_enterprise', 'db-enterprise'],
|
|
2424
2428
|
['dbenterprise', 'db-enterprise'],
|
|
2429
|
+
['analytics_sandbox', 'analytics-sandbox'],
|
|
2430
|
+
['analyticssandbox', 'analytics-sandbox'],
|
|
2431
|
+
['analytics_starter', 'analytics-starter'],
|
|
2432
|
+
['analyticsstarter', 'analytics-starter'],
|
|
2433
|
+
['analytics_production', 'analytics-production'],
|
|
2434
|
+
['analyticsproduction', 'analytics-production'],
|
|
2435
|
+
['analytics_enterprise', 'analytics-enterprise'],
|
|
2436
|
+
['analyticsenterprise', 'analytics-enterprise'],
|
|
2425
2437
|
['cache_free', 'cache-free'],
|
|
2426
2438
|
['cachefree', 'cache-free'],
|
|
2427
2439
|
['cache_starter', 'cache-starter'],
|
|
@@ -2481,6 +2493,8 @@ function normalizeTypeProject(value) {
|
|
|
2481
2493
|
['valkey', 'valkey'],
|
|
2482
2494
|
['key value', 'valkey'],
|
|
2483
2495
|
['key-value', 'valkey'],
|
|
2496
|
+
['clickhouse', 'clickhouse'],
|
|
2497
|
+
['click house', 'clickhouse'],
|
|
2484
2498
|
]);
|
|
2485
2499
|
return aliases.get(raw) || raw;
|
|
2486
2500
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type_project": "clickhouse",
|
|
3
|
+
"version": "26.8.6.5",
|
|
4
|
+
"instances": 1,
|
|
5
|
+
"storage": {
|
|
6
|
+
"capacity": 20,
|
|
7
|
+
"persistent": true
|
|
8
|
+
},
|
|
9
|
+
"envs": [],
|
|
10
|
+
"network_access": {
|
|
11
|
+
"ingress_white_list": [
|
|
12
|
+
{
|
|
13
|
+
"cidr": "203.0.113.10/32",
|
|
14
|
+
"description": "Application egress IP"
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"ingress_black_list": []
|
|
18
|
+
}
|
|
19
|
+
}
|