typekro 0.33.8 → 0.33.9
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/.tsbuildinfo +1 -1
- package/dist/core/dependencies/resolver.d.ts.map +1 -1
- package/dist/core/dependencies/resolver.js +9 -0
- package/dist/core/dependencies/resolver.js.map +1 -1
- package/dist/core/deployment/kro-factory.d.ts.map +1 -1
- package/dist/core/deployment/kro-factory.js +21 -1
- package/dist/core/deployment/kro-factory.js.map +1 -1
- package/dist/core/planning/planner.d.ts.map +1 -1
- package/dist/core/planning/planner.js +135 -3
- package/dist/core/planning/planner.js.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.js +22 -7
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.js.map +1 -1
- package/dist/factories/clickhouse/resources/installation.d.ts.map +1 -1
- package/dist/factories/clickhouse/resources/installation.js +13 -0
- package/dist/factories/clickhouse/resources/installation.js.map +1 -1
- package/dist/factories/clickhouse/types.d.ts +15 -0
- package/dist/factories/clickhouse/types.d.ts.map +1 -1
- package/dist/factories/clickhouse/types.js +9 -0
- package/dist/factories/clickhouse/types.js.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +130 -17
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js +252 -18
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js.map +1 -1
- package/dist/factories/clickstack/resources/helm.d.ts +2 -2
- package/dist/factories/clickstack/resources/helm.d.ts.map +1 -1
- package/dist/factories/clickstack/resources/helm.js +4 -3
- package/dist/factories/clickstack/resources/helm.js.map +1 -1
- package/dist/factories/clickstack/types.d.ts +135 -16
- package/dist/factories/clickstack/types.d.ts.map +1 -1
- package/dist/factories/clickstack/types.js +49 -21
- package/dist/factories/clickstack/types.js.map +1 -1
- package/dist/factories/clickstack/utils/helm-values-mapper.d.ts +12 -1
- package/dist/factories/clickstack/utils/helm-values-mapper.d.ts.map +1 -1
- package/dist/factories/clickstack/utils/helm-values-mapper.js +59 -26
- package/dist/factories/clickstack/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.js +54 -34
- package/dist/factories/searxng/compositions/searxng-bootstrap.js.map +1 -1
- package/dist/factories/searxng/types.d.ts.map +1 -1
- package/dist/factories/searxng/types.js +7 -8
- package/dist/factories/searxng/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* inferred via `typeof Schema.infer` (mirrors the clickhouse/dagster families).
|
|
6
6
|
*
|
|
7
7
|
* Wraps the OFFICIAL ClickStack Helm chart (MIT):
|
|
8
|
-
* - Chart: `clickstack` 3.
|
|
8
|
+
* - Chart: `clickstack` 3.2.x from https://clickhouse.github.io/ClickStack-helm-charts
|
|
9
9
|
* (classic Helm repo, NOT OCI). The old hyperdxio/helm-charts repo is archived
|
|
10
10
|
* and its `hdx-oss-v2` chart is deprecated — do not use them.
|
|
11
11
|
* - Components: the HyperDX app (UI + API + OpAMP server on 4320 that remotely
|
|
@@ -40,7 +40,8 @@
|
|
|
40
40
|
* @see https://clickhouse.com/docs/use-cases/observability/clickstack
|
|
41
41
|
*/
|
|
42
42
|
import type { ValuesMergeExpression } from '../../core/aspects/values-merge.js';
|
|
43
|
-
import type { TypeKroChartValues } from '../../core/types/common.js';
|
|
43
|
+
import type { TypeKroChartValues, TypeKroValue } from '../../core/types/common.js';
|
|
44
|
+
import type { HelmReleaseValuesFromSource } from '../helm/types.js';
|
|
44
45
|
/**
|
|
45
46
|
* Loose ClickHouse version coupling facts for the external-ClickHouse mode,
|
|
46
47
|
* exported for downstream platform layers that own the CHI sizing/versioning.
|
|
@@ -72,10 +73,18 @@ export declare const CLICKSTACK_CLICKHOUSE_GUIDANCE: {
|
|
|
72
73
|
/**
|
|
73
74
|
* Typed subset of the official `clickstack` chart values we map or pin
|
|
74
75
|
* (verified 2026-07-06 against ClickHouse/ClickStack-helm-charts
|
|
75
|
-
* charts/clickstack/values.yaml, chart 3.0
|
|
76
|
+
* charts/clickstack/values.yaml, chart 3.2.0). The index signature keeps the
|
|
76
77
|
* rest of the chart's surface reachable through the values passthrough.
|
|
77
78
|
*/
|
|
78
79
|
export interface ClickStackHelmValues {
|
|
80
|
+
/** Cross-subchart settings, including the supported collector config overlay. */
|
|
81
|
+
global?: {
|
|
82
|
+
otelCollector?: {
|
|
83
|
+
customConfig?: string;
|
|
84
|
+
[key: string]: unknown;
|
|
85
|
+
};
|
|
86
|
+
[key: string]: unknown;
|
|
87
|
+
};
|
|
79
88
|
/** HyperDX app (UI + API + OpAMP). */
|
|
80
89
|
hyperdx?: {
|
|
81
90
|
/** Shared non-sensitive env (rendered into the `clickstack-config` ConfigMap). */
|
|
@@ -206,19 +215,48 @@ interface ClickStackBuildOptionsBase {
|
|
|
206
215
|
/** KRO kind override. */
|
|
207
216
|
kind?: string;
|
|
208
217
|
}
|
|
209
|
-
/** Build-time options for
|
|
210
|
-
export
|
|
218
|
+
/** Build-time options for inline credentials with internal Mongo. */
|
|
219
|
+
export type ClickStackInlineInternalMongoBuildOptions = ClickStackBuildOptionsBase & {
|
|
211
220
|
mongo?: {
|
|
212
221
|
mode: 'internal';
|
|
213
222
|
storage?: ClickStackMongoStorageOptions;
|
|
214
223
|
};
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
224
|
+
credentials?: {
|
|
225
|
+
source: 'inline';
|
|
226
|
+
};
|
|
227
|
+
};
|
|
228
|
+
/** Build-time options for Secret-backed credentials with internal Mongo. */
|
|
229
|
+
export type ClickStackSecretValuesInternalMongoBuildOptions = ClickStackBuildOptionsBase & {
|
|
230
|
+
mongo?: {
|
|
231
|
+
mode: 'internal';
|
|
232
|
+
storage?: ClickStackMongoStorageOptions;
|
|
233
|
+
};
|
|
234
|
+
credentials: {
|
|
235
|
+
source: 'secretValues';
|
|
236
|
+
};
|
|
237
|
+
};
|
|
238
|
+
/** Every supported internal-Mongo construction-time configuration. */
|
|
239
|
+
export type ClickStackInternalMongoBuildOptions = ClickStackInlineInternalMongoBuildOptions | ClickStackSecretValuesInternalMongoBuildOptions;
|
|
240
|
+
/** Build-time options for inline credentials with external Mongo. */
|
|
241
|
+
export type ClickStackInlineExternalMongoBuildOptions = ClickStackBuildOptionsBase & {
|
|
218
242
|
mongo: {
|
|
219
243
|
mode: 'external';
|
|
220
244
|
};
|
|
221
|
-
|
|
245
|
+
credentials?: {
|
|
246
|
+
source: 'inline';
|
|
247
|
+
};
|
|
248
|
+
};
|
|
249
|
+
/** Build-time options for Secret-backed credentials with external Mongo. */
|
|
250
|
+
export type ClickStackSecretValuesExternalMongoBuildOptions = ClickStackBuildOptionsBase & {
|
|
251
|
+
mongo: {
|
|
252
|
+
mode: 'external';
|
|
253
|
+
};
|
|
254
|
+
credentials: {
|
|
255
|
+
source: 'secretValues';
|
|
256
|
+
};
|
|
257
|
+
};
|
|
258
|
+
/** Every supported external-Mongo construction-time configuration. */
|
|
259
|
+
export type ClickStackExternalMongoBuildOptions = ClickStackInlineExternalMongoBuildOptions | ClickStackSecretValuesExternalMongoBuildOptions;
|
|
222
260
|
/** Union accepted by `makeClickstackBootstrap`. */
|
|
223
261
|
export type ClickStackBuildOptions = ClickStackInternalMongoBuildOptions | ClickStackExternalMongoBuildOptions;
|
|
224
262
|
/**
|
|
@@ -227,20 +265,20 @@ export type ClickStackBuildOptions = ClickStackInternalMongoBuildOptions | Click
|
|
|
227
265
|
* are build-time (`makeClickstackBootstrap`).
|
|
228
266
|
*/
|
|
229
267
|
export declare const ClickStackBootstrapConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
268
|
+
apiKey: string;
|
|
230
269
|
name: string;
|
|
231
270
|
clickhouse: {
|
|
232
271
|
host: string;
|
|
272
|
+
password?: string;
|
|
273
|
+
appPassword?: string;
|
|
233
274
|
nativePort?: number;
|
|
234
275
|
httpPort?: number;
|
|
235
276
|
database?: string;
|
|
236
277
|
username?: string;
|
|
237
|
-
password?: string;
|
|
238
278
|
appUsername?: string;
|
|
239
|
-
appPassword?: string;
|
|
240
279
|
};
|
|
241
280
|
namespace?: string;
|
|
242
281
|
version?: string;
|
|
243
|
-
apiKey?: string;
|
|
244
282
|
hyperdx?: {
|
|
245
283
|
replicas?: number;
|
|
246
284
|
resources?: {
|
|
@@ -263,25 +301,64 @@ export declare const ClickStackBootstrapConfigSchema: import("arktype/internal/v
|
|
|
263
301
|
}, {}>;
|
|
264
302
|
/** Runtime configuration for the internal-Mongo bootstrap variant. */
|
|
265
303
|
export type ClickStackBootstrapConfig = typeof ClickStackBootstrapConfigSchema.infer;
|
|
304
|
+
/** Runtime schema used by the Secret-backed internal-Mongo variant. */
|
|
305
|
+
export declare const ClickStackSecretValuesBootstrapConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
306
|
+
credentialsSecret: {
|
|
307
|
+
name: string;
|
|
308
|
+
valuesKey?: string;
|
|
309
|
+
};
|
|
310
|
+
clickhouse: {
|
|
311
|
+
host: string;
|
|
312
|
+
nativePort?: number;
|
|
313
|
+
httpPort?: number;
|
|
314
|
+
database?: string;
|
|
315
|
+
username?: string;
|
|
316
|
+
appUsername?: string;
|
|
317
|
+
};
|
|
318
|
+
name: string;
|
|
319
|
+
namespace?: string;
|
|
320
|
+
version?: string;
|
|
321
|
+
hyperdx?: {
|
|
322
|
+
replicas?: number;
|
|
323
|
+
resources?: {
|
|
324
|
+
requests?: {
|
|
325
|
+
cpu?: string;
|
|
326
|
+
memory?: string;
|
|
327
|
+
};
|
|
328
|
+
limits?: {
|
|
329
|
+
cpu?: string;
|
|
330
|
+
memory?: string;
|
|
331
|
+
};
|
|
332
|
+
};
|
|
333
|
+
image?: {
|
|
334
|
+
repository?: string;
|
|
335
|
+
tag?: string;
|
|
336
|
+
pullPolicy?: "Always" | "IfNotPresent" | "Never";
|
|
337
|
+
};
|
|
338
|
+
frontendUrl?: string;
|
|
339
|
+
};
|
|
340
|
+
}, {}>;
|
|
341
|
+
/** Runtime configuration for the Secret-backed internal-Mongo variant. */
|
|
342
|
+
export type ClickStackSecretValuesBootstrapConfig = typeof ClickStackSecretValuesBootstrapConfigSchema.infer;
|
|
266
343
|
/**
|
|
267
344
|
* Runtime spec for the external-Mongo variant: base + a required `mongoUri`.
|
|
268
345
|
*/
|
|
269
346
|
export declare const ClickStackExternalMongoBootstrapConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
347
|
+
apiKey: string;
|
|
270
348
|
mongoUri: string;
|
|
271
349
|
name: string;
|
|
272
350
|
clickhouse: {
|
|
273
351
|
host: string;
|
|
352
|
+
password?: string;
|
|
353
|
+
appPassword?: string;
|
|
274
354
|
nativePort?: number;
|
|
275
355
|
httpPort?: number;
|
|
276
356
|
database?: string;
|
|
277
357
|
username?: string;
|
|
278
|
-
password?: string;
|
|
279
358
|
appUsername?: string;
|
|
280
|
-
appPassword?: string;
|
|
281
359
|
};
|
|
282
360
|
namespace?: string;
|
|
283
361
|
version?: string;
|
|
284
|
-
apiKey?: string;
|
|
285
362
|
hyperdx?: {
|
|
286
363
|
replicas?: number;
|
|
287
364
|
resources?: {
|
|
@@ -304,8 +381,48 @@ export declare const ClickStackExternalMongoBootstrapConfigSchema: import("arkty
|
|
|
304
381
|
}, {}>;
|
|
305
382
|
/** Runtime configuration for the external-Mongo bootstrap variant. */
|
|
306
383
|
export type ClickStackExternalMongoBootstrapConfig = typeof ClickStackExternalMongoBootstrapConfigSchema.infer;
|
|
384
|
+
/** Runtime schema used by the Secret-backed external-Mongo variant. */
|
|
385
|
+
export declare const ClickStackSecretValuesExternalMongoBootstrapConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
386
|
+
credentialsSecret: {
|
|
387
|
+
name: string;
|
|
388
|
+
valuesKey?: string;
|
|
389
|
+
};
|
|
390
|
+
mongoUri: string;
|
|
391
|
+
clickhouse: {
|
|
392
|
+
host: string;
|
|
393
|
+
nativePort?: number;
|
|
394
|
+
httpPort?: number;
|
|
395
|
+
database?: string;
|
|
396
|
+
username?: string;
|
|
397
|
+
appUsername?: string;
|
|
398
|
+
};
|
|
399
|
+
name: string;
|
|
400
|
+
namespace?: string;
|
|
401
|
+
version?: string;
|
|
402
|
+
hyperdx?: {
|
|
403
|
+
replicas?: number;
|
|
404
|
+
resources?: {
|
|
405
|
+
requests?: {
|
|
406
|
+
cpu?: string;
|
|
407
|
+
memory?: string;
|
|
408
|
+
};
|
|
409
|
+
limits?: {
|
|
410
|
+
cpu?: string;
|
|
411
|
+
memory?: string;
|
|
412
|
+
};
|
|
413
|
+
};
|
|
414
|
+
image?: {
|
|
415
|
+
repository?: string;
|
|
416
|
+
tag?: string;
|
|
417
|
+
pullPolicy?: "Always" | "IfNotPresent" | "Never";
|
|
418
|
+
};
|
|
419
|
+
frontendUrl?: string;
|
|
420
|
+
};
|
|
421
|
+
}, {}>;
|
|
422
|
+
/** Runtime configuration for the Secret-backed external-Mongo variant. */
|
|
423
|
+
export type ClickStackSecretValuesExternalMongoBootstrapConfig = typeof ClickStackSecretValuesExternalMongoBootstrapConfigSchema.infer;
|
|
307
424
|
/** Widest runtime config the values mapper accepts (either variant). */
|
|
308
|
-
export type ClickStackBootstrapRuntimeConfig = ClickStackBootstrapConfig & {
|
|
425
|
+
export type ClickStackBootstrapRuntimeConfig = (ClickStackBootstrapConfig | ClickStackSecretValuesBootstrapConfig | ClickStackExternalMongoBootstrapConfig | ClickStackSecretValuesExternalMongoBootstrapConfig) & {
|
|
309
426
|
mongoUri?: string;
|
|
310
427
|
/**
|
|
311
428
|
* INTERNAL, DIRECT-MODE-ONLY escape hatch — not part of the runtime
|
|
@@ -452,6 +569,8 @@ export interface ClickStackHelmReleaseConfig {
|
|
|
452
569
|
repositoryNamespace?: string;
|
|
453
570
|
/** Official clickstack chart values (graph-aware trees / runtime merges allowed). */
|
|
454
571
|
values?: ClickStackMappedHelmValues;
|
|
572
|
+
/** Secret/ConfigMap values overlays resolved by Flux before inline values. */
|
|
573
|
+
valuesFrom?: TypeKroValue<HelmReleaseValuesFromSource>[];
|
|
455
574
|
id?: string;
|
|
456
575
|
}
|
|
457
576
|
/** Configuration for a stock opentelemetry-collector HelmRelease wrapper. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/factories/clickstack/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAGH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/factories/clickstack/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* inferred via `typeof Schema.infer` (mirrors the clickhouse/dagster families).
|
|
6
6
|
*
|
|
7
7
|
* Wraps the OFFICIAL ClickStack Helm chart (MIT):
|
|
8
|
-
* - Chart: `clickstack` 3.
|
|
8
|
+
* - Chart: `clickstack` 3.2.x from https://clickhouse.github.io/ClickStack-helm-charts
|
|
9
9
|
* (classic Helm repo, NOT OCI). The old hyperdxio/helm-charts repo is archived
|
|
10
10
|
* and its `hdx-oss-v2` chart is deprecated — do not use them.
|
|
11
11
|
* - Components: the HyperDX app (UI + API + OpAMP server on 4320 that remotely
|
|
@@ -86,45 +86,46 @@ const imageShape = {
|
|
|
86
86
|
// ============================================================================
|
|
87
87
|
// Bootstrap runtime spec (external ClickHouse)
|
|
88
88
|
// ============================================================================
|
|
89
|
+
const clickhouseConnectionBaseShape = {
|
|
90
|
+
/** DNS host of the external ClickHouse service (no scheme, no port). */
|
|
91
|
+
host: 'string',
|
|
92
|
+
/** Native TCP port (default: 9000) → `CLICKHOUSE_ENDPOINT`/`CLICKHOUSE_SERVER_ENDPOINT`. */
|
|
93
|
+
'nativePort?': 'number.integer',
|
|
94
|
+
/** HTTP port (default: 8123) → HyperDX UI `defaultConnections` host. */
|
|
95
|
+
'httpPort?': 'number.integer',
|
|
96
|
+
/** OTel export target database (default: 'default') → `HYPERDX_OTEL_EXPORTER_CLICKHOUSE_DATABASE`. */
|
|
97
|
+
'database?': 'string',
|
|
98
|
+
/** Ingest/collector user (default: 'default') → `hyperdx.config.CLICKHOUSE_USER`. Needs SELECT,INSERT,CREATE,SHOW on the database. */
|
|
99
|
+
'username?': 'string',
|
|
100
|
+
/** Read-mostly UI user for HyperDX connections (default: `username`). Needs SHOW + SELECT. */
|
|
101
|
+
'appUsername?': 'string',
|
|
102
|
+
};
|
|
89
103
|
const bootstrapBaseShape = {
|
|
90
104
|
/** Release name for the Helm installation. */
|
|
91
105
|
name: 'string',
|
|
92
106
|
/** Namespace for the stack (default: 'clickstack'). */
|
|
93
107
|
'namespace?': 'string',
|
|
94
|
-
/** Chart version (default: '3.0
|
|
108
|
+
/** Chart version (default: '3.2.0'). */
|
|
95
109
|
'version?': 'string',
|
|
96
|
-
// SECRETS CAVEAT: `password`/`appPassword` below (and
|
|
97
|
-
//
|
|
110
|
+
// SECRETS CAVEAT: `password`/`appPassword` below (and the required inline
|
|
111
|
+
// `apiKey` on the inline-mode schemas) travel as PLAINTEXT runtime spec values all the way into the
|
|
98
112
|
// generated HelmRelease's `spec.values.hyperdx.secrets.*` — a Kubernetes
|
|
99
113
|
// object stored in etcd, readable by anyone with read access to the
|
|
100
114
|
// HelmRelease/RGD instance (`kubectl get helmrelease -o yaml`), unlike
|
|
101
115
|
// `k8s-telemetry.ts`'s `apiKeySecret` (a `secretKeyRef` env var — the
|
|
102
|
-
// value never appears in any CR spec).
|
|
103
|
-
//
|
|
116
|
+
// value never appears in any CR spec). Use the secretValues constructor
|
|
117
|
+
// mode when these three fields need to stay out of the CR spec.
|
|
104
118
|
// Treat them as no more protected than any other spec field; do not
|
|
105
119
|
// consider this family production-ready for credentials that need
|
|
106
120
|
// stronger-than-etcd-RBAC protection until that gap is closed.
|
|
107
121
|
/** External ClickHouse connection (REQUIRED — external-only build-around). */
|
|
108
122
|
clickhouse: {
|
|
109
|
-
|
|
110
|
-
host: 'string',
|
|
111
|
-
/** Native TCP port (default: 9000) → `CLICKHOUSE_ENDPOINT`/`CLICKHOUSE_SERVER_ENDPOINT`. */
|
|
112
|
-
'nativePort?': 'number.integer',
|
|
113
|
-
/** HTTP port (default: 8123) → HyperDX UI `defaultConnections` host. */
|
|
114
|
-
'httpPort?': 'number.integer',
|
|
115
|
-
/** OTel export target database (default: 'default') → `HYPERDX_OTEL_EXPORTER_CLICKHOUSE_DATABASE`. */
|
|
116
|
-
'database?': 'string',
|
|
117
|
-
/** Ingest/collector user (default: 'default') → `hyperdx.config.CLICKHOUSE_USER`. Needs SELECT,INSERT,CREATE,SHOW on the database. */
|
|
118
|
-
'username?': 'string',
|
|
123
|
+
...clickhouseConnectionBaseShape,
|
|
119
124
|
/** Ingest/collector password → `hyperdx.secrets.CLICKHOUSE_PASSWORD` (default: ''). PLAINTEXT in the HelmRelease spec — see the secrets caveat above. */
|
|
120
125
|
'password?': 'string',
|
|
121
|
-
/** Read-mostly UI user for HyperDX connections (default: `username`). Needs SHOW + SELECT. */
|
|
122
|
-
'appUsername?': 'string',
|
|
123
126
|
/** UI user password → `hyperdx.secrets.CLICKHOUSE_APP_PASSWORD` (default: `password`). PLAINTEXT in the HelmRelease spec — see the secrets caveat above. */
|
|
124
127
|
'appPassword?': 'string',
|
|
125
128
|
},
|
|
126
|
-
/** HyperDX ingestion API key → `hyperdx.secrets.HYPERDX_API_KEY`. PLAINTEXT in the HelmRelease spec — see the secrets caveat above `clickhouse`. */
|
|
127
|
-
'apiKey?': 'string',
|
|
128
129
|
/** HyperDX app (UI/API) conveniences. */
|
|
129
130
|
'hyperdx?': {
|
|
130
131
|
'replicas?': 'number.integer',
|
|
@@ -146,20 +147,47 @@ const bootstrapBaseShape = {
|
|
|
146
147
|
// (`makeClickstackBootstrap({ values })`), where the merge happens on
|
|
147
148
|
// concrete objects before serialization.
|
|
148
149
|
};
|
|
150
|
+
const secretValuesBootstrapBaseShape = {
|
|
151
|
+
...bootstrapBaseShape,
|
|
152
|
+
clickhouse: clickhouseConnectionBaseShape,
|
|
153
|
+
};
|
|
149
154
|
/**
|
|
150
155
|
* Runtime spec for the internal-Mongo variant (the default
|
|
151
156
|
* `clickstackBootstrap`). Mongo needs no runtime config — mode and storage
|
|
152
157
|
* are build-time (`makeClickstackBootstrap`).
|
|
153
158
|
*/
|
|
154
|
-
export const ClickStackBootstrapConfigSchema = type(
|
|
159
|
+
export const ClickStackBootstrapConfigSchema = type({
|
|
160
|
+
...bootstrapBaseShape,
|
|
161
|
+
/** HyperDX ingestion API key → `hyperdx.secrets.HYPERDX_API_KEY`. Required and non-empty in inline mode. */
|
|
162
|
+
apiKey: 'string > 0',
|
|
163
|
+
});
|
|
164
|
+
/** Runtime schema used by the Secret-backed internal-Mongo variant. */
|
|
165
|
+
export const ClickStackSecretValuesBootstrapConfigSchema = type({
|
|
166
|
+
...secretValuesBootstrapBaseShape,
|
|
167
|
+
credentialsSecret: {
|
|
168
|
+
name: 'string > 0',
|
|
169
|
+
'valuesKey?': 'string > 0',
|
|
170
|
+
},
|
|
171
|
+
});
|
|
155
172
|
/**
|
|
156
173
|
* Runtime spec for the external-Mongo variant: base + a required `mongoUri`.
|
|
157
174
|
*/
|
|
158
175
|
export const ClickStackExternalMongoBootstrapConfigSchema = type({
|
|
159
176
|
...bootstrapBaseShape,
|
|
177
|
+
/** HyperDX ingestion API key → `hyperdx.secrets.HYPERDX_API_KEY`. Required and non-empty in inline mode. */
|
|
178
|
+
apiKey: 'string > 0',
|
|
160
179
|
/** Full MongoDB connection URI → `hyperdx.config.MONGO_URI` (verbatim). */
|
|
161
180
|
mongoUri: 'string',
|
|
162
181
|
});
|
|
182
|
+
/** Runtime schema used by the Secret-backed external-Mongo variant. */
|
|
183
|
+
export const ClickStackSecretValuesExternalMongoBootstrapConfigSchema = type({
|
|
184
|
+
...secretValuesBootstrapBaseShape,
|
|
185
|
+
credentialsSecret: {
|
|
186
|
+
name: 'string > 0',
|
|
187
|
+
'valuesKey?': 'string > 0',
|
|
188
|
+
},
|
|
189
|
+
mongoUri: 'string',
|
|
190
|
+
});
|
|
163
191
|
// ============================================================================
|
|
164
192
|
// Bootstrap status — a typed service contract, not just readiness
|
|
165
193
|
// ============================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/factories/clickstack/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/factories/clickstack/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Values keys verified 2026-07-06 against
|
|
15
15
|
* https://github.com/ClickHouse/ClickStack-helm-charts
|
|
16
|
-
* charts/clickstack/values.yaml (chart 3.0
|
|
16
|
+
* charts/clickstack/values.yaml (chart 3.2.0, appVersion 2.35.0):
|
|
17
17
|
* - `hyperdx.config.*` env map: `CLICKHOUSE_ENDPOINT` (native, tcp://…),
|
|
18
18
|
* `CLICKHOUSE_SERVER_ENDPOINT` (host:port), `CLICKHOUSE_USER`,
|
|
19
19
|
* `HYPERDX_OTEL_EXPORTER_CLICKHOUSE_DATABASE`, `MONGO_URI`, `FRONTEND_URL`.
|
|
@@ -71,12 +71,23 @@ export declare const DEFAULT_CLICKSTACK_GATEWAY_ENDPOINT = "http://clickstack-ot
|
|
|
71
71
|
export declare const DEFAULT_K8S_TELEMETRY_COLLECTOR_IMAGE = "otel/opentelemetry-collector-contrib";
|
|
72
72
|
/** Name of the HyperDX connection emitted into `defaultConnections`/`defaultSources`. */
|
|
73
73
|
export declare const CLICKSTACK_CONNECTION_NAME = "External ClickHouse";
|
|
74
|
+
/**
|
|
75
|
+
* The ClickStack image runs under the OpAMP supervisor. Its built-in remote
|
|
76
|
+
* configuration declares the OTLP receiver but, without an overlay, does not
|
|
77
|
+
* attach it to any pipeline. The Service and health endpoint can therefore be
|
|
78
|
+
* Ready while 4317/4318 refuse connections. Chart 3.1+ provides the supported
|
|
79
|
+
* `global.otelCollector.customConfig` merge seam; keep every built-in receiver
|
|
80
|
+
* while attaching OTLP to all three signal pipelines.
|
|
81
|
+
*/
|
|
82
|
+
export declare const CLICKSTACK_INGEST_PIPELINES_CONFIG: string;
|
|
74
83
|
/** Concrete build-time options consumed by the bootstrap values mapper. */
|
|
75
84
|
export interface ClickStackValuesMapperOptions {
|
|
76
85
|
/** Which Mongo wiring to emit (build-time; default 'internal'). */
|
|
77
86
|
mongoMode?: 'internal' | 'external';
|
|
78
87
|
/** Static raw chart values merged after the typed mapping (pins re-applied after). */
|
|
79
88
|
values?: TypeKroChartValues<ClickStackHelmValues>;
|
|
89
|
+
/** Runtime credential transport selected by the composition constructor. */
|
|
90
|
+
credentialSource?: 'inline' | 'secretValues';
|
|
80
91
|
}
|
|
81
92
|
/** Values pair for the two stock collector instances. */
|
|
82
93
|
export interface ClickStackK8sTelemetryValues {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helm-values-mapper.d.ts","sourceRoot":"","sources":["../../../../src/factories/clickstack/utils/helm-values-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAOH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"helm-values-mapper.d.ts","sourceRoot":"","sources":["../../../../src/factories/clickstack/utils/helm-values-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAOH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,OAAO,KAAK,EAEV,gCAAgC,EAEhC,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,6BAA6B,EAC9B,MAAM,aAAa,CAAC;AAErB,kDAAkD;AAClD,eAAO,MAAM,4BAA4B,eAAe,CAAC;AAEzD,0DAA0D;AAC1D,eAAO,MAAM,sCAAsC,yBAAyB,CAAC;AAE7E;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,uEACsB,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,qCAAqC,yCAAyC,CAAC;AAE5F,yFAAyF;AACzF,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAEhE;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC,QAUnC,CAAC;AAEb,2EAA2E;AAC3E,MAAM,WAAW,6BAA6B;IAC5C,mEAAmE;IACnE,SAAS,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IACpC,sFAAsF;IACtF,MAAM,CAAC,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;IAClD,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,QAAQ,GAAG,cAAc,CAAC;CAC9C;AAED,yDAAyD;AACzD,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,6BAA6B,CAAC;IACzC,UAAU,EAAE,6BAA6B,CAAC;CAC3C;AA2ND;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,gCAAgC,EACxC,OAAO,GAAE,6BAAkC,GAC1C,0BAA0B,CAqJ5B;AAMD,2EAA2E;AAC3E,MAAM,WAAW,mCAAmC;IAClD,SAAS,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,CAAA;KAAE,CAAC;IACrE,UAAU,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,CAAA;KAAE,CAAC;CACvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,4BAA4B,EACpC,OAAO,GAAE,mCAAwC,GAChD,4BAA4B,CAgH9B"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Values keys verified 2026-07-06 against
|
|
15
15
|
* https://github.com/ClickHouse/ClickStack-helm-charts
|
|
16
|
-
* charts/clickstack/values.yaml (chart 3.0
|
|
16
|
+
* charts/clickstack/values.yaml (chart 3.2.0, appVersion 2.35.0):
|
|
17
17
|
* - `hyperdx.config.*` env map: `CLICKHOUSE_ENDPOINT` (native, tcp://…),
|
|
18
18
|
* `CLICKHOUSE_SERVER_ENDPOINT` (host:port), `CLICKHOUSE_USER`,
|
|
19
19
|
* `HYPERDX_OTEL_EXPORTER_CLICKHOUSE_DATABASE`, `MONGO_URI`, `FRONTEND_URL`.
|
|
@@ -73,6 +73,25 @@ export const DEFAULT_CLICKSTACK_GATEWAY_ENDPOINT = 'http://clickstack-otel-colle
|
|
|
73
73
|
export const DEFAULT_K8S_TELEMETRY_COLLECTOR_IMAGE = 'otel/opentelemetry-collector-contrib';
|
|
74
74
|
/** Name of the HyperDX connection emitted into `defaultConnections`/`defaultSources`. */
|
|
75
75
|
export const CLICKSTACK_CONNECTION_NAME = 'External ClickHouse';
|
|
76
|
+
/**
|
|
77
|
+
* The ClickStack image runs under the OpAMP supervisor. Its built-in remote
|
|
78
|
+
* configuration declares the OTLP receiver but, without an overlay, does not
|
|
79
|
+
* attach it to any pipeline. The Service and health endpoint can therefore be
|
|
80
|
+
* Ready while 4317/4318 refuse connections. Chart 3.1+ provides the supported
|
|
81
|
+
* `global.otelCollector.customConfig` merge seam; keep every built-in receiver
|
|
82
|
+
* while attaching OTLP to all three signal pipelines.
|
|
83
|
+
*/
|
|
84
|
+
export const CLICKSTACK_INGEST_PIPELINES_CONFIG = [
|
|
85
|
+
'service:',
|
|
86
|
+
' pipelines:',
|
|
87
|
+
' logs/in:',
|
|
88
|
+
' receivers: [fluentforward, otlp/hyperdx]',
|
|
89
|
+
' metrics:',
|
|
90
|
+
' receivers: [prometheus, otlp/hyperdx]',
|
|
91
|
+
' traces:',
|
|
92
|
+
' receivers: [nop, otlp/hyperdx]',
|
|
93
|
+
'',
|
|
94
|
+
].join('\n');
|
|
76
95
|
// ============================================================================
|
|
77
96
|
// Shared helpers
|
|
78
97
|
// ============================================================================
|
|
@@ -174,7 +193,7 @@ function mergeOverridesWithPinsLast(base, overrides, pins) {
|
|
|
174
193
|
* `defaultConnections`/`defaultSources` pointing at the (nonexistent) bundled
|
|
175
194
|
* ClickHouse Service, so both must be overridden for external mode. The
|
|
176
195
|
* sources below mirror the chart defaults (values.yaml `defaultSources`,
|
|
177
|
-
* chart 3.0
|
|
196
|
+
* chart 3.2.0) with the connection renamed and the database parameterized
|
|
178
197
|
* (`%s` slots filled per mode).
|
|
179
198
|
*/
|
|
180
199
|
const DEFAULT_SOURCES_FORMAT = JSON.stringify([
|
|
@@ -280,6 +299,7 @@ const DEFAULT_CONNECTIONS_FORMAT = `[{"name":"${CLICKSTACK_CONNECTION_NAME}","ho
|
|
|
280
299
|
export function mapClickStackConfigToHelmValues(config, options = {}) {
|
|
281
300
|
const isGraph = isKubernetesRef(config.name) || isKubernetesRef(config.clickhouse);
|
|
282
301
|
const mongoMode = options.mongoMode ?? 'internal';
|
|
302
|
+
const credentialSource = options.credentialSource ?? 'inline';
|
|
283
303
|
const ch = config.clickhouse;
|
|
284
304
|
const hyperdxConfig = {};
|
|
285
305
|
const hyperdxSecrets = {};
|
|
@@ -289,10 +309,6 @@ export function mapClickStackConfigToHelmValues(config, options = {}) {
|
|
|
289
309
|
// templates (KRO mixed templates want string-typed segments).
|
|
290
310
|
const nativePortStr = Cel.expr(`string(${hasSchemaPath('schema.spec.clickhouse.nativePort')} ? schema.spec.clickhouse.nativePort : 9000)`);
|
|
291
311
|
const httpPortStr = Cel.expr(`string(${hasSchemaPath('schema.spec.clickhouse.httpPort')} ? schema.spec.clickhouse.httpPort : 8123)`);
|
|
292
|
-
const appUsername = Cel.expr(`${hasSchemaPath('schema.spec.clickhouse.appUsername')} ? schema.spec.clickhouse.appUsername : ` +
|
|
293
|
-
`(${hasSchemaPath('schema.spec.clickhouse.username')} ? schema.spec.clickhouse.username : "default")`);
|
|
294
|
-
const appPassword = Cel.expr(`${hasSchemaPath('schema.spec.clickhouse.appPassword')} ? schema.spec.clickhouse.appPassword : ` +
|
|
295
|
-
`(${hasSchemaPath('schema.spec.clickhouse.password')} ? schema.spec.clickhouse.password : "")`);
|
|
296
312
|
hyperdxConfig.CLICKHOUSE_ENDPOINT = Cel.template('tcp://%s:%s?dial_timeout=10s', ch.host, nativePortStr);
|
|
297
313
|
hyperdxConfig.CLICKHOUSE_SERVER_ENDPOINT = Cel.template('%s:%s', ch.host, nativePortStr);
|
|
298
314
|
hyperdxConfig.CLICKHOUSE_USER = resolve(ch.username, 'default');
|
|
@@ -302,13 +318,21 @@ export function mapClickStackConfigToHelmValues(config, options = {}) {
|
|
|
302
318
|
? config.mongoUri
|
|
303
319
|
: Cel.template(`mongodb://%s${CLICKSTACK_MONGO_NAME_SUFFIX}.%s.svc.cluster.local:${CLICKSTACK_MONGO_PORT}/hyperdx`, config.name, resolve(config.namespace, DEFAULT_CLICKSTACK_NAMESPACE));
|
|
304
320
|
hyperdxConfig.FRONTEND_URL = graphOptional('schema.spec.hyperdx.frontendUrl');
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
321
|
+
if (credentialSource === 'inline') {
|
|
322
|
+
const inlineConfig = config;
|
|
323
|
+
const inlineClickhouse = inlineConfig.clickhouse;
|
|
324
|
+
const appUsername = Cel.expr(`${hasSchemaPath('schema.spec.clickhouse.appUsername')} ? schema.spec.clickhouse.appUsername : ` +
|
|
325
|
+
`(${hasSchemaPath('schema.spec.clickhouse.username')} ? schema.spec.clickhouse.username : "default")`);
|
|
326
|
+
const appPassword = Cel.expr(`${hasSchemaPath('schema.spec.clickhouse.appPassword')} ? schema.spec.clickhouse.appPassword : ` +
|
|
327
|
+
`(${hasSchemaPath('schema.spec.clickhouse.password')} ? schema.spec.clickhouse.password : "")`);
|
|
328
|
+
hyperdxSecrets.CLICKHOUSE_PASSWORD = resolve(inlineClickhouse.password, '');
|
|
329
|
+
hyperdxSecrets.CLICKHOUSE_APP_PASSWORD = appPassword;
|
|
330
|
+
hyperdxSecrets.HYPERDX_API_KEY = inlineConfig.apiKey;
|
|
331
|
+
hyperdxDeployment.defaultConnections = Cel.template(DEFAULT_CONNECTIONS_FORMAT, ch.host, httpPortStr, httpPortStr, appUsername, appPassword);
|
|
332
|
+
}
|
|
308
333
|
hyperdxDeployment.replicas = graphOptional('schema.spec.hyperdx.replicas');
|
|
309
334
|
hyperdxDeployment.resources = graphOptional('schema.spec.hyperdx.resources');
|
|
310
335
|
hyperdxDeployment.image = graphOptional('schema.spec.hyperdx.image');
|
|
311
|
-
hyperdxDeployment.defaultConnections = Cel.template(DEFAULT_CONNECTIONS_FORMAT, ch.host, httpPortStr, httpPortStr, appUsername, appPassword);
|
|
312
336
|
const database = resolve(ch.database, 'default');
|
|
313
337
|
hyperdxDeployment.defaultSources = Cel.template(DEFAULT_SOURCES_FORMAT, database, database, database, database);
|
|
314
338
|
}
|
|
@@ -317,9 +341,6 @@ export function mapClickStackConfigToHelmValues(config, options = {}) {
|
|
|
317
341
|
const httpPort = ch.httpPort ?? 8123;
|
|
318
342
|
const database = ch.database ?? 'default';
|
|
319
343
|
const username = ch.username ?? 'default';
|
|
320
|
-
const password = ch.password ?? '';
|
|
321
|
-
const appUsername = ch.appUsername ?? username;
|
|
322
|
-
const appPassword = ch.appPassword ?? password;
|
|
323
344
|
hyperdxConfig.CLICKHOUSE_ENDPOINT = `tcp://${ch.host}:${nativePort}?dial_timeout=10s`;
|
|
324
345
|
hyperdxConfig.CLICKHOUSE_SERVER_ENDPOINT = `${ch.host}:${nativePort}`;
|
|
325
346
|
hyperdxConfig.CLICKHOUSE_USER = username;
|
|
@@ -329,27 +350,34 @@ export function mapClickStackConfigToHelmValues(config, options = {}) {
|
|
|
329
350
|
? config.mongoUri
|
|
330
351
|
: `mongodb://${config.name}${CLICKSTACK_MONGO_NAME_SUFFIX}.${config.namespace ?? DEFAULT_CLICKSTACK_NAMESPACE}.svc.cluster.local:${CLICKSTACK_MONGO_PORT}/hyperdx`;
|
|
331
352
|
setIfDefined(hyperdxConfig, 'FRONTEND_URL', config.hyperdx?.frontendUrl);
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
353
|
+
if (credentialSource === 'inline') {
|
|
354
|
+
const inlineConfig = config;
|
|
355
|
+
const inlineClickhouse = inlineConfig.clickhouse;
|
|
356
|
+
const password = inlineClickhouse.password ?? '';
|
|
357
|
+
const appUsername = inlineClickhouse.appUsername ?? username;
|
|
358
|
+
const appPassword = inlineClickhouse.appPassword ?? password;
|
|
359
|
+
hyperdxSecrets.CLICKHOUSE_PASSWORD = password;
|
|
360
|
+
hyperdxSecrets.CLICKHOUSE_APP_PASSWORD = appPassword;
|
|
361
|
+
hyperdxSecrets.HYPERDX_API_KEY = inlineConfig.apiKey;
|
|
362
|
+
hyperdxDeployment.defaultConnections = JSON.stringify([
|
|
363
|
+
{
|
|
364
|
+
name: CLICKSTACK_CONNECTION_NAME,
|
|
365
|
+
host: `http://${ch.host}:${httpPort}`,
|
|
366
|
+
port: httpPort,
|
|
367
|
+
username: appUsername,
|
|
368
|
+
password: appPassword,
|
|
369
|
+
},
|
|
370
|
+
]);
|
|
371
|
+
}
|
|
335
372
|
setIfDefined(hyperdxDeployment, 'replicas', config.hyperdx?.replicas);
|
|
336
373
|
setIfDefined(hyperdxDeployment, 'resources', config.hyperdx?.resources);
|
|
337
374
|
setIfDefined(hyperdxDeployment, 'image', config.hyperdx?.image);
|
|
338
|
-
hyperdxDeployment.defaultConnections = JSON.stringify([
|
|
339
|
-
{
|
|
340
|
-
name: CLICKSTACK_CONNECTION_NAME,
|
|
341
|
-
host: `http://${ch.host}:${httpPort}`,
|
|
342
|
-
port: httpPort,
|
|
343
|
-
username: appUsername,
|
|
344
|
-
password: appPassword,
|
|
345
|
-
},
|
|
346
|
-
]);
|
|
347
375
|
hyperdxDeployment.defaultSources = DEFAULT_SOURCES_FORMAT.replace(/%s/g, () => database);
|
|
348
376
|
}
|
|
349
377
|
const values = {
|
|
350
378
|
hyperdx: {
|
|
351
379
|
config: hyperdxConfig,
|
|
352
|
-
secrets: hyperdxSecrets,
|
|
380
|
+
...(credentialSource === 'inline' ? { secrets: hyperdxSecrets } : {}),
|
|
353
381
|
deployment: hyperdxDeployment,
|
|
354
382
|
},
|
|
355
383
|
};
|
|
@@ -357,6 +385,11 @@ export function mapClickStackConfigToHelmValues(config, options = {}) {
|
|
|
357
385
|
// contract's naming anchor. Merged AFTER every passthrough so they always
|
|
358
386
|
// win — including over a graph-aware per-instance `customValues` override.
|
|
359
387
|
const pins = {
|
|
388
|
+
global: {
|
|
389
|
+
otelCollector: {
|
|
390
|
+
customConfig: CLICKSTACK_INGEST_PIPELINES_CONFIG,
|
|
391
|
+
},
|
|
392
|
+
},
|
|
360
393
|
clickhouse: { enabled: false },
|
|
361
394
|
mongodb: { enabled: false },
|
|
362
395
|
fullnameOverride: config.name,
|