@quiltdata/benchling-webhook 0.6.3-20251104T170954Z → 0.7.1-20251106T100426Z
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 +96 -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} +109 -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 +12 -1
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +117 -107
- 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/{scripts → bin/commands}/infer-quilt-config.d.ts +6 -15
- package/dist/bin/commands/infer-quilt-config.d.ts.map +1 -0
- package/dist/{scripts → bin/commands}/infer-quilt-config.js +37 -63
- 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/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 +218 -0
- package/dist/bin/commands/setup-profile.js.map +1 -0
- package/dist/bin/commands/setup-wizard.d.ts +24 -11
- package/dist/bin/commands/setup-wizard.d.ts.map +1 -1
- package/dist/bin/commands/setup-wizard.js +607 -51
- 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 +44 -31
- package/dist/lib/benchling-webhook-stack.js.map +1 -1
- package/dist/lib/configuration-saver.d.ts +4 -24
- package/dist/lib/configuration-saver.d.ts.map +1 -1
- package/dist/lib/configuration-saver.js +14 -71
- 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 +538 -232
- package/dist/lib/types/config.d.ts.map +1 -1
- package/dist/lib/types/config.js +133 -3
- package/dist/lib/types/config.js.map +1 -1
- package/dist/lib/utils/config-loader.d.ts.map +1 -1
- package/dist/lib/utils/config-loader.js +3 -2
- package/dist/lib/utils/config-loader.js.map +1 -1
- package/dist/lib/utils/config-resolver.d.ts +2 -2
- package/dist/lib/utils/config-resolver.d.ts.map +1 -1
- package/dist/lib/utils/config-resolver.js +14 -7
- package/dist/lib/utils/config-resolver.js.map +1 -1
- package/dist/lib/utils/config.d.ts +1 -1
- package/dist/lib/utils/config.d.ts.map +1 -1
- package/dist/lib/utils/config.js +7 -3
- package/dist/lib/utils/config.js.map +1 -1
- package/dist/lib/utils/sqs.d.ts +13 -0
- package/dist/lib/utils/sqs.d.ts.map +1 -0
- package/dist/lib/utils/sqs.js +22 -0
- package/dist/lib/utils/sqs.js.map +1 -0
- package/dist/lib/utils/stack-inference.d.ts.map +1 -1
- package/dist/lib/utils/stack-inference.js +8 -6
- package/dist/lib/utils/stack-inference.js.map +1 -1
- package/dist/lib/xdg-config.d.ts +224 -106
- package/dist/lib/xdg-config.d.ts.map +1 -1
- package/dist/lib/xdg-config.js +454 -387
- package/dist/lib/xdg-config.js.map +1 -1
- package/dist/package.json +19 -14
- 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/get-dev-version.d.ts +16 -0
- package/dist/scripts/get-dev-version.d.ts.map +1 -0
- package/dist/scripts/get-dev-version.js +57 -0
- package/dist/scripts/get-dev-version.js.map +1 -0
- 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 +19 -14
- 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/lib/xdg-cli-wrapper.d.ts +0 -113
- package/dist/lib/xdg-cli-wrapper.d.ts.map +0 -1
- package/dist/lib/xdg-cli-wrapper.js +0 -289
- package/dist/lib/xdg-cli-wrapper.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/infer-quilt-config.d.ts.map +0 -1
- package/dist/scripts/infer-quilt-config.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":"setup-wizard.js","sourceRoot":"","sources":["../../../bin/commands/setup-wizard.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBH,gDA4CC;AA1DD,kDAA0B;AAC1B,iEAAgE;AAEhE;;;;;;;;;;GAUG;AACI,KAAK,UAAU,kBAAkB;IACpC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAE7D,kCAAkC;IAClC,MAAM,IAAA,iCAAgB,EAAC;QACnB,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,KAAK;KACxB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAEvD,kCAAkC;IAClC,MAAM,QAAQ,GAAG,CAAC,wDAAa,UAAU,GAAC,CAAC,CAAC,OAAO,CAAC;IACpD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QAC3C;YACI,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,sCAAsC;YAC/C,OAAO,EAAE,IAAI;SAChB;KACJ,CAAC,CAAC;IAEH,IAAI,YAAY,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,EAAE,GAAG,wDAAa,UAAU,GAAC,CAAC;QACnD,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC,CAAC;IAC3F,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC,CAAC;AACvG,CAAC"}
|
|
1
|
+
{"version":3,"file":"setup-wizard.js","sourceRoot":"","sources":["../../../bin/commands/setup-wizard.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* AWS Secrets Manager Integration
|
|
4
4
|
*
|
|
5
|
+
* WARNING: This file needs significant refactoring for v0.7.0
|
|
6
|
+
* TODO: Update to use ProfileConfig instead of UserConfig/DerivedConfig
|
|
7
|
+
* TODO: Remove references to BaseConfig
|
|
8
|
+
* TODO: Update to use readProfile/writeProfile instead of readProfileConfig/writeProfileConfig
|
|
9
|
+
*
|
|
5
10
|
* Synchronizes configuration to AWS Secrets Manager with:
|
|
6
11
|
* - Consistent secret naming conventions
|
|
7
12
|
* - AWS profile selection support
|
|
@@ -10,7 +15,7 @@
|
|
|
10
15
|
*
|
|
11
16
|
* @module scripts/sync-secrets
|
|
12
17
|
*/
|
|
13
|
-
import { ProfileName } from "
|
|
18
|
+
import { ProfileName } from "../../lib/types/config";
|
|
14
19
|
/**
|
|
15
20
|
* Secrets sync options
|
|
16
21
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-secrets.d.ts","sourceRoot":"","sources":["../../../bin/commands/sync-secrets.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;GAeG;AAYH,OAAO,EAAiB,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGpE;;GAEG;AACH,UAAU,kBAAkB;IACxB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD;;GAEG;AACH,UAAU,UAAU;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;CACnB;AAgQD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CA4G9F;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC7C,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAmBlC;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACjD,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,OAAO,CAAC,CAQnB"}
|
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
/**
|
|
4
4
|
* AWS Secrets Manager Integration
|
|
5
5
|
*
|
|
6
|
+
* WARNING: This file needs significant refactoring for v0.7.0
|
|
7
|
+
* TODO: Update to use ProfileConfig instead of UserConfig/DerivedConfig
|
|
8
|
+
* TODO: Remove references to BaseConfig
|
|
9
|
+
* TODO: Update to use readProfile/writeProfile instead of readProfileConfig/writeProfileConfig
|
|
10
|
+
*
|
|
6
11
|
* Synchronizes configuration to AWS Secrets Manager with:
|
|
7
12
|
* - Consistent secret naming conventions
|
|
8
13
|
* - AWS profile selection support
|
|
@@ -49,8 +54,8 @@ exports.syncSecretsToAWS = syncSecretsToAWS;
|
|
|
49
54
|
exports.getSecretsFromAWS = getSecretsFromAWS;
|
|
50
55
|
exports.validateSecretsAccess = validateSecretsAccess;
|
|
51
56
|
const client_secrets_manager_1 = require("@aws-sdk/client-secrets-manager");
|
|
52
|
-
const xdg_config_1 = require("
|
|
53
|
-
const secrets_1 = require("
|
|
57
|
+
const xdg_config_1 = require("../../lib/xdg-config");
|
|
58
|
+
const secrets_1 = require("../../lib/utils/secrets");
|
|
54
59
|
/**
|
|
55
60
|
* Creates or retrieves Secrets Manager client
|
|
56
61
|
*
|
|
@@ -100,7 +105,7 @@ async function createSecret(client, secretConfig) {
|
|
|
100
105
|
Description: secretConfig.description,
|
|
101
106
|
Tags: [
|
|
102
107
|
{ Key: "ManagedBy", Value: "benchling-webhook" },
|
|
103
|
-
{ Key: "Version", Value: "0.
|
|
108
|
+
{ Key: "Version", Value: "0.7.0" },
|
|
104
109
|
],
|
|
105
110
|
});
|
|
106
111
|
const response = await client.send(command);
|
|
@@ -135,28 +140,139 @@ async function getSecret(client, secretName) {
|
|
|
135
140
|
return response.SecretString || "";
|
|
136
141
|
}
|
|
137
142
|
/**
|
|
138
|
-
*
|
|
143
|
+
* Determine if a stored value is actually referencing a secret identifier rather than the secret value.
|
|
144
|
+
*
|
|
145
|
+
* @param value - The candidate value from configuration
|
|
146
|
+
* @param secretName - The generated secret name for the profile
|
|
147
|
+
* @param secretArn - Optional ARN recorded in configuration
|
|
148
|
+
* @returns True if value matches known identifiers, false otherwise
|
|
149
|
+
*/
|
|
150
|
+
function isSecretPlaceholder(value, secretName, secretArn) {
|
|
151
|
+
if (!value) {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
const trimmed = value.trim();
|
|
155
|
+
if (trimmed.length === 0) {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
if (trimmed === secretName) {
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
if (secretArn && trimmed === secretArn) {
|
|
162
|
+
return true;
|
|
163
|
+
}
|
|
164
|
+
return false;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Parse secret payload JSON and ensure it is an object.
|
|
168
|
+
*
|
|
169
|
+
* @param secretString - Raw secret JSON string
|
|
170
|
+
* @param identifier - Secret identifier (for error messages)
|
|
171
|
+
* @returns Parsed payload as record
|
|
172
|
+
* @throws Error if JSON is invalid or not an object
|
|
173
|
+
*/
|
|
174
|
+
function parseSecretPayload(secretString, identifier) {
|
|
175
|
+
try {
|
|
176
|
+
const parsed = JSON.parse(secretString);
|
|
177
|
+
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
|
|
178
|
+
throw new Error(`Secret ${identifier} must be a JSON object`);
|
|
179
|
+
}
|
|
180
|
+
return parsed;
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
183
|
+
throw new Error(`Secret ${identifier} contains invalid JSON: ${error.message}`);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Extract client secret from secret payload supporting both snake_case and camelCase.
|
|
188
|
+
*
|
|
189
|
+
* @param payload - Parsed secret payload
|
|
190
|
+
* @returns Client secret value if present
|
|
191
|
+
*/
|
|
192
|
+
function extractClientSecret(payload) {
|
|
193
|
+
const candidates = ["client_secret", "clientSecret"];
|
|
194
|
+
for (const key of candidates) {
|
|
195
|
+
const value = payload[key];
|
|
196
|
+
if (typeof value === "string" && value.trim().length > 0) {
|
|
197
|
+
return value.trim();
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
return undefined;
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Resolve the Benchling client secret value to upload.
|
|
204
|
+
*
|
|
205
|
+
* This ensures we never upload the secret name/ARN itself by attempting to read the
|
|
206
|
+
* existing secret when configuration contains only identifiers.
|
|
207
|
+
*
|
|
208
|
+
* @param client - Secrets Manager client
|
|
209
|
+
* @param config - Profile configuration
|
|
210
|
+
* @param secretName - Generated secret name for the profile
|
|
211
|
+
* @returns Resolved client secret value
|
|
212
|
+
* @throws Error if the client secret cannot be resolved
|
|
213
|
+
*/
|
|
214
|
+
async function resolveClientSecretValue(client, config, secretName) {
|
|
215
|
+
const directValue = config.benchling.clientSecret?.trim();
|
|
216
|
+
if (directValue && !isSecretPlaceholder(directValue, secretName, config.benchling.secretArn)) {
|
|
217
|
+
return directValue;
|
|
218
|
+
}
|
|
219
|
+
const identifiers = [];
|
|
220
|
+
if (config.benchling.secretArn) {
|
|
221
|
+
identifiers.push(config.benchling.secretArn);
|
|
222
|
+
}
|
|
223
|
+
identifiers.push(secretName);
|
|
224
|
+
let lastError;
|
|
225
|
+
for (const identifier of identifiers) {
|
|
226
|
+
if (!identifier) {
|
|
227
|
+
continue;
|
|
228
|
+
}
|
|
229
|
+
try {
|
|
230
|
+
const secretString = await getSecret(client, identifier);
|
|
231
|
+
const payload = parseSecretPayload(secretString, identifier);
|
|
232
|
+
const resolved = extractClientSecret(payload);
|
|
233
|
+
if (resolved) {
|
|
234
|
+
return resolved;
|
|
235
|
+
}
|
|
236
|
+
lastError = new Error(`Secret ${identifier} does not contain a client_secret field`);
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
if (error instanceof client_secrets_manager_1.ResourceNotFoundException) {
|
|
240
|
+
// Try next identifier
|
|
241
|
+
continue;
|
|
242
|
+
}
|
|
243
|
+
lastError = error instanceof Error ? error : new Error(String(error));
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
if (lastError) {
|
|
247
|
+
throw lastError;
|
|
248
|
+
}
|
|
249
|
+
throw new Error("Benchling OAuth client secret is required but could not be resolved from the profile or existing Secrets Manager entries. " +
|
|
250
|
+
"Provide benchling.clientSecret in your profile configuration or ensure the existing secret contains a client_secret value.");
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Builds secret value JSON from profile configuration
|
|
139
254
|
*
|
|
140
|
-
* @param config -
|
|
255
|
+
* @param config - Profile configuration
|
|
256
|
+
* @param clientSecret - Resolved client secret value
|
|
141
257
|
* @returns Secret value as JSON string
|
|
142
258
|
*/
|
|
143
|
-
function buildSecretValue(config) {
|
|
259
|
+
function buildSecretValue(config, clientSecret) {
|
|
144
260
|
// Use snake_case field names to match Python config_resolver expectations
|
|
145
261
|
const secretData = {
|
|
146
|
-
tenant: config.
|
|
147
|
-
client_id: config.
|
|
148
|
-
client_secret:
|
|
149
|
-
app_definition_id: config.
|
|
150
|
-
user_bucket: config.
|
|
151
|
-
pkg_prefix: config.
|
|
152
|
-
pkg_key: config.
|
|
153
|
-
log_level: config.
|
|
154
|
-
webhook_allow_list: config.webhookAllowList || "",
|
|
155
|
-
enable_webhook_verification: config.
|
|
262
|
+
tenant: config.benchling.tenant,
|
|
263
|
+
client_id: config.benchling.clientId,
|
|
264
|
+
client_secret: clientSecret,
|
|
265
|
+
app_definition_id: config.benchling.appDefinitionId,
|
|
266
|
+
user_bucket: config.packages.bucket,
|
|
267
|
+
pkg_prefix: config.packages.prefix,
|
|
268
|
+
pkg_key: config.packages.metadataKey,
|
|
269
|
+
log_level: config.logging?.level || "INFO",
|
|
270
|
+
webhook_allow_list: config.security?.webhookAllowList || "",
|
|
271
|
+
enable_webhook_verification: config.security?.enableVerification !== false ? "true" : "false",
|
|
156
272
|
};
|
|
157
273
|
// Add optional fields
|
|
158
|
-
if (config.
|
|
159
|
-
Object.assign(secretData, {
|
|
274
|
+
if (config.quilt.queueUrl) {
|
|
275
|
+
Object.assign(secretData, { queue_url: config.quilt.queueUrl });
|
|
160
276
|
}
|
|
161
277
|
return JSON.stringify(secretData, null, 2);
|
|
162
278
|
}
|
|
@@ -172,28 +288,35 @@ async function syncSecretsToAWS(options = {}) {
|
|
|
172
288
|
// Step 1: Load configuration
|
|
173
289
|
console.log(`Loading configuration from profile: ${profile}...`);
|
|
174
290
|
const xdgConfig = new xdg_config_1.XDGConfig();
|
|
175
|
-
let
|
|
291
|
+
let config;
|
|
176
292
|
try {
|
|
177
|
-
|
|
293
|
+
config = xdgConfig.readProfile(profile);
|
|
178
294
|
}
|
|
179
295
|
catch (error) {
|
|
180
296
|
throw new Error(`Failed to load configuration: ${error.message}`);
|
|
181
297
|
}
|
|
182
298
|
// Validate required fields
|
|
183
|
-
if (!
|
|
299
|
+
if (!config.benchling.tenant) {
|
|
184
300
|
throw new Error("Benchling tenant is required");
|
|
185
301
|
}
|
|
186
|
-
if (!
|
|
187
|
-
throw new Error("Benchling OAuth
|
|
302
|
+
if (!config.benchling.clientId) {
|
|
303
|
+
throw new Error("Benchling OAuth client ID is required");
|
|
188
304
|
}
|
|
189
305
|
// Step 2: Initialize Secrets Manager client
|
|
190
306
|
console.log(`Initializing Secrets Manager client (region: ${region})...`);
|
|
191
307
|
const client = await getSecretsManagerClient(region, awsProfile);
|
|
192
308
|
// Step 3: Generate secret name
|
|
193
|
-
const secretName = (0, secrets_1.generateSecretName)(profile,
|
|
309
|
+
const secretName = (0, secrets_1.generateSecretName)(profile, config.benchling.tenant);
|
|
194
310
|
console.log(`Secret name: ${secretName}`);
|
|
195
311
|
// Step 4: Build secret value
|
|
196
|
-
|
|
312
|
+
let clientSecretValue;
|
|
313
|
+
try {
|
|
314
|
+
clientSecretValue = await resolveClientSecretValue(client, config, secretName);
|
|
315
|
+
}
|
|
316
|
+
catch (error) {
|
|
317
|
+
throw new Error(`Failed to resolve Benchling client secret: ${error.message}`);
|
|
318
|
+
}
|
|
319
|
+
const secretValue = buildSecretValue(config, clientSecretValue);
|
|
197
320
|
if (dryRun) {
|
|
198
321
|
console.log("\n=== DRY RUN MODE ===");
|
|
199
322
|
console.log(`Would sync secret: ${secretName}`);
|
|
@@ -210,7 +333,7 @@ async function syncSecretsToAWS(options = {}) {
|
|
|
210
333
|
secretArn = await updateSecret(client, {
|
|
211
334
|
name: secretName,
|
|
212
335
|
value: secretValue,
|
|
213
|
-
description: `Benchling Webhook configuration for ${
|
|
336
|
+
description: `Benchling Webhook configuration for ${config.benchling.tenant} (profile: ${profile})`,
|
|
214
337
|
});
|
|
215
338
|
action = "updated";
|
|
216
339
|
console.log(`✓ Secret updated: ${secretArn}`);
|
|
@@ -230,7 +353,7 @@ async function syncSecretsToAWS(options = {}) {
|
|
|
230
353
|
secretArn = await createSecret(client, {
|
|
231
354
|
name: secretName,
|
|
232
355
|
value: secretValue,
|
|
233
|
-
description: `Benchling Webhook configuration for ${
|
|
356
|
+
description: `Benchling Webhook configuration for ${config.benchling.tenant} (profile: ${profile})`,
|
|
234
357
|
});
|
|
235
358
|
action = "created";
|
|
236
359
|
console.log(`✓ Secret created: ${secretArn}`);
|
|
@@ -243,31 +366,12 @@ async function syncSecretsToAWS(options = {}) {
|
|
|
243
366
|
});
|
|
244
367
|
// Step 6: Update XDG configuration with secret ARN
|
|
245
368
|
console.log("Updating XDG configuration with secret ARN...");
|
|
246
|
-
//
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
// Create new derived config if it doesn't exist
|
|
253
|
-
derivedConfig = {
|
|
254
|
-
_metadata: {
|
|
255
|
-
source: "sync-secrets",
|
|
256
|
-
savedAt: new Date().toISOString(),
|
|
257
|
-
version: "0.6.0",
|
|
258
|
-
},
|
|
259
|
-
};
|
|
260
|
-
}
|
|
261
|
-
// Update secret ARN
|
|
262
|
-
derivedConfig.benchlingSecretArn = secretArn;
|
|
263
|
-
// Update metadata
|
|
264
|
-
derivedConfig._metadata = {
|
|
265
|
-
...derivedConfig._metadata,
|
|
266
|
-
savedAt: new Date().toISOString(),
|
|
267
|
-
source: "sync-secrets",
|
|
268
|
-
};
|
|
269
|
-
// Write updated derived config
|
|
270
|
-
xdgConfig.writeProfileConfig("derived", derivedConfig, profile);
|
|
369
|
+
// Update config with secret ARN
|
|
370
|
+
config.benchling.secretArn = secretArn;
|
|
371
|
+
config._metadata.updatedAt = new Date().toISOString();
|
|
372
|
+
config._metadata.source = "cli";
|
|
373
|
+
// Write updated config
|
|
374
|
+
xdgConfig.writeProfile(profile, config);
|
|
271
375
|
console.log("✓ XDG configuration updated with secret ARN");
|
|
272
376
|
return results;
|
|
273
377
|
}
|
|
@@ -281,14 +385,14 @@ async function getSecretsFromAWS(options) {
|
|
|
281
385
|
const { profile = "default", awsProfile, region = "us-east-1" } = options;
|
|
282
386
|
// Load configuration
|
|
283
387
|
const xdgConfig = new xdg_config_1.XDGConfig();
|
|
284
|
-
const
|
|
285
|
-
if (!
|
|
388
|
+
const config = xdgConfig.readProfile(profile);
|
|
389
|
+
if (!config.benchling.secretArn) {
|
|
286
390
|
throw new Error("No secret ARN found in configuration. Run sync-secrets first.");
|
|
287
391
|
}
|
|
288
392
|
// Initialize Secrets Manager client
|
|
289
393
|
const client = await getSecretsManagerClient(region, awsProfile);
|
|
290
394
|
// Retrieve secret
|
|
291
|
-
const secretValue = await getSecret(client,
|
|
395
|
+
const secretValue = await getSecret(client, config.benchling.secretArn);
|
|
292
396
|
// Parse and return
|
|
293
397
|
return JSON.parse(secretValue);
|
|
294
398
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-secrets.js","sourceRoot":"","sources":["../../../bin/commands/sync-secrets.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../bin/commands/validate.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../bin/commands/validate.ts"],"names":[],"mappings":"AAIA,OAAO,EAIH,KAAK,aAAa,EACrB,MAAM,wBAAwB,CAAC;AAKhC,wBAAsB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoInG"}
|
|
@@ -21,18 +21,8 @@ async function validateCommand(options) {
|
|
|
21
21
|
const spinner = (0, ora_1.default)("Loading configuration...").start();
|
|
22
22
|
let config = (0, config_1.loadConfigSync)(options);
|
|
23
23
|
spinner.succeed(`Configuration loaded from: ${options.envFile || ".env"}`);
|
|
24
|
-
// 2.
|
|
25
|
-
|
|
26
|
-
spinner.start("Inferring additional configuration from catalog...");
|
|
27
|
-
const inferenceResult = await (0, benchling_webhook_1.inferConfiguration)(config.quiltCatalog);
|
|
28
|
-
if (inferenceResult.success) {
|
|
29
|
-
config = (0, config_1.mergeInferredConfig)(config, inferenceResult.inferredVars);
|
|
30
|
-
spinner.succeed("Configuration inferred from catalog");
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
spinner.warn(`Could not infer configuration: ${inferenceResult.error}`);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
24
|
+
// 2. Inference is deprecated in secrets-only mode (v0.6.0+)
|
|
25
|
+
// Configuration is now stored in AWS Secrets Manager and CloudFormation parameters
|
|
36
26
|
// 3. Validate
|
|
37
27
|
spinner.start("Validating configuration...");
|
|
38
28
|
const validation = (0, config_1.validateConfig)(config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../bin/commands/validate.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../bin/commands/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,15 @@ import * as apigateway from "aws-cdk-lib/aws-apigateway";
|
|
|
2
2
|
import * as logs from "aws-cdk-lib/aws-logs";
|
|
3
3
|
import * as elbv2 from "aws-cdk-lib/aws-elasticloadbalancingv2";
|
|
4
4
|
import { Construct } from "constructs";
|
|
5
|
+
import { ProfileConfig } from "./types/config";
|
|
6
|
+
/**
|
|
7
|
+
* Properties for AlbApiGateway construct (v0.7.0+)
|
|
8
|
+
*
|
|
9
|
+
* Uses ProfileConfig to access security settings like webhook allow list.
|
|
10
|
+
*/
|
|
5
11
|
export interface AlbApiGatewayProps {
|
|
6
12
|
readonly loadBalancer: elbv2.ApplicationLoadBalancer;
|
|
7
|
-
readonly
|
|
13
|
+
readonly config: ProfileConfig;
|
|
8
14
|
}
|
|
9
15
|
export declare class AlbApiGateway {
|
|
10
16
|
readonly api: apigateway.RestApi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alb-api-gateway.d.ts","sourceRoot":"","sources":["../../lib/alb-api-gateway.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"alb-api-gateway.d.ts","sourceRoot":"","sources":["../../lib/alb-api-gateway.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,uBAAuB,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAClC;AAED,qBAAa,aAAa;IACtB,SAAgB,GAAG,EAAE,UAAU,CAAC,OAAO,CAAC;IACxC,SAAgB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;gBAGrC,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,kBAAkB;IA0E7B,OAAO,CAAC,oBAAoB;IAwC5B,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,mBAAmB;CAqE9B"}
|
|
@@ -40,23 +40,26 @@ const iam = __importStar(require("aws-cdk-lib/aws-iam"));
|
|
|
40
40
|
const logs = __importStar(require("aws-cdk-lib/aws-logs"));
|
|
41
41
|
class AlbApiGateway {
|
|
42
42
|
constructor(scope, id, props) {
|
|
43
|
+
const { config } = props;
|
|
43
44
|
this.logGroup = new logs.LogGroup(scope, "ApiGatewayAccessLogs", {
|
|
44
45
|
logGroupName: "/aws/apigateway/benchling-webhook",
|
|
45
46
|
retention: logs.RetentionDays.ONE_WEEK,
|
|
46
47
|
removalPolicy: cdk.RemovalPolicy.DESTROY,
|
|
47
48
|
});
|
|
48
49
|
this.createCloudWatchRole(scope);
|
|
50
|
+
// Get webhook allow list from config
|
|
51
|
+
const webhookAllowList = config.security?.webhookAllowList || "";
|
|
49
52
|
// Parse IP allowlist for resource policy
|
|
50
53
|
let allowedIps = undefined;
|
|
51
|
-
if (
|
|
52
|
-
if (cdk.Token.isUnresolved(
|
|
54
|
+
if (webhookAllowList) {
|
|
55
|
+
if (cdk.Token.isUnresolved(webhookAllowList)) {
|
|
53
56
|
// For CDK tokens (parameters), we can't evaluate at synth time
|
|
54
57
|
// Split and let CloudFormation handle it
|
|
55
|
-
allowedIps = cdk.Fn.split(",",
|
|
58
|
+
allowedIps = cdk.Fn.split(",", webhookAllowList);
|
|
56
59
|
}
|
|
57
|
-
else if (
|
|
60
|
+
else if (webhookAllowList.trim() !== "") {
|
|
58
61
|
// For concrete values, parse and filter
|
|
59
|
-
const parsed =
|
|
62
|
+
const parsed = webhookAllowList
|
|
60
63
|
.split(",")
|
|
61
64
|
.map(ip => ip.trim())
|
|
62
65
|
.filter(ip => ip.length > 0);
|
|
@@ -67,7 +70,7 @@ class AlbApiGateway {
|
|
|
67
70
|
}
|
|
68
71
|
// Create resource policy for IP filtering at the edge
|
|
69
72
|
// Only create policy if we have IPs and they're not from an empty parameter
|
|
70
|
-
const policyDocument = this.createResourcePolicy(allowedIps,
|
|
73
|
+
const policyDocument = this.createResourcePolicy(allowedIps, webhookAllowList);
|
|
71
74
|
this.api = new apigateway.RestApi(scope, "BenchlingWebhookAPI", {
|
|
72
75
|
restApiName: "BenchlingWebhookAPI",
|
|
73
76
|
policy: policyDocument,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alb-api-gateway.js","sourceRoot":"","sources":["../../lib/alb-api-gateway.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AACnC,uEAAyD;AACzD,yDAA2C;AAC3C,2DAA6C;
|
|
1
|
+
{"version":3,"file":"alb-api-gateway.js","sourceRoot":"","sources":["../../lib/alb-api-gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import * as cdk from "aws-cdk-lib";
|
|
2
2
|
import { Construct } from "constructs";
|
|
3
|
+
import { ProfileConfig } from "./types/config";
|
|
4
|
+
/**
|
|
5
|
+
* Stack properties for BenchlingWebhookStack (v0.7.0+)
|
|
6
|
+
*
|
|
7
|
+
* Configuration is provided via ProfileConfig interface, which contains
|
|
8
|
+
* all necessary settings for deployment in a structured format.
|
|
9
|
+
*/
|
|
3
10
|
export interface BenchlingWebhookStackProps extends cdk.StackProps {
|
|
4
11
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Format: arn:aws:cloudformation:{region}:{account}:stack/{name}/{id}
|
|
8
|
-
* REQUIRED.
|
|
12
|
+
* Profile configuration containing all deployment settings
|
|
13
|
+
* This replaces the previous secrets-only mode parameters.
|
|
9
14
|
*/
|
|
10
|
-
readonly
|
|
15
|
+
readonly config: ProfileConfig;
|
|
11
16
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
17
|
+
* Whether to create a new ECR repository
|
|
18
|
+
* If false, uses existing repository specified in config.deployment.ecrRepository
|
|
19
|
+
* @default false
|
|
15
20
|
*/
|
|
16
|
-
readonly benchlingSecret: string;
|
|
17
21
|
readonly createEcrRepository?: boolean;
|
|
18
|
-
readonly ecrRepositoryName?: string;
|
|
19
|
-
readonly logLevel?: string;
|
|
20
|
-
readonly imageTag?: string;
|
|
21
22
|
}
|
|
22
23
|
export declare class BenchlingWebhookStack extends cdk.Stack {
|
|
23
24
|
private readonly bucket;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchling-webhook-stack.d.ts","sourceRoot":"","sources":["../../lib/benchling-webhook-stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAInC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"benchling-webhook-stack.d.ts","sourceRoot":"","sources":["../../lib/benchling-webhook-stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAInC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAIvC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C;;;;;GAKG;AACH,MAAM,WAAW,0BAA2B,SAAQ,GAAG,CAAC,UAAU;IAC9D;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAE/B;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC1C;AAED,qBAAa,qBAAsB,SAAQ,GAAG,CAAC,KAAK;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,SAAgB,eAAe,EAAE,MAAM,CAAC;gBAGpC,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,0BAA0B;CA4JxC"}
|