@quiltdata/benchling-webhook 0.6.3-20251104T170954Z → 0.7.2-20251106T003353Z
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 +166 -5
- package/dist/bin/benchling-webhook.d.ts +2 -16
- package/dist/bin/benchling-webhook.d.ts.map +1 -1
- package/dist/bin/benchling-webhook.js +98 -158
- package/dist/bin/benchling-webhook.js.map +1 -1
- package/dist/bin/cli.js +96 -8
- package/dist/bin/cli.js.map +1 -1
- package/dist/bin/{config-profiles.d.ts → commands/config-profiles.d.ts} +10 -9
- package/dist/bin/commands/config-profiles.d.ts.map +1 -0
- package/dist/bin/{config-profiles.js → commands/config-profiles.js} +110 -102
- package/dist/bin/commands/config-profiles.js.map +1 -0
- package/dist/bin/commands/create-secret.d.ts.map +1 -0
- package/dist/bin/commands/create-secret.js.map +1 -0
- package/dist/bin/commands/deploy.d.ts +11 -0
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +65 -110
- package/dist/bin/commands/deploy.js.map +1 -1
- package/dist/bin/{get-env.d.ts → commands/get-env.d.ts} +1 -1
- package/dist/bin/commands/get-env.d.ts.map +1 -0
- package/dist/bin/{get-env.js → commands/get-env.js} +2 -2
- package/dist/bin/commands/get-env.js.map +1 -0
- package/dist/bin/commands/health-check.d.ts +47 -0
- package/dist/bin/commands/health-check.d.ts.map +1 -0
- package/dist/bin/commands/health-check.js +357 -0
- package/dist/bin/commands/health-check.js.map +1 -0
- package/dist/bin/commands/infer-quilt-config.d.ts +50 -0
- package/dist/bin/commands/infer-quilt-config.d.ts.map +1 -0
- package/dist/bin/commands/infer-quilt-config.js +356 -0
- package/dist/bin/commands/infer-quilt-config.js.map +1 -0
- package/dist/bin/commands/init.d.ts.map +1 -1
- package/dist/bin/commands/init.js +2 -32
- package/dist/bin/commands/init.js.map +1 -1
- package/dist/bin/commands/manifest.d.ts +11 -0
- package/dist/bin/commands/manifest.d.ts.map +1 -1
- package/dist/bin/commands/manifest.js +22 -8
- package/dist/bin/commands/manifest.js.map +1 -1
- package/dist/bin/commands/publish.d.ts.map +1 -0
- package/dist/bin/{publish.js → commands/publish.js} +2 -2
- package/dist/bin/commands/publish.js.map +1 -0
- package/dist/bin/commands/setup-profile.d.ts +29 -0
- package/dist/bin/commands/setup-profile.d.ts.map +1 -0
- package/dist/bin/commands/setup-profile.js +220 -0
- package/dist/bin/commands/setup-profile.js.map +1 -0
- package/dist/bin/commands/setup-wizard.d.ts +26 -11
- package/dist/bin/commands/setup-wizard.d.ts.map +1 -1
- package/dist/bin/commands/setup-wizard.js +844 -46
- package/dist/bin/commands/setup-wizard.js.map +1 -1
- package/dist/{scripts → bin/commands}/sync-secrets.d.ts +6 -1
- package/dist/bin/commands/sync-secrets.d.ts.map +1 -0
- package/dist/{scripts → bin/commands}/sync-secrets.js +159 -55
- package/dist/bin/commands/sync-secrets.js.map +1 -0
- package/dist/bin/commands/validate.d.ts.map +1 -1
- package/dist/bin/commands/validate.js +2 -12
- package/dist/bin/commands/validate.js.map +1 -1
- package/dist/lib/alb-api-gateway.d.ts +7 -1
- package/dist/lib/alb-api-gateway.d.ts.map +1 -1
- package/dist/lib/alb-api-gateway.js +9 -6
- package/dist/lib/alb-api-gateway.js.map +1 -1
- package/dist/lib/benchling-webhook-stack.d.ts +13 -12
- package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
- package/dist/lib/benchling-webhook-stack.js +43 -30
- package/dist/lib/benchling-webhook-stack.js.map +1 -1
- package/dist/lib/configuration-saver.d.ts +4 -16
- package/dist/lib/configuration-saver.d.ts.map +1 -1
- package/dist/lib/configuration-saver.js +14 -54
- package/dist/lib/configuration-saver.js.map +1 -1
- package/dist/lib/fargate-service.d.ts +11 -21
- package/dist/lib/fargate-service.d.ts.map +1 -1
- package/dist/lib/fargate-service.js +79 -176
- package/dist/lib/fargate-service.js.map +1 -1
- package/dist/lib/types/config.d.ts +591 -224
- package/dist/lib/types/config.d.ts.map +1 -1
- package/dist/lib/types/config.js +134 -3
- package/dist/lib/types/config.js.map +1 -1
- package/dist/lib/utils/config.d.ts.map +1 -1
- package/dist/lib/utils/config.js.map +1 -1
- package/dist/lib/xdg-config.d.ts +222 -106
- package/dist/lib/xdg-config.d.ts.map +1 -1
- package/dist/lib/xdg-config.js +448 -387
- package/dist/lib/xdg-config.js.map +1 -1
- package/dist/package.json +16 -13
- package/dist/scripts/check-logs.d.ts +12 -0
- package/dist/scripts/check-logs.d.ts.map +1 -0
- package/dist/{bin → scripts}/check-logs.js +65 -15
- package/dist/scripts/check-logs.js.map +1 -0
- package/dist/scripts/check-webhook-verification.d.ts +3 -0
- package/dist/scripts/check-webhook-verification.d.ts.map +1 -0
- package/dist/{bin/test-invalid-signature.js → scripts/check-webhook-verification.js} +1 -1
- package/dist/scripts/check-webhook-verification.js.map +1 -0
- package/dist/scripts/infer-quilt-config.d.ts +23 -26
- package/dist/scripts/infer-quilt-config.d.ts.map +1 -1
- package/dist/scripts/infer-quilt-config.js +58 -96
- package/dist/scripts/infer-quilt-config.js.map +1 -1
- package/dist/scripts/send-event.d.ts.map +1 -0
- package/dist/scripts/send-event.js.map +1 -0
- package/dist/{bin → scripts}/version.d.ts +3 -1
- package/dist/scripts/version.d.ts.map +1 -0
- package/dist/{bin → scripts}/version.js +95 -9
- package/dist/scripts/version.js.map +1 -0
- package/package.json +16 -13
- package/dist/bin/check-logs.d.ts +0 -7
- package/dist/bin/check-logs.d.ts.map +0 -1
- package/dist/bin/check-logs.js.map +0 -1
- package/dist/bin/config-profiles.d.ts.map +0 -1
- package/dist/bin/config-profiles.js.map +0 -1
- package/dist/bin/create-secret.d.ts.map +0 -1
- package/dist/bin/create-secret.js.map +0 -1
- package/dist/bin/dev-deploy.d.ts +0 -20
- package/dist/bin/dev-deploy.d.ts.map +0 -1
- package/dist/bin/dev-deploy.js +0 -289
- package/dist/bin/dev-deploy.js.map +0 -1
- package/dist/bin/get-env.d.ts.map +0 -1
- package/dist/bin/get-env.js.map +0 -1
- package/dist/bin/publish.d.ts.map +0 -1
- package/dist/bin/publish.js.map +0 -1
- package/dist/bin/release.d.ts +0 -11
- package/dist/bin/release.d.ts.map +0 -1
- package/dist/bin/release.js +0 -141
- package/dist/bin/release.js.map +0 -1
- package/dist/bin/send-event.d.ts.map +0 -1
- package/dist/bin/send-event.js.map +0 -1
- package/dist/bin/test-invalid-signature.d.ts +0 -3
- package/dist/bin/test-invalid-signature.d.ts.map +0 -1
- package/dist/bin/test-invalid-signature.js.map +0 -1
- package/dist/bin/version.d.ts.map +0 -1
- package/dist/bin/version.js.map +0 -1
- package/dist/scripts/config-health-check.d.ts +0 -84
- package/dist/scripts/config-health-check.d.ts.map +0 -1
- package/dist/scripts/config-health-check.js +0 -659
- package/dist/scripts/config-health-check.js.map +0 -1
- package/dist/scripts/install-wizard.d.ts +0 -34
- package/dist/scripts/install-wizard.d.ts.map +0 -1
- package/dist/scripts/install-wizard.js +0 -719
- package/dist/scripts/install-wizard.js.map +0 -1
- package/dist/scripts/sync-secrets.d.ts.map +0 -1
- package/dist/scripts/sync-secrets.js.map +0 -1
- /package/dist/bin/{create-secret.d.ts → commands/create-secret.d.ts} +0 -0
- /package/dist/bin/{create-secret.js → commands/create-secret.js} +0 -0
- /package/dist/bin/{publish.d.ts → commands/publish.d.ts} +0 -0
- /package/dist/{bin → scripts}/send-event.d.ts +0 -0
- /package/dist/{bin → scripts}/send-event.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,eAAe,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,aAAa,CAAC;IAExB;;OAEG;IACH,UAAU,EAAE,gBAAgB,CAAC;IAE7B;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B;;OAEG;IACH,SAAS,EAAE,cAAc,CAAC;IAE1B;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IACxB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B;;;;OAIG;IACH,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;CACjD;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IAEpC;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B;;;;;;;;;;;;OAYG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAEzC;;;;OAIG;IACH,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4EtB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2C1B,CAAC;AAOX;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC7C,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IACzD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACxB"}
|
package/dist/lib/types/config.js
CHANGED
|
@@ -1,11 +1,142 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Type Definitions for v0.7.0 Configuration Architecture
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* BREAKING CHANGE: Complete rewrite with NO backward compatibility.
|
|
6
|
+
* This module defines the new unified configuration system for multi-environment deployments.
|
|
7
7
|
*
|
|
8
8
|
* @module types/config
|
|
9
|
+
* @version 0.7.0
|
|
9
10
|
*/
|
|
10
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DeploymentHistorySchema = exports.ProfileConfigSchema = void 0;
|
|
13
|
+
/**
|
|
14
|
+
* JSON Schema for ProfileConfig validation
|
|
15
|
+
*
|
|
16
|
+
* This schema can be used with ajv or other JSON Schema validators.
|
|
17
|
+
*/
|
|
18
|
+
exports.ProfileConfigSchema = {
|
|
19
|
+
$schema: "http://json-schema.org/draft-07/schema#",
|
|
20
|
+
title: "ProfileConfig",
|
|
21
|
+
description: "Benchling Webhook Profile Configuration (v0.7.0)",
|
|
22
|
+
type: "object",
|
|
23
|
+
required: ["quilt", "benchling", "packages", "deployment", "_metadata"],
|
|
24
|
+
properties: {
|
|
25
|
+
quilt: {
|
|
26
|
+
type: "object",
|
|
27
|
+
required: ["stackArn", "catalog", "bucket", "database", "queueArn", "region"],
|
|
28
|
+
properties: {
|
|
29
|
+
stackArn: { type: "string", pattern: "^arn:aws:cloudformation:" },
|
|
30
|
+
catalog: { type: "string", minLength: 1 },
|
|
31
|
+
bucket: { type: "string", minLength: 3 },
|
|
32
|
+
database: { type: "string", minLength: 1 },
|
|
33
|
+
queueArn: { type: "string", pattern: "^arn:aws:sqs:" },
|
|
34
|
+
region: { type: "string", pattern: "^[a-z]{2}-[a-z]+-[0-9]$" },
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
benchling: {
|
|
38
|
+
type: "object",
|
|
39
|
+
required: ["tenant", "clientId", "appDefinitionId"],
|
|
40
|
+
properties: {
|
|
41
|
+
tenant: { type: "string", minLength: 1 },
|
|
42
|
+
clientId: { type: "string", minLength: 1 },
|
|
43
|
+
clientSecret: { type: "string" },
|
|
44
|
+
secretArn: { type: "string", pattern: "^arn:aws:secretsmanager:" },
|
|
45
|
+
appDefinitionId: { type: "string", minLength: 1 },
|
|
46
|
+
testEntryId: { type: "string" },
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
packages: {
|
|
50
|
+
type: "object",
|
|
51
|
+
required: ["bucket", "prefix", "metadataKey"],
|
|
52
|
+
properties: {
|
|
53
|
+
bucket: { type: "string", minLength: 3 },
|
|
54
|
+
prefix: { type: "string", minLength: 1 },
|
|
55
|
+
metadataKey: { type: "string", minLength: 1 },
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
deployment: {
|
|
59
|
+
type: "object",
|
|
60
|
+
required: ["region"],
|
|
61
|
+
properties: {
|
|
62
|
+
region: { type: "string", pattern: "^[a-z]{2}-[a-z]+-[0-9]$" },
|
|
63
|
+
account: { type: "string", pattern: "^[0-9]{12}$" },
|
|
64
|
+
ecrRepository: { type: "string" },
|
|
65
|
+
imageTag: { type: "string" },
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
logging: {
|
|
69
|
+
type: "object",
|
|
70
|
+
properties: {
|
|
71
|
+
level: { type: "string", enum: ["DEBUG", "INFO", "WARNING", "ERROR"] },
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
security: {
|
|
75
|
+
type: "object",
|
|
76
|
+
properties: {
|
|
77
|
+
webhookAllowList: { type: "string" },
|
|
78
|
+
enableVerification: { type: "boolean" },
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
_metadata: {
|
|
82
|
+
type: "object",
|
|
83
|
+
required: ["version", "createdAt", "updatedAt", "source"],
|
|
84
|
+
properties: {
|
|
85
|
+
version: { type: "string" },
|
|
86
|
+
createdAt: { type: "string", format: "date-time" },
|
|
87
|
+
updatedAt: { type: "string", format: "date-time" },
|
|
88
|
+
source: { type: "string", enum: ["wizard", "manual", "cli"] },
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
_inherits: { type: "string" },
|
|
92
|
+
},
|
|
93
|
+
additionalProperties: false,
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* JSON Schema for DeploymentHistory validation
|
|
97
|
+
*/
|
|
98
|
+
exports.DeploymentHistorySchema = {
|
|
99
|
+
$schema: "http://json-schema.org/draft-07/schema#",
|
|
100
|
+
title: "DeploymentHistory",
|
|
101
|
+
description: "Deployment tracking for a profile",
|
|
102
|
+
type: "object",
|
|
103
|
+
required: ["active", "history"],
|
|
104
|
+
properties: {
|
|
105
|
+
active: {
|
|
106
|
+
type: "object",
|
|
107
|
+
additionalProperties: {
|
|
108
|
+
type: "object",
|
|
109
|
+
required: ["stage", "timestamp", "imageTag", "endpoint", "stackName", "region"],
|
|
110
|
+
properties: {
|
|
111
|
+
stage: { type: "string" },
|
|
112
|
+
timestamp: { type: "string", format: "date-time" },
|
|
113
|
+
imageTag: { type: "string" },
|
|
114
|
+
endpoint: { type: "string", format: "uri" },
|
|
115
|
+
stackName: { type: "string" },
|
|
116
|
+
region: { type: "string" },
|
|
117
|
+
deployedBy: { type: "string" },
|
|
118
|
+
commit: { type: "string" },
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
history: {
|
|
123
|
+
type: "array",
|
|
124
|
+
items: {
|
|
125
|
+
type: "object",
|
|
126
|
+
required: ["stage", "timestamp", "imageTag", "endpoint", "stackName", "region"],
|
|
127
|
+
properties: {
|
|
128
|
+
stage: { type: "string" },
|
|
129
|
+
timestamp: { type: "string", format: "date-time" },
|
|
130
|
+
imageTag: { type: "string" },
|
|
131
|
+
endpoint: { type: "string", format: "uri" },
|
|
132
|
+
stackName: { type: "string" },
|
|
133
|
+
region: { type: "string" },
|
|
134
|
+
deployedBy: { type: "string" },
|
|
135
|
+
commit: { type: "string" },
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
},
|
|
139
|
+
},
|
|
140
|
+
additionalProperties: false,
|
|
141
|
+
};
|
|
11
142
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/utils/config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,MAAM;IAErB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/utils/config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,MAAM;IAErB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IAGtB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wBAAwB,EAAE,MAAM,CAAC;IAGjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,QAAQ,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAerD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmBnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA6BlE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAY3C;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsD3E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACrC,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,gBAAgB,CAkExE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CA0CvE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/utils/config.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/utils/config.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/xdg-config.d.ts
CHANGED
|
@@ -1,28 +1,57 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* XDG Configuration Management
|
|
2
|
+
* XDG Configuration Management (v0.7.0 - BREAKING CHANGE)
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* Implements a three-file configuration model:
|
|
6
|
-
* - User configuration: User-provided default settings
|
|
7
|
-
* - Derived configuration: CLI-inferred configuration
|
|
8
|
-
* - Deployment configuration: Deployment-specific artifacts
|
|
4
|
+
* Complete rewrite with NO backward compatibility with v0.6.x.
|
|
9
5
|
*
|
|
10
|
-
*
|
|
6
|
+
* This module provides XDG-compliant configuration management for the Benchling Webhook system
|
|
7
|
+
* with a simplified, profile-first architecture:
|
|
8
|
+
*
|
|
9
|
+
* - Single unified configuration file per profile (`config.json`)
|
|
10
|
+
* - Per-profile deployment tracking (`deployments.json`)
|
|
11
|
+
* - Profile inheritance support with deep merging
|
|
12
|
+
* - Comprehensive validation and helpful error messages
|
|
13
|
+
*
|
|
14
|
+
* Directory Structure:
|
|
15
|
+
* ```
|
|
16
|
+
* ~/.config/benchling-webhook/
|
|
17
|
+
* ├── default/
|
|
18
|
+
* │ ├── config.json # Profile configuration
|
|
19
|
+
* │ └── deployments.json # Deployment history
|
|
20
|
+
* └── dev/
|
|
21
|
+
* ├── config.json
|
|
22
|
+
* └── deployments.json
|
|
23
|
+
* ```
|
|
11
24
|
*
|
|
12
25
|
* @module xdg-config
|
|
26
|
+
* @version 0.7.0
|
|
13
27
|
*/
|
|
14
|
-
import {
|
|
15
|
-
/**
|
|
16
|
-
* Base configuration structure (for backward compatibility)
|
|
17
|
-
*/
|
|
18
|
-
export interface BaseConfig {
|
|
19
|
-
[key: string]: unknown;
|
|
20
|
-
}
|
|
21
|
-
export type { ConfigType, XDGConfigPaths, ConfigSet };
|
|
28
|
+
import { ProfileConfig, DeploymentHistory, DeploymentRecord, ValidationResult } from "./types/config";
|
|
22
29
|
/**
|
|
23
|
-
* XDG Configuration Manager
|
|
30
|
+
* XDG Configuration Manager (v0.7.0)
|
|
31
|
+
*
|
|
32
|
+
* Manages profile-based configuration with deployment tracking.
|
|
33
|
+
* NO backward compatibility with v0.6.x configuration files.
|
|
24
34
|
*
|
|
25
|
-
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const xdg = new XDGConfig();
|
|
38
|
+
*
|
|
39
|
+
* // Read profile configuration
|
|
40
|
+
* const config = xdg.readProfile("default");
|
|
41
|
+
*
|
|
42
|
+
* // Write profile configuration
|
|
43
|
+
* xdg.writeProfile("default", config);
|
|
44
|
+
*
|
|
45
|
+
* // Record deployment
|
|
46
|
+
* xdg.recordDeployment("default", {
|
|
47
|
+
* stage: "prod",
|
|
48
|
+
* timestamp: new Date().toISOString(),
|
|
49
|
+
* imageTag: "0.7.0",
|
|
50
|
+
* endpoint: "https://...",
|
|
51
|
+
* stackName: "BenchlingWebhookStack",
|
|
52
|
+
* region: "us-east-1"
|
|
53
|
+
* });
|
|
54
|
+
* ```
|
|
26
55
|
*/
|
|
27
56
|
export declare class XDGConfig {
|
|
28
57
|
private readonly baseDir;
|
|
@@ -35,153 +64,240 @@ export declare class XDGConfig {
|
|
|
35
64
|
/**
|
|
36
65
|
* Gets the default XDG base directory
|
|
37
66
|
*
|
|
38
|
-
* @returns The default base directory path
|
|
67
|
+
* @returns The default base directory path (~/.config/benchling-webhook)
|
|
39
68
|
*/
|
|
40
69
|
private getDefaultBaseDir;
|
|
41
70
|
/**
|
|
42
|
-
*
|
|
71
|
+
* Ensures the base configuration directory exists
|
|
43
72
|
*
|
|
44
|
-
* @
|
|
45
|
-
* @returns Expanded absolute path
|
|
73
|
+
* @throws {Error} If directory creation fails
|
|
46
74
|
*/
|
|
47
|
-
private
|
|
75
|
+
private ensureBaseDirectoryExists;
|
|
48
76
|
/**
|
|
49
|
-
*
|
|
77
|
+
* Reads configuration for a profile
|
|
50
78
|
*
|
|
51
|
-
* @
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Gets the configuration file paths for this instance
|
|
79
|
+
* @param profile - Profile name (e.g., "default", "dev", "prod")
|
|
80
|
+
* @returns Parsed configuration object
|
|
81
|
+
* @throws {Error} If profile not found or configuration is invalid
|
|
56
82
|
*
|
|
57
|
-
* @
|
|
83
|
+
* @example
|
|
84
|
+
* ```typescript
|
|
85
|
+
* const config = xdg.readProfile("default");
|
|
86
|
+
* console.log(config.benchling.tenant);
|
|
87
|
+
* ```
|
|
58
88
|
*/
|
|
59
|
-
|
|
89
|
+
readProfile(profile: string): ProfileConfig;
|
|
60
90
|
/**
|
|
61
|
-
*
|
|
91
|
+
* Writes configuration for a profile
|
|
62
92
|
*
|
|
63
|
-
* Creates the
|
|
93
|
+
* Creates the profile directory if it doesn't exist.
|
|
94
|
+
* Performs atomic write with automatic backup.
|
|
64
95
|
*
|
|
65
|
-
* @
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Gets the file path for a specific configuration type
|
|
96
|
+
* @param profile - Profile name
|
|
97
|
+
* @param config - Configuration object to write
|
|
98
|
+
* @throws {Error} If validation fails or write operation fails
|
|
70
99
|
*
|
|
71
|
-
* @
|
|
72
|
-
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```typescript
|
|
102
|
+
* xdg.writeProfile("default", {
|
|
103
|
+
* quilt: { ... },
|
|
104
|
+
* benchling: { ... },
|
|
105
|
+
* packages: { ... },
|
|
106
|
+
* deployment: { ... },
|
|
107
|
+
* _metadata: {
|
|
108
|
+
* version: "0.7.0",
|
|
109
|
+
* createdAt: new Date().toISOString(),
|
|
110
|
+
* updatedAt: new Date().toISOString(),
|
|
111
|
+
* source: "wizard"
|
|
112
|
+
* }
|
|
113
|
+
* });
|
|
114
|
+
* ```
|
|
73
115
|
*/
|
|
74
|
-
|
|
116
|
+
writeProfile(profile: string, config: ProfileConfig): void;
|
|
75
117
|
/**
|
|
76
|
-
*
|
|
118
|
+
* Deletes a profile and all its files
|
|
77
119
|
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
120
|
+
* WARNING: This is a destructive operation!
|
|
121
|
+
* Cannot delete the "default" profile.
|
|
122
|
+
*
|
|
123
|
+
* @param profile - Profile name to delete
|
|
124
|
+
* @throws {Error} If attempting to delete default profile or if deletion fails
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```typescript
|
|
128
|
+
* xdg.deleteProfile("dev");
|
|
129
|
+
* ```
|
|
81
130
|
*/
|
|
82
|
-
|
|
131
|
+
deleteProfile(profile: string): void;
|
|
83
132
|
/**
|
|
84
|
-
*
|
|
133
|
+
* Lists all available profiles
|
|
85
134
|
*
|
|
86
|
-
* @
|
|
87
|
-
*
|
|
135
|
+
* @returns Array of profile names
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* const profiles = xdg.listProfiles();
|
|
140
|
+
* console.log(profiles); // ["default", "dev", "prod"]
|
|
141
|
+
* ```
|
|
88
142
|
*/
|
|
89
|
-
|
|
143
|
+
listProfiles(): string[];
|
|
90
144
|
/**
|
|
91
|
-
*
|
|
145
|
+
* Checks if a profile exists
|
|
92
146
|
*
|
|
93
|
-
* @param
|
|
94
|
-
* @
|
|
147
|
+
* @param profile - Profile name to check
|
|
148
|
+
* @returns True if profile exists and has valid config.json, false otherwise
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```typescript
|
|
152
|
+
* if (xdg.profileExists("dev")) {
|
|
153
|
+
* const config = xdg.readProfile("dev");
|
|
154
|
+
* }
|
|
155
|
+
* ```
|
|
95
156
|
*/
|
|
96
|
-
|
|
157
|
+
profileExists(profile: string): boolean;
|
|
97
158
|
/**
|
|
98
|
-
*
|
|
159
|
+
* Gets deployment history for a profile
|
|
99
160
|
*
|
|
100
|
-
*
|
|
101
|
-
* Creates a backup of the existing file before overwriting.
|
|
161
|
+
* Returns empty history if deployments.json doesn't exist.
|
|
102
162
|
*
|
|
103
|
-
* @param
|
|
104
|
-
* @
|
|
105
|
-
*
|
|
163
|
+
* @param profile - Profile name
|
|
164
|
+
* @returns Deployment history with active deployments and full history
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* ```typescript
|
|
168
|
+
* const deployments = xdg.getDeployments("default");
|
|
169
|
+
* console.log(deployments.active["prod"]); // Active prod deployment
|
|
170
|
+
* console.log(deployments.history[0]); // Most recent deployment
|
|
171
|
+
* ```
|
|
106
172
|
*/
|
|
107
|
-
|
|
173
|
+
getDeployments(profile: string): DeploymentHistory;
|
|
108
174
|
/**
|
|
109
|
-
*
|
|
175
|
+
* Records a new deployment for a profile
|
|
176
|
+
*
|
|
177
|
+
* Adds deployment to history and updates active deployment for the stage.
|
|
178
|
+
* Creates deployments.json if it doesn't exist.
|
|
110
179
|
*
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
* Uses deep merge to handle nested objects.
|
|
180
|
+
* @param profile - Profile name
|
|
181
|
+
* @param deployment - Deployment record to add
|
|
114
182
|
*
|
|
115
|
-
* @
|
|
116
|
-
*
|
|
183
|
+
* @example
|
|
184
|
+
* ```typescript
|
|
185
|
+
* xdg.recordDeployment("default", {
|
|
186
|
+
* stage: "prod",
|
|
187
|
+
* timestamp: new Date().toISOString(),
|
|
188
|
+
* imageTag: "0.7.0",
|
|
189
|
+
* endpoint: "https://abc123.execute-api.us-east-1.amazonaws.com/prod",
|
|
190
|
+
* stackName: "BenchlingWebhookStack",
|
|
191
|
+
* region: "us-east-1",
|
|
192
|
+
* deployedBy: "ernest@example.com",
|
|
193
|
+
* commit: "abc123f"
|
|
194
|
+
* });
|
|
195
|
+
* ```
|
|
117
196
|
*/
|
|
118
|
-
|
|
197
|
+
recordDeployment(profile: string, deployment: DeploymentRecord): void;
|
|
119
198
|
/**
|
|
120
|
-
* Gets the
|
|
199
|
+
* Gets the active deployment for a specific stage
|
|
121
200
|
*
|
|
122
|
-
* @param
|
|
123
|
-
* @
|
|
201
|
+
* @param profile - Profile name
|
|
202
|
+
* @param stage - Stage name (e.g., "dev", "prod")
|
|
203
|
+
* @returns Active deployment record for the stage, or null if none exists
|
|
204
|
+
*
|
|
205
|
+
* @example
|
|
206
|
+
* ```typescript
|
|
207
|
+
* const prodDeployment = xdg.getActiveDeployment("default", "prod");
|
|
208
|
+
* if (prodDeployment) {
|
|
209
|
+
* console.log("Prod endpoint:", prodDeployment.endpoint);
|
|
210
|
+
* }
|
|
211
|
+
* ```
|
|
124
212
|
*/
|
|
125
|
-
|
|
213
|
+
getActiveDeployment(profile: string, stage: string): DeploymentRecord | null;
|
|
126
214
|
/**
|
|
127
|
-
*
|
|
215
|
+
* Reads profile configuration with inheritance support
|
|
216
|
+
*
|
|
217
|
+
* If the profile has an `_inherits` field, loads the base profile first
|
|
218
|
+
* and deep merges the current profile on top.
|
|
219
|
+
*
|
|
220
|
+
* Detects and prevents circular inheritance chains.
|
|
128
221
|
*
|
|
129
|
-
* @param
|
|
130
|
-
* @
|
|
222
|
+
* @param profile - Profile name to read
|
|
223
|
+
* @param baseProfile - Optional explicit base profile (overrides `_inherits`)
|
|
224
|
+
* @returns Merged configuration with inheritance applied
|
|
225
|
+
* @throws {Error} If circular inheritance is detected
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```typescript
|
|
229
|
+
* // dev/config.json has "_inherits": "default"
|
|
230
|
+
* const devConfig = xdg.readProfileWithInheritance("dev");
|
|
231
|
+
* // Returns default config deep-merged with dev overrides
|
|
232
|
+
* ```
|
|
131
233
|
*/
|
|
132
|
-
|
|
234
|
+
readProfileWithInheritance(profile: string, baseProfile?: string): ProfileConfig;
|
|
133
235
|
/**
|
|
134
|
-
*
|
|
236
|
+
* Internal recursive implementation of profile inheritance
|
|
135
237
|
*
|
|
136
|
-
* @param
|
|
238
|
+
* @param profile - Current profile name
|
|
239
|
+
* @param explicitBase - Explicitly specified base profile
|
|
240
|
+
* @param visited - Set of visited profiles (for circular detection)
|
|
241
|
+
* @returns Merged configuration
|
|
242
|
+
* @throws {Error} If circular inheritance is detected
|
|
137
243
|
*/
|
|
138
|
-
|
|
244
|
+
private readProfileWithInheritanceInternal;
|
|
139
245
|
/**
|
|
140
|
-
*
|
|
246
|
+
* Deep merges two profile configurations
|
|
141
247
|
*
|
|
142
|
-
*
|
|
248
|
+
* Nested objects are merged recursively.
|
|
249
|
+
* Arrays are replaced (not concatenated).
|
|
250
|
+
* Current config takes precedence over base config.
|
|
251
|
+
*
|
|
252
|
+
* @param base - Base configuration
|
|
253
|
+
* @param current - Current configuration (takes precedence)
|
|
254
|
+
* @returns Merged configuration
|
|
143
255
|
*/
|
|
144
|
-
|
|
256
|
+
private deepMergeConfigs;
|
|
145
257
|
/**
|
|
146
|
-
*
|
|
258
|
+
* Validates a profile configuration against the schema
|
|
147
259
|
*
|
|
148
|
-
* @param
|
|
149
|
-
* @returns
|
|
260
|
+
* @param config - Configuration object to validate
|
|
261
|
+
* @returns Validation result with errors and warnings
|
|
262
|
+
*
|
|
263
|
+
* @example
|
|
264
|
+
* ```typescript
|
|
265
|
+
* const validation = xdg.validateProfile(config);
|
|
266
|
+
* if (!validation.isValid) {
|
|
267
|
+
* console.error("Validation errors:", validation.errors);
|
|
268
|
+
* }
|
|
269
|
+
* ```
|
|
150
270
|
*/
|
|
151
|
-
|
|
271
|
+
validateProfile(config: ProfileConfig): ValidationResult;
|
|
152
272
|
/**
|
|
153
|
-
*
|
|
273
|
+
* Gets the directory path for a profile
|
|
154
274
|
*
|
|
155
|
-
* @param
|
|
156
|
-
* @
|
|
157
|
-
* @returns Parsed configuration object
|
|
158
|
-
* @throws {Error} If file not found or validation fails
|
|
275
|
+
* @param profile - Profile name
|
|
276
|
+
* @returns Absolute path to profile directory
|
|
159
277
|
*/
|
|
160
|
-
|
|
278
|
+
private getProfileDir;
|
|
161
279
|
/**
|
|
162
|
-
*
|
|
280
|
+
* Gets the config.json path for a profile
|
|
163
281
|
*
|
|
164
|
-
* @param
|
|
165
|
-
* @
|
|
166
|
-
* @param profileName - Profile name (defaults to "default")
|
|
167
|
-
* @throws {Error} If validation fails or write operation fails
|
|
282
|
+
* @param profile - Profile name
|
|
283
|
+
* @returns Absolute path to config.json
|
|
168
284
|
*/
|
|
169
|
-
|
|
285
|
+
private getProfileConfigPath;
|
|
170
286
|
/**
|
|
171
|
-
*
|
|
287
|
+
* Gets the deployments.json path for a profile
|
|
172
288
|
*
|
|
173
|
-
* @param
|
|
174
|
-
* @returns
|
|
289
|
+
* @param profile - Profile name
|
|
290
|
+
* @returns Absolute path to deployments.json
|
|
175
291
|
*/
|
|
176
|
-
|
|
292
|
+
private getProfileDeploymentsPath;
|
|
177
293
|
/**
|
|
178
|
-
*
|
|
294
|
+
* Builds a helpful error message when a profile is not found
|
|
179
295
|
*
|
|
180
|
-
*
|
|
296
|
+
* Detects legacy v0.6.x configuration files and provides upgrade guidance.
|
|
181
297
|
*
|
|
182
|
-
* @param
|
|
183
|
-
* @
|
|
298
|
+
* @param profile - Profile name that was not found
|
|
299
|
+
* @returns Formatted error message
|
|
184
300
|
*/
|
|
185
|
-
|
|
301
|
+
private buildProfileNotFoundError;
|
|
186
302
|
}
|
|
187
303
|
//# sourceMappingURL=xdg-config.d.ts.map
|