@prism-d1/cli 1.0.97 → 1.0.99
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/assets/github-workflows/prism-ai-metrics.yml +172 -1
- package/dist/assets/infra/lib/lambda/event-schema.ts +11 -1
- package/dist/assets/infra/lib/lambda/metrics-processor.ts +10 -5
- package/dist/assets/infra/lib/lambda/velocity-widget.ts +26 -10
- package/dist/assets/infra/lib/metrics-pipeline-stack.ts +1 -0
- package/dist/src/commands/bootstrapper/setup-github-oidc.d.ts +1 -1
- package/dist/src/commands/bootstrapper/setup-github-oidc.d.ts.map +1 -1
- package/dist/src/commands/bootstrapper/setup-github-oidc.js +28 -17
- package/dist/src/commands/bootstrapper/setup-github-oidc.js.map +1 -1
- package/dist/src/commands/bootstrapper/setup-gitlab-oidc.d.ts +1 -1
- package/dist/src/commands/bootstrapper/setup-gitlab-oidc.d.ts.map +1 -1
- package/dist/src/commands/bootstrapper/setup-gitlab-oidc.js +20 -14
- package/dist/src/commands/bootstrapper/setup-gitlab-oidc.js.map +1 -1
- package/dist/src/commands/workshop/deploy-infra.d.ts +6 -2
- package/dist/src/commands/workshop/deploy-infra.d.ts.map +1 -1
- package/dist/src/commands/workshop/deploy-infra.js +27 -7
- package/dist/src/commands/workshop/deploy-infra.js.map +1 -1
- package/dist/src/commands/workshop/generate-demo-data.d.ts +2 -2
- package/dist/src/commands/workshop/generate-demo-data.d.ts.map +1 -1
- package/dist/src/commands/workshop/generate-demo-data.js +30 -27
- package/dist/src/commands/workshop/generate-demo-data.js.map +1 -1
- package/dist/src/commands/workshop/verify-setup.d.ts +1 -0
- package/dist/src/commands/workshop/verify-setup.d.ts.map +1 -1
- package/dist/src/commands/workshop/verify-setup.js +10 -4
- package/dist/src/commands/workshop/verify-setup.js.map +1 -1
- package/dist/src/utils/aws.d.ts +14 -0
- package/dist/src/utils/aws.d.ts.map +1 -1
- package/dist/src/utils/aws.js +15 -0
- package/dist/src/utils/aws.js.map +1 -1
- package/dist/src/utils/validate.d.ts +1 -0
- package/dist/src/utils/validate.d.ts.map +1 -1
- package/dist/src/utils/validate.js +25 -0
- package/dist/src/utils/validate.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createInterface } from 'node:readline';
|
|
2
2
|
import { createHash } from 'node:crypto';
|
|
3
|
-
import {
|
|
3
|
+
import { awsRun, PROFILE_OPTION } from '../../utils/aws.js';
|
|
4
4
|
import { DEFAULT_REGION } from '../../utils/region.js';
|
|
5
5
|
import { normalizeGitlabUrl, validateAwsRegion, validateGitlabNamespace, validateGitlabProjectPath, validateNumericId, } from '../../utils/validate.js';
|
|
6
6
|
function prompt(question, defaultValue) {
|
|
@@ -41,8 +41,10 @@ export default {
|
|
|
41
41
|
{ flags: '--project-id <id>', description: 'Use numeric project ID instead of path in trust policy (for recycled project paths)' },
|
|
42
42
|
{ flags: '--global', description: 'Create a single role for all projects in a group/user (wildcard sub claim)' },
|
|
43
43
|
{ flags: '--region <region>', description: 'AWS region holding the PRISM event bus; must match install-gitlab-workflows', default: DEFAULT_REGION },
|
|
44
|
+
PROFILE_OPTION,
|
|
44
45
|
],
|
|
45
46
|
async action(opts) {
|
|
47
|
+
const profile = opts.profile;
|
|
46
48
|
// Must agree with the region baked into the installed workflows by
|
|
47
49
|
// install-gitlab-workflows. The permissions policy below scopes
|
|
48
50
|
// events:PutEvents to one region's bus, so a mismatch leaves the workflows
|
|
@@ -85,9 +87,13 @@ export default {
|
|
|
85
87
|
console.log(`\nConfiguring OIDC for: ${projectPath} on ${gitlabUrl}`);
|
|
86
88
|
}
|
|
87
89
|
// Check AWS credentials
|
|
88
|
-
const sts =
|
|
90
|
+
const sts = awsRun(['sts', 'get-caller-identity', '--query', 'Account', '--output', 'text'], profile);
|
|
89
91
|
if (!sts.ok) {
|
|
90
|
-
|
|
92
|
+
// Surface what the CLI actually said -- see the note in setup-github-oidc.
|
|
93
|
+
console.error(`Error: could not resolve AWS identity${profile ? ` for profile "${profile}"` : ''}.`);
|
|
94
|
+
if (sts.stderr)
|
|
95
|
+
console.error(` ${sts.stderr}`);
|
|
96
|
+
console.error(' Check credentials (ada/isengard/aws configure), AWS_PROFILE, and that AWS_REGION is a real region.');
|
|
91
97
|
process.exit(1);
|
|
92
98
|
}
|
|
93
99
|
const accountId = sts.stdout;
|
|
@@ -95,10 +101,10 @@ export default {
|
|
|
95
101
|
const providerArn = `arn:aws:iam::${accountId}:oidc-provider/${providerHost}`;
|
|
96
102
|
// Step 1: Create the OIDC provider
|
|
97
103
|
console.log('Step 1: Creating GitLab OIDC identity provider...');
|
|
98
|
-
const existingProvider =
|
|
104
|
+
const existingProvider = awsRun([
|
|
99
105
|
'iam', 'get-open-id-connect-provider',
|
|
100
106
|
'--open-id-connect-provider-arn', providerArn,
|
|
101
|
-
]);
|
|
107
|
+
], profile);
|
|
102
108
|
if (existingProvider.ok) {
|
|
103
109
|
console.log(' ✓ OIDC provider already exists.');
|
|
104
110
|
}
|
|
@@ -109,11 +115,11 @@ export default {
|
|
|
109
115
|
// This previously passed 40 literal zeros, which is not a thumbprint of
|
|
110
116
|
// anything -- it read as a real pinned value while asserting nothing, and
|
|
111
117
|
// would have to be corrected by hand for a self-hosted instance.
|
|
112
|
-
const createProvider =
|
|
118
|
+
const createProvider = awsRun([
|
|
113
119
|
'iam', 'create-open-id-connect-provider',
|
|
114
120
|
'--url', gitlabUrl,
|
|
115
121
|
'--client-id-list', gitlabUrl,
|
|
116
|
-
]);
|
|
122
|
+
], profile);
|
|
117
123
|
if (createProvider.ok) {
|
|
118
124
|
console.log(' ✓ OIDC provider created.');
|
|
119
125
|
}
|
|
@@ -144,14 +150,14 @@ export default {
|
|
|
144
150
|
},
|
|
145
151
|
],
|
|
146
152
|
});
|
|
147
|
-
const existingRole =
|
|
153
|
+
const existingRole = awsRun(['iam', 'get-role', '--role-name', roleName], profile);
|
|
148
154
|
if (existingRole.ok) {
|
|
149
155
|
console.log(` ✓ Role "${roleName}" already exists. Updating trust policy...`);
|
|
150
|
-
const update =
|
|
156
|
+
const update = awsRun([
|
|
151
157
|
'iam', 'update-assume-role-policy',
|
|
152
158
|
'--role-name', roleName,
|
|
153
159
|
'--policy-document', trustPolicy,
|
|
154
|
-
]);
|
|
160
|
+
], profile);
|
|
155
161
|
if (update.ok)
|
|
156
162
|
console.log(' ✓ Trust policy updated.');
|
|
157
163
|
else {
|
|
@@ -160,12 +166,12 @@ export default {
|
|
|
160
166
|
}
|
|
161
167
|
}
|
|
162
168
|
else {
|
|
163
|
-
const createRole =
|
|
169
|
+
const createRole = awsRun([
|
|
164
170
|
'iam', 'create-role',
|
|
165
171
|
'--role-name', roleName,
|
|
166
172
|
'--assume-role-policy-document', trustPolicy,
|
|
167
173
|
'--description', `GitLab CI OIDC role for ${projectPath}`,
|
|
168
|
-
]);
|
|
174
|
+
], profile);
|
|
169
175
|
if (createRole.ok)
|
|
170
176
|
console.log(` ✓ Role "${roleName}" created.`);
|
|
171
177
|
else {
|
|
@@ -191,12 +197,12 @@ export default {
|
|
|
191
197
|
],
|
|
192
198
|
});
|
|
193
199
|
const policyName = 'PrismD1WorkshopPolicy';
|
|
194
|
-
const putPolicy =
|
|
200
|
+
const putPolicy = awsRun([
|
|
195
201
|
'iam', 'put-role-policy',
|
|
196
202
|
'--role-name', roleName,
|
|
197
203
|
'--policy-name', policyName,
|
|
198
204
|
'--policy-document', policyDocument,
|
|
199
|
-
]);
|
|
205
|
+
], profile);
|
|
200
206
|
if (putPolicy.ok)
|
|
201
207
|
console.log(` ✓ Inline policy "${policyName}" attached.`);
|
|
202
208
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-gitlab-oidc.js","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/setup-gitlab-oidc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"setup-gitlab-oidc.js","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/setup-gitlab-oidc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
declare const _default: {
|
|
2
2
|
description: string;
|
|
3
|
-
options: {
|
|
3
|
+
options: ({
|
|
4
|
+
flags: string;
|
|
5
|
+
description: string;
|
|
6
|
+
} | {
|
|
4
7
|
flags: string;
|
|
5
8
|
description: string;
|
|
6
9
|
default: string;
|
|
7
|
-
}[];
|
|
10
|
+
})[];
|
|
8
11
|
action(options: {
|
|
9
12
|
requireApproval: string;
|
|
13
|
+
profile?: string;
|
|
10
14
|
}): void;
|
|
11
15
|
};
|
|
12
16
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-infra.d.ts","sourceRoot":"","sources":["../../../../src/commands/workshop/deploy-infra.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deploy-infra.d.ts","sourceRoot":"","sources":["../../../../src/commands/workshop/deploy-infra.ts"],"names":[],"mappings":";;;;;;;;;;oBAoDkB;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;AAN/D,wBAqDE"}
|
|
@@ -3,20 +3,38 @@ import { existsSync } from 'node:fs';
|
|
|
3
3
|
import { resolve, dirname } from 'node:path';
|
|
4
4
|
import { fileURLToPath } from 'node:url';
|
|
5
5
|
import { getAssetPath } from '../../utils/root.js';
|
|
6
|
+
import { PROFILE_OPTION } from '../../utils/aws.js';
|
|
7
|
+
import { validateAwsProfile } from '../../utils/validate.js';
|
|
6
8
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
7
9
|
const INFRA_DIR = getAssetPath(import.meta.url, 'infra');
|
|
8
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Both helpers below run through a shell (execSync with a command string), so a
|
|
12
|
+
* user-supplied --profile must NOT be interpolated into `cmd`. It is handed to
|
|
13
|
+
* the child through AWS_PROFILE instead, which the AWS CLI and CDK both honour
|
|
14
|
+
* and which no shell can reinterpret. ARCC's guidance on shelling out is to
|
|
15
|
+
* avoid passing user-specified data as shell arguments where possible; the
|
|
16
|
+
* environment is that avenue here.
|
|
17
|
+
*
|
|
18
|
+
* childEnv() returns undefined when no profile was given, so the child simply
|
|
19
|
+
* inherits this process's environment unchanged -- note that assigning an empty
|
|
20
|
+
* AWS_PROFILE is not equivalent to leaving it unset (the CLI would look for a
|
|
21
|
+
* profile literally named `()`), which is why this is a conditional spread.
|
|
22
|
+
*/
|
|
23
|
+
function childEnv(profile) {
|
|
24
|
+
return profile ? { ...process.env, AWS_PROFILE: profile } : undefined;
|
|
25
|
+
}
|
|
26
|
+
function run(cmd, opts = {}, profile) {
|
|
9
27
|
try {
|
|
10
|
-
execSync(cmd, { encoding: 'utf8', stdio: 'inherit', cwd: INFRA_DIR, ...opts });
|
|
28
|
+
execSync(cmd, { encoding: 'utf8', stdio: 'inherit', cwd: INFRA_DIR, env: childEnv(profile), ...opts });
|
|
11
29
|
return true;
|
|
12
30
|
}
|
|
13
31
|
catch {
|
|
14
32
|
return false;
|
|
15
33
|
}
|
|
16
34
|
}
|
|
17
|
-
function runCapture(cmd) {
|
|
35
|
+
function runCapture(cmd, profile) {
|
|
18
36
|
try {
|
|
19
|
-
const stdout = execSync(cmd, { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'], cwd: INFRA_DIR }).trim();
|
|
37
|
+
const stdout = execSync(cmd, { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'], cwd: INFRA_DIR, env: childEnv(profile) }).trim();
|
|
20
38
|
return { ok: true, stdout };
|
|
21
39
|
}
|
|
22
40
|
catch (err) {
|
|
@@ -27,8 +45,10 @@ export default {
|
|
|
27
45
|
description: 'Deploy workshop infrastructure via CDK (bootstraps if needed)',
|
|
28
46
|
options: [
|
|
29
47
|
{ flags: '--require-approval <type>', description: 'CDK approval level (never, broadening, any-change)', default: 'never' },
|
|
48
|
+
PROFILE_OPTION,
|
|
30
49
|
],
|
|
31
50
|
action(options) {
|
|
51
|
+
const profile = options.profile ? validateAwsProfile(options.profile) : undefined;
|
|
32
52
|
if (!existsSync(INFRA_DIR)) {
|
|
33
53
|
console.error(`Error: infra directory not found at ${INFRA_DIR}`);
|
|
34
54
|
process.exit(1);
|
|
@@ -47,10 +67,10 @@ export default {
|
|
|
47
67
|
: 'npx cdk';
|
|
48
68
|
// Check bootstrap status
|
|
49
69
|
console.log('Checking CDK bootstrap status...');
|
|
50
|
-
const bootstrapCheck = runCapture(`${cdkBin} bootstrap --show-template > /dev/null 2>&1 && aws cloudformation describe-stacks --stack-name CDKToolkit --query "Stacks[0].StackStatus" --output text
|
|
70
|
+
const bootstrapCheck = runCapture(`${cdkBin} bootstrap --show-template > /dev/null 2>&1 && aws cloudformation describe-stacks --stack-name CDKToolkit --query "Stacks[0].StackStatus" --output text`, profile);
|
|
51
71
|
if (!bootstrapCheck.ok || !bootstrapCheck.stdout) {
|
|
52
72
|
console.log('CDK bootstrap stack not found. Bootstrapping...');
|
|
53
|
-
if (!run(`${cdkBin} bootstrap
|
|
73
|
+
if (!run(`${cdkBin} bootstrap`, {}, profile)) {
|
|
54
74
|
console.error('CDK bootstrap failed. Check your AWS credentials and permissions.');
|
|
55
75
|
process.exit(1);
|
|
56
76
|
}
|
|
@@ -61,7 +81,7 @@ export default {
|
|
|
61
81
|
}
|
|
62
82
|
// Deploy
|
|
63
83
|
console.log('\nDeploying infrastructure...');
|
|
64
|
-
const success = run(`${cdkBin} deploy --all --require-approval ${options.requireApproval}
|
|
84
|
+
const success = run(`${cdkBin} deploy --all --require-approval ${options.requireApproval}`, {}, profile);
|
|
65
85
|
if (success) {
|
|
66
86
|
console.log('\nInfrastructure deployed successfully.');
|
|
67
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-infra.js","sourceRoot":"","sources":["../../../../src/commands/workshop/deploy-infra.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy-infra.js","sourceRoot":"","sources":["../../../../src/commands/workshop/deploy-infra.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAEzD;;;;;;;;;;;;GAYG;AACH,SAAS,QAAQ,CAAC,OAAgB;IAChC,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,SAAS,GAAG,CAAC,GAAW,EAAE,OAA4B,EAAE,EAAE,OAAgB;IACxE,IAAI,CAAC;QACH,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QACvG,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAW,EAAE,OAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACnI,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACzE,CAAC;AACH,CAAC;AAED,eAAe;IACb,WAAW,EAAE,+DAA+D;IAC5E,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,2BAA2B,EAAE,WAAW,EAAE,oDAAoD,EAAE,OAAO,EAAE,OAAO,EAAE;QAC3H,cAAc;KACf;IACD,MAAM,CAAC,OAAsD;QAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClF,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,uCAAuC,SAAS,EAAE,CAAC,CAAC;YAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;YACpE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,uBAAuB,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAC;QAEd,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,MAAM,yJAAyJ,EAAE,OAAO,CAAC,CAAC;QAE/M,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YAC/D,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,YAAY,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;gBACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,8BAA8B,cAAc,CAAC,MAAM,IAAI,CAAC,CAAC;QACvE,CAAC;QAED,SAAS;QACT,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,MAAM,oCAAoC,OAAO,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QAEzG,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -34,11 +34,10 @@ declare const _default: {
|
|
|
34
34
|
options: ({
|
|
35
35
|
flags: string;
|
|
36
36
|
description: string;
|
|
37
|
-
default: string;
|
|
38
37
|
} | {
|
|
39
38
|
flags: string;
|
|
40
39
|
description: string;
|
|
41
|
-
default
|
|
40
|
+
default: string;
|
|
42
41
|
})[];
|
|
43
42
|
action(options: {
|
|
44
43
|
region: string;
|
|
@@ -49,6 +48,7 @@ declare const _default: {
|
|
|
49
48
|
attribution: boolean;
|
|
50
49
|
purgeDemo?: boolean;
|
|
51
50
|
force?: boolean;
|
|
51
|
+
profile?: string;
|
|
52
52
|
}): void;
|
|
53
53
|
};
|
|
54
54
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-demo-data.d.ts","sourceRoot":"","sources":["../../../../src/commands/workshop/generate-demo-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG
|
|
1
|
+
{"version":3,"file":"generate-demo-data.d.ts","sourceRoot":"","sources":["../../../../src/commands/workshop/generate-demo-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;;;;;;;;;;;oBA6Oe;QACd,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;;AAvBH,wBA2gBE"}
|
|
@@ -30,8 +30,9 @@
|
|
|
30
30
|
* - --purge-demo removes seeded items and leaves real ones alone
|
|
31
31
|
*/
|
|
32
32
|
import { randomBytes } from 'node:crypto';
|
|
33
|
-
import {
|
|
33
|
+
import { awsRun, PROFILE_OPTION } from '../../utils/aws.js';
|
|
34
34
|
import { withPrivateTemp } from '../../utils/tempfile.js';
|
|
35
|
+
import { validateAwsProfile } from '../../utils/validate.js';
|
|
35
36
|
// ---- Shell-free AWS CLI helpers ----
|
|
36
37
|
/**
|
|
37
38
|
* EventBridge put-events with the entry array passed as a file.
|
|
@@ -41,16 +42,16 @@ import { withPrivateTemp } from '../../utils/tempfile.js';
|
|
|
41
42
|
* apostrophe terminated that quoted region and the remainder became shell
|
|
42
43
|
* source. Passing a file path removes both the quoting and the shell.
|
|
43
44
|
*/
|
|
44
|
-
function putEvents(region, entries) {
|
|
45
|
-
return withPrivateTemp('entries.json', JSON.stringify(entries), (file) =>
|
|
45
|
+
function putEvents(region, entries, profile) {
|
|
46
|
+
return withPrivateTemp('entries.json', JSON.stringify(entries), (file) => awsRun(['events', 'put-events', '--region', region, '--entries', `file://${file}`], profile).ok);
|
|
46
47
|
}
|
|
47
48
|
/** Write one request with the single-item APIs (PutItem / DeleteItem). */
|
|
48
|
-
function ddbWriteOne(region, table, req) {
|
|
49
|
+
function ddbWriteOne(region, table, req, profile) {
|
|
49
50
|
if ('PutRequest' in req) {
|
|
50
|
-
const r = withPrivateTemp('item.json', JSON.stringify(req.PutRequest.Item), (file) =>
|
|
51
|
+
const r = withPrivateTemp('item.json', JSON.stringify(req.PutRequest.Item), (file) => awsRun(['dynamodb', 'put-item', '--region', region, '--table-name', table, '--item', `file://${file}`], profile));
|
|
51
52
|
return { ok: r.ok, stderr: r.stderr };
|
|
52
53
|
}
|
|
53
|
-
const r = withPrivateTemp('key.json', JSON.stringify(req.DeleteRequest.Key), (file) =>
|
|
54
|
+
const r = withPrivateTemp('key.json', JSON.stringify(req.DeleteRequest.Key), (file) => awsRun(['dynamodb', 'delete-item', '--region', region, '--table-name', table, '--key', `file://${file}`], profile));
|
|
54
55
|
return { ok: r.ok, stderr: r.stderr };
|
|
55
56
|
}
|
|
56
57
|
/**
|
|
@@ -74,14 +75,14 @@ let batchWriteSupported = null;
|
|
|
74
75
|
*
|
|
75
76
|
* Per-item writes are slower but bounded: a full seed is roughly 150 items.
|
|
76
77
|
*/
|
|
77
|
-
function ddbBatchWrite(region, table, requests) {
|
|
78
|
+
function ddbBatchWrite(region, table, requests, profile) {
|
|
78
79
|
let written = 0;
|
|
79
80
|
let batchError = '';
|
|
80
81
|
for (let i = 0; i < requests.length; i += 25) {
|
|
81
82
|
const chunk = requests.slice(i, i + 25);
|
|
82
83
|
if (batchWriteSupported !== false) {
|
|
83
84
|
const payload = JSON.stringify({ [table]: chunk });
|
|
84
|
-
const result = withPrivateTemp('batch.json', payload, (file) =>
|
|
85
|
+
const result = withPrivateTemp('batch.json', payload, (file) => awsRun(['dynamodb', 'batch-write-item', '--region', region, '--request-items', `file://${file}`], profile));
|
|
85
86
|
if (result.ok) {
|
|
86
87
|
batchWriteSupported = true;
|
|
87
88
|
written += chunk.length;
|
|
@@ -94,7 +95,7 @@ function ddbBatchWrite(region, table, requests) {
|
|
|
94
95
|
process.stdout.write('!');
|
|
95
96
|
}
|
|
96
97
|
for (const req of chunk) {
|
|
97
|
-
const one = ddbWriteOne(region, table, req);
|
|
98
|
+
const one = ddbWriteOne(region, table, req, profile);
|
|
98
99
|
if (!one.ok) {
|
|
99
100
|
return {
|
|
100
101
|
written,
|
|
@@ -125,24 +126,24 @@ function ddbBatchWrite(region, table, requests) {
|
|
|
125
126
|
* access, and the table is KMS-encrypted, so a role can hold the DynamoDB
|
|
126
127
|
* actions and still fail on kms:GenerateDataKey.
|
|
127
128
|
*/
|
|
128
|
-
function preflightAttributionTable(region, table) {
|
|
129
|
-
const describe =
|
|
129
|
+
function preflightAttributionTable(region, table, profile) {
|
|
130
|
+
const describe = awsRun(['dynamodb', 'describe-table', '--region', region, '--table-name', table, '--output', 'json'], profile);
|
|
130
131
|
if (!describe.ok) {
|
|
131
132
|
return `cannot describe ${table}: ${describe.stderr}`;
|
|
132
133
|
}
|
|
133
134
|
const probeKey = { pk: { S: 'REPO#__prism_preflight__' }, sk: { S: 'COMMIT#__prism_preflight__' } };
|
|
134
135
|
const probeItem = { ...probeKey, record_type: { S: 'PREFLIGHT' }, demo_seed: { BOOL: true } };
|
|
135
|
-
const put = ddbBatchWrite(region, table, [{ PutRequest: { Item: probeItem } }]);
|
|
136
|
+
const put = ddbBatchWrite(region, table, [{ PutRequest: { Item: probeItem } }], profile);
|
|
136
137
|
if (put.error) {
|
|
137
138
|
return `cannot batch-write to ${table}: ${put.error}`;
|
|
138
139
|
}
|
|
139
|
-
ddbBatchWrite(region, table, [{ DeleteRequest: { Key: probeKey } }]);
|
|
140
|
+
ddbBatchWrite(region, table, [{ DeleteRequest: { Key: probeKey } }], profile);
|
|
140
141
|
return null;
|
|
141
142
|
}
|
|
142
143
|
/** True when the table holds attribution commits that this generator did not create. */
|
|
143
|
-
function hasRealAttribution(region, table) {
|
|
144
|
+
function hasRealAttribution(region, table, profile) {
|
|
144
145
|
const values = JSON.stringify({ ':rt': { S: 'OTEL_ATTR_COMMIT' } });
|
|
145
|
-
const result = withPrivateTemp('values.json', values, (file) =>
|
|
146
|
+
const result = withPrivateTemp('values.json', values, (file) => awsRun([
|
|
146
147
|
'dynamodb', 'scan',
|
|
147
148
|
'--region', region,
|
|
148
149
|
'--table-name', table,
|
|
@@ -150,7 +151,7 @@ function hasRealAttribution(region, table) {
|
|
|
150
151
|
'--filter-expression', 'record_type = :rt AND attribute_not_exists(demo_seed)',
|
|
151
152
|
'--expression-attribute-values', `file://${file}`,
|
|
152
153
|
'--output', 'json',
|
|
153
|
-
]));
|
|
154
|
+
], profile));
|
|
154
155
|
if (!result.ok)
|
|
155
156
|
return false; // table missing or no access — surfaced by the caller's first write
|
|
156
157
|
try {
|
|
@@ -160,9 +161,9 @@ function hasRealAttribution(region, table) {
|
|
|
160
161
|
return false;
|
|
161
162
|
}
|
|
162
163
|
}
|
|
163
|
-
function purgeDemoAttribution(region, table) {
|
|
164
|
+
function purgeDemoAttribution(region, table, profile) {
|
|
164
165
|
const values = JSON.stringify({ ':t': { BOOL: true } });
|
|
165
|
-
const result = withPrivateTemp('values.json', values, (file) =>
|
|
166
|
+
const result = withPrivateTemp('values.json', values, (file) => awsRun([
|
|
166
167
|
'dynamodb', 'scan',
|
|
167
168
|
'--region', region,
|
|
168
169
|
'--table-name', table,
|
|
@@ -170,7 +171,7 @@ function purgeDemoAttribution(region, table) {
|
|
|
170
171
|
'--projection-expression', 'pk,sk',
|
|
171
172
|
'--expression-attribute-values', `file://${file}`,
|
|
172
173
|
'--output', 'json',
|
|
173
|
-
]));
|
|
174
|
+
], profile));
|
|
174
175
|
if (!result.ok) {
|
|
175
176
|
console.error(`Error: could not scan ${table}: ${result.stderr}`);
|
|
176
177
|
return 0;
|
|
@@ -185,7 +186,7 @@ function purgeDemoAttribution(region, table) {
|
|
|
185
186
|
}
|
|
186
187
|
if (items.length === 0)
|
|
187
188
|
return 0;
|
|
188
|
-
return ddbBatchWrite(region, table, items.map(key => ({ DeleteRequest: { Key: key } }))).written;
|
|
189
|
+
return ddbBatchWrite(region, table, items.map(key => ({ DeleteRequest: { Key: key } })), profile).written;
|
|
189
190
|
}
|
|
190
191
|
// ---- Synthetic fleet ----
|
|
191
192
|
const SONNET = 'us.anthropic.claude-sonnet-4-5-20250929-v1:0';
|
|
@@ -227,19 +228,21 @@ export default {
|
|
|
227
228
|
{ flags: '--no-attribution', description: 'Emit events only; leave the attribution store untouched' },
|
|
228
229
|
{ flags: '--purge-demo', description: 'Delete previously seeded attribution items and exit' },
|
|
229
230
|
{ flags: '--force', description: 'Seed attribution even when the table already holds real data' },
|
|
231
|
+
PROFILE_OPTION,
|
|
230
232
|
],
|
|
231
233
|
action(options) {
|
|
232
234
|
const { region, bus, team, repo, table } = options;
|
|
235
|
+
const profile = options.profile ? validateAwsProfile(options.profile) : undefined;
|
|
233
236
|
const seedAttribution = options.attribution !== false;
|
|
234
237
|
// No shell here, so `command -v aws` is not available — `command` is a
|
|
235
238
|
// shell builtin, not a binary. Probe the binary directly instead.
|
|
236
|
-
if (!
|
|
239
|
+
if (!awsRun(['--version']).ok) {
|
|
237
240
|
console.error('Error: AWS CLI not found. Install from https://aws.amazon.com/cli/');
|
|
238
241
|
process.exit(1);
|
|
239
242
|
}
|
|
240
243
|
if (options.purgeDemo) {
|
|
241
244
|
console.log(`Purging seeded attribution items from ${table} (${region})...`);
|
|
242
|
-
const removed = purgeDemoAttribution(region, table);
|
|
245
|
+
const removed = purgeDemoAttribution(region, table, profile);
|
|
243
246
|
console.log(`\nRemoved ${removed} seeded item(s). Real attribution data was left untouched.`);
|
|
244
247
|
return;
|
|
245
248
|
}
|
|
@@ -248,7 +251,7 @@ export default {
|
|
|
248
251
|
console.log(`Attribution: ${seedAttribution ? `${table}` : 'skipped (--no-attribution)'}`);
|
|
249
252
|
console.log('');
|
|
250
253
|
if (seedAttribution) {
|
|
251
|
-
const problem = preflightAttributionTable(region, table);
|
|
254
|
+
const problem = preflightAttributionTable(region, table, profile);
|
|
252
255
|
if (problem) {
|
|
253
256
|
console.error(`Error: ${problem}`);
|
|
254
257
|
console.error('');
|
|
@@ -267,7 +270,7 @@ export default {
|
|
|
267
270
|
process.exit(1);
|
|
268
271
|
}
|
|
269
272
|
}
|
|
270
|
-
if (seedAttribution && !options.force && hasRealAttribution(region, table)) {
|
|
273
|
+
if (seedAttribution && !options.force && hasRealAttribution(region, table, profile)) {
|
|
271
274
|
console.error(`Error: ${table} already contains real attribution data.`);
|
|
272
275
|
console.error('');
|
|
273
276
|
console.error('Seeding fabricated commits alongside real developer activity corrupts the');
|
|
@@ -286,7 +289,7 @@ export default {
|
|
|
286
289
|
let total = 0;
|
|
287
290
|
function flush() {
|
|
288
291
|
if (batch.length > 0) {
|
|
289
|
-
if (putEvents(region, batch)) {
|
|
292
|
+
if (putEvents(region, batch, profile)) {
|
|
290
293
|
total += batch.length;
|
|
291
294
|
}
|
|
292
295
|
else {
|
|
@@ -660,11 +663,11 @@ export default {
|
|
|
660
663
|
if (totalItems > 0) {
|
|
661
664
|
console.log(`Seeding ${totalItems} attribution items into ${table}...`);
|
|
662
665
|
// Spans and rollups first — see the note on the accumulators above.
|
|
663
|
-
const spans = ddbBatchWrite(region, table, spanRequests);
|
|
666
|
+
const spans = ddbBatchWrite(region, table, spanRequests, profile);
|
|
664
667
|
attrWritten += spans.written;
|
|
665
668
|
let failure = spans.error;
|
|
666
669
|
if (!failure) {
|
|
667
|
-
const commits = ddbBatchWrite(region, table, commitRequests);
|
|
670
|
+
const commits = ddbBatchWrite(region, table, commitRequests, profile);
|
|
668
671
|
attrWritten += commits.written;
|
|
669
672
|
failure = commits.error;
|
|
670
673
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-demo-data.js","sourceRoot":"","sources":["../../../../src/commands/workshop/generate-demo-data.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate-demo-data.js","sourceRoot":"","sources":["../../../../src/commands/workshop/generate-demo-data.ts"],"names":[],"mappings":"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"}
|