@quiltdata/benchling-webhook 0.5.4 → 0.6.1-20251104T043302Z
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 +295 -12
- package/dist/bin/benchling-webhook.d.ts +1 -1
- package/dist/bin/benchling-webhook.d.ts.map +1 -1
- package/dist/bin/benchling-webhook.js +12 -22
- package/dist/bin/benchling-webhook.js.map +1 -1
- package/dist/bin/cdk-dev.js +59 -3
- package/dist/bin/cli.js +27 -9
- package/dist/bin/cli.js.map +1 -1
- package/dist/bin/commands/deploy.d.ts +6 -2
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +151 -90
- package/dist/bin/commands/deploy.js.map +1 -1
- package/dist/bin/commands/setup-wizard.d.ts +22 -0
- package/dist/bin/commands/setup-wizard.d.ts.map +1 -0
- package/dist/bin/commands/setup-wizard.js +47 -0
- package/dist/bin/commands/setup-wizard.js.map +1 -0
- package/dist/bin/config-profiles.d.ts +59 -0
- package/dist/bin/config-profiles.d.ts.map +1 -0
- package/dist/bin/config-profiles.js +272 -0
- package/dist/bin/config-profiles.js.map +1 -0
- package/dist/bin/create-secret.d.ts +25 -0
- package/dist/bin/create-secret.d.ts.map +1 -0
- package/dist/bin/create-secret.js +239 -0
- package/dist/bin/create-secret.js.map +1 -0
- package/dist/lib/benchling-auth-validator.d.ts +65 -0
- package/dist/lib/benchling-auth-validator.d.ts.map +1 -0
- package/dist/lib/benchling-auth-validator.js +213 -0
- package/dist/lib/benchling-auth-validator.js.map +1 -0
- package/dist/lib/benchling-webhook-stack.d.ts +13 -10
- package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
- package/dist/lib/benchling-webhook-stack.js +25 -69
- package/dist/lib/benchling-webhook-stack.js.map +1 -1
- package/dist/lib/config-logger.d.ts +191 -0
- package/dist/lib/config-logger.d.ts.map +1 -0
- package/dist/lib/config-logger.js +372 -0
- package/dist/lib/config-logger.js.map +1 -0
- package/dist/lib/configuration-saver.d.ts +75 -0
- package/dist/lib/configuration-saver.d.ts.map +1 -0
- package/dist/lib/configuration-saver.js +145 -0
- package/dist/lib/configuration-saver.js.map +1 -0
- package/dist/lib/configuration-validator.d.ts +63 -0
- package/dist/lib/configuration-validator.d.ts.map +1 -0
- package/dist/lib/configuration-validator.js +136 -0
- package/dist/lib/configuration-validator.js.map +1 -0
- package/dist/lib/configuration-wizard.d.ts +52 -0
- package/dist/lib/configuration-wizard.d.ts.map +1 -0
- package/dist/lib/configuration-wizard.js +193 -0
- package/dist/lib/configuration-wizard.js.map +1 -0
- package/dist/lib/fargate-service.d.ts +18 -9
- package/dist/lib/fargate-service.d.ts.map +1 -1
- package/dist/lib/fargate-service.js +177 -61
- package/dist/lib/fargate-service.js.map +1 -1
- package/dist/lib/quilt-config-resolver.d.ts +53 -0
- package/dist/lib/quilt-config-resolver.d.ts.map +1 -0
- package/dist/lib/quilt-config-resolver.js +100 -0
- package/dist/lib/quilt-config-resolver.js.map +1 -0
- package/dist/lib/s3-bucket-validator.d.ts +76 -0
- package/dist/lib/s3-bucket-validator.d.ts.map +1 -0
- package/dist/lib/s3-bucket-validator.js +237 -0
- package/dist/lib/s3-bucket-validator.js.map +1 -0
- package/dist/lib/types/config.d.ts +398 -0
- package/dist/lib/types/config.d.ts.map +1 -0
- package/dist/lib/types/config.js +11 -0
- package/dist/lib/types/config.js.map +1 -0
- package/dist/lib/utils/config-loader.d.ts +48 -0
- package/dist/lib/utils/config-loader.d.ts.map +1 -0
- package/dist/lib/utils/config-loader.js +109 -0
- package/dist/lib/utils/config-loader.js.map +1 -0
- package/dist/lib/utils/config-resolver.d.ts +138 -0
- package/dist/lib/utils/config-resolver.d.ts.map +1 -0
- package/dist/lib/utils/config-resolver.js +272 -0
- package/dist/lib/utils/config-resolver.js.map +1 -0
- package/dist/lib/utils/config.d.ts +50 -0
- package/dist/lib/utils/config.d.ts.map +1 -1
- package/dist/lib/utils/config.js +86 -0
- package/dist/lib/utils/config.js.map +1 -1
- package/dist/lib/utils/secrets.d.ts +174 -0
- package/dist/lib/utils/secrets.d.ts.map +1 -0
- package/dist/lib/utils/secrets.js +351 -0
- package/dist/lib/utils/secrets.js.map +1 -0
- package/dist/lib/xdg-cli-wrapper.d.ts +113 -0
- package/dist/lib/xdg-cli-wrapper.d.ts.map +1 -0
- package/dist/lib/xdg-cli-wrapper.js +288 -0
- package/dist/lib/xdg-cli-wrapper.js.map +1 -0
- package/dist/lib/xdg-config.d.ts +187 -0
- package/dist/lib/xdg-config.d.ts.map +1 -0
- package/dist/lib/xdg-config.js +562 -0
- package/dist/lib/xdg-config.js.map +1 -0
- package/dist/package.json +34 -26
- package/dist/scripts/config-health-check.d.ts +78 -0
- package/dist/scripts/config-health-check.d.ts.map +1 -0
- package/dist/scripts/config-health-check.js +559 -0
- package/dist/scripts/config-health-check.js.map +1 -0
- package/dist/scripts/infer-quilt-config.d.ts +50 -0
- package/dist/scripts/infer-quilt-config.d.ts.map +1 -0
- package/dist/scripts/infer-quilt-config.js +353 -0
- package/dist/scripts/infer-quilt-config.js.map +1 -0
- package/dist/scripts/install-wizard.d.ts +34 -0
- package/dist/scripts/install-wizard.d.ts.map +1 -0
- package/dist/scripts/install-wizard.js +719 -0
- package/dist/scripts/install-wizard.js.map +1 -0
- package/dist/scripts/sync-secrets.d.ts +63 -0
- package/dist/scripts/sync-secrets.d.ts.map +1 -0
- package/dist/scripts/sync-secrets.js +424 -0
- package/dist/scripts/sync-secrets.js.map +1 -0
- package/env.template +60 -47
- package/package.json +34 -26
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quiltdata/benchling-webhook",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1-20251104T043302Z",
|
|
4
4
|
"description": "AWS CDK deployment for Benchling webhook processing using Fargate - Deploy directly with npx",
|
|
5
5
|
"main": "dist/lib/index.js",
|
|
6
6
|
"types": "dist/lib/index.d.ts",
|
|
@@ -14,32 +14,29 @@
|
|
|
14
14
|
"benchling-webhook": "./dist/bin/cli.js"
|
|
15
15
|
},
|
|
16
16
|
"scripts": {
|
|
17
|
-
"clean": "rm -rf cdk.out */{*.js,*.d.ts}",
|
|
18
|
-
"test": "npm run typecheck && npm run test:ts && npm run test:python",
|
|
19
|
-
"test-ci": "npm run typecheck && npm run test:ts",
|
|
20
|
-
"typecheck": "tsc --noEmit",
|
|
21
|
-
"test:ts": "NODE_ENV=test TMPDIR=./.tmp node --max-old-space-size=4096 ./node_modules/.bin/jest",
|
|
22
|
-
"test:python": "make -C docker test-unit",
|
|
23
|
-
"cdk": "npm run test && npm run cli -- --yes",
|
|
24
|
-
"cdk:dev": "node bin/cdk-dev.js",
|
|
25
|
-
"lint": "eslint . --ext .ts --fix",
|
|
26
17
|
"build": "tsc",
|
|
27
|
-
"
|
|
18
|
+
"build:clean": "rm -rf cdk.out dist */{*.js,*.d.ts}",
|
|
19
|
+
"build:synth": "npx cdk synth",
|
|
20
|
+
"build:typecheck": "tsc --noEmit",
|
|
21
|
+
"deploy:dev": "npm run test && node bin/cdk-dev.js",
|
|
22
|
+
"deploy:prod": "node dist/bin/cli.js deploy",
|
|
23
|
+
"lint": "eslint . --ext .ts --fix && make -C docker lint",
|
|
28
24
|
"postbuild": "chmod +x dist/bin/cli.js && cp bin/*.js dist/bin/ 2>/dev/null || true",
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
25
|
+
"prebuild": "rm -rf dist",
|
|
26
|
+
"prepublishOnly": "npm run build",
|
|
27
|
+
"release": "npm run test && node bin/release.js && make -C docker push-ci",
|
|
28
|
+
"release:tag": "node bin/version.js && git push --tags",
|
|
29
|
+
"setup": "ts-node scripts/install-wizard.ts",
|
|
30
|
+
"setup:health": "ts-node scripts/config-health-check.ts",
|
|
31
|
+
"setup:infer": "ts-node scripts/infer-quilt-config.ts",
|
|
32
|
+
"setup:sync-secrets": "ts-node scripts/sync-secrets.ts",
|
|
33
|
+
"test": "npm run build:typecheck && npm run test:ts && npm run test:python",
|
|
34
|
+
"test:ci": "npm run build:typecheck && npm run test:ts",
|
|
35
|
+
"test:local": "make -C docker build && make -C docker test-local",
|
|
36
|
+
"test:python": "make -C docker test-unit",
|
|
37
|
+
"test:remote": "npm run deploy:dev && make -C docker test-deployed-dev",
|
|
38
|
+
"test:ts": "cross-env NODE_ENV=test jest --maxWorkers=50%",
|
|
39
|
+
"version": "node bin/version.js"
|
|
43
40
|
},
|
|
44
41
|
"keywords": [
|
|
45
42
|
"benchling",
|
|
@@ -67,8 +64,10 @@
|
|
|
67
64
|
"@typescript-eslint/eslint-plugin": "^8.26.1",
|
|
68
65
|
"@typescript-eslint/parser": "^8.26.1",
|
|
69
66
|
"aws-cdk": "2.1031.1",
|
|
67
|
+
"aws-sdk-client-mock": "^4.1.0",
|
|
68
|
+
"cross-env": "^10.1.0",
|
|
70
69
|
"dotenv": "^17.2.3",
|
|
71
|
-
"esbuild": "0.25.
|
|
70
|
+
"esbuild": "0.25.12",
|
|
72
71
|
"eslint": "^9.22.0",
|
|
73
72
|
"globals": "^16.0.0",
|
|
74
73
|
"jest": "^30.0.0",
|
|
@@ -79,7 +78,13 @@
|
|
|
79
78
|
"dependencies": {
|
|
80
79
|
"@aws-sdk/client-cloudformation": "^3.920.0",
|
|
81
80
|
"@aws-sdk/client-s3": "^3.758.0",
|
|
81
|
+
"@aws-sdk/client-secrets-manager": "^3.922.0",
|
|
82
|
+
"@aws-sdk/client-sts": "^3.922.0",
|
|
83
|
+
"@aws-sdk/credential-providers": "^3.922.0",
|
|
84
|
+
"@types/inquirer": "^9.0.9",
|
|
85
|
+
"@types/lodash.merge": "^4.6.9",
|
|
82
86
|
"adm-zip": "^0.5.10",
|
|
87
|
+
"ajv": "^8.17.1",
|
|
83
88
|
"aws-cdk-lib": "2.221.1",
|
|
84
89
|
"aws-sdk": "^2.1574.0",
|
|
85
90
|
"boxen": "^8.0.0",
|
|
@@ -88,6 +93,9 @@
|
|
|
88
93
|
"constructs": "^10.0.0",
|
|
89
94
|
"dotenv-expand": "^12.0.3",
|
|
90
95
|
"enquirer": "^2.4.1",
|
|
96
|
+
"execa": "^9.0.0",
|
|
97
|
+
"inquirer": "^12.10.0",
|
|
98
|
+
"lodash.merge": "^4.6.2",
|
|
91
99
|
"ora": "^9.0.0"
|
|
92
100
|
},
|
|
93
101
|
"engines": {
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Configuration Health Checks
|
|
4
|
+
*
|
|
5
|
+
* Validates:
|
|
6
|
+
* - XDG configuration integrity
|
|
7
|
+
* - Secrets accessibility
|
|
8
|
+
* - Benchling credential freshness
|
|
9
|
+
* - AWS resource connectivity
|
|
10
|
+
*
|
|
11
|
+
* @module scripts/config-health-check
|
|
12
|
+
*/
|
|
13
|
+
import { ProfileName } from "../lib/types/config";
|
|
14
|
+
/**
|
|
15
|
+
* Health check result
|
|
16
|
+
*/
|
|
17
|
+
interface HealthCheckResult {
|
|
18
|
+
check: string;
|
|
19
|
+
status: "pass" | "fail" | "warn";
|
|
20
|
+
message: string;
|
|
21
|
+
details?: Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Overall health status
|
|
25
|
+
*/
|
|
26
|
+
interface HealthStatus {
|
|
27
|
+
overall: "healthy" | "degraded" | "unhealthy";
|
|
28
|
+
checks: HealthCheckResult[];
|
|
29
|
+
timestamp: string;
|
|
30
|
+
profile: ProfileName;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Configuration health checker
|
|
34
|
+
*/
|
|
35
|
+
export declare class ConfigHealthChecker {
|
|
36
|
+
private logger;
|
|
37
|
+
private xdgConfig;
|
|
38
|
+
private profile;
|
|
39
|
+
constructor(profile?: ProfileName);
|
|
40
|
+
/**
|
|
41
|
+
* Checks XDG configuration file integrity
|
|
42
|
+
*
|
|
43
|
+
* @returns Health check result
|
|
44
|
+
*/
|
|
45
|
+
checkXDGIntegrity(): Promise<HealthCheckResult>;
|
|
46
|
+
/**
|
|
47
|
+
* Checks AWS Secrets Manager accessibility
|
|
48
|
+
*
|
|
49
|
+
* @returns Health check result
|
|
50
|
+
*/
|
|
51
|
+
checkSecretsAccess(): Promise<HealthCheckResult>;
|
|
52
|
+
/**
|
|
53
|
+
* Checks Benchling credential freshness
|
|
54
|
+
*
|
|
55
|
+
* @returns Health check result
|
|
56
|
+
*/
|
|
57
|
+
checkBenchlingCredentials(): Promise<HealthCheckResult>;
|
|
58
|
+
/**
|
|
59
|
+
* Checks Quilt catalog connectivity
|
|
60
|
+
*
|
|
61
|
+
* @returns Health check result
|
|
62
|
+
*/
|
|
63
|
+
checkQuiltCatalog(): Promise<HealthCheckResult>;
|
|
64
|
+
/**
|
|
65
|
+
* Checks deployment configuration
|
|
66
|
+
*
|
|
67
|
+
* @returns Health check result
|
|
68
|
+
*/
|
|
69
|
+
checkDeploymentConfig(): Promise<HealthCheckResult>;
|
|
70
|
+
/**
|
|
71
|
+
* Runs all health checks
|
|
72
|
+
*
|
|
73
|
+
* @returns Complete health status
|
|
74
|
+
*/
|
|
75
|
+
runAllChecks(): Promise<HealthStatus>;
|
|
76
|
+
}
|
|
77
|
+
export type { HealthStatus, HealthCheckResult };
|
|
78
|
+
//# sourceMappingURL=config-health-check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-health-check.d.ts","sourceRoot":"","sources":["../../scripts/config-health-check.ts"],"names":[],"mappings":";AACA;;;;;;;;;;GAUG;AAGH,OAAO,EAA+C,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAM/F;;GAEG;AACH,UAAU,iBAAiB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;GAEG;AACH,UAAU,YAAY;IAClB,OAAO,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;IAC9C,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC5B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,OAAO,CAAc;gBAEjB,OAAO,GAAE,WAAuB;IAM5C;;;;OAIG;IACU,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IA4F5D;;;;OAIG;IACU,kBAAkB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IA0D7D;;;;OAIG;IACU,yBAAyB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAmEpE;;;;OAIG;IACU,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAsE5D;;;;OAIG;IACU,qBAAqB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAuEhE;;;;OAIG;IACU,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC;CA4CrD;AA+FD,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
|