cdk-local 0.163.5 → 0.163.6
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/cli.js +2 -2
- package/dist/{docker-runner-6cuoe4H9.js → docker-runner-B3OunVKV.js} +9 -2
- package/dist/docker-runner-B3OunVKV.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/internal.d.ts +2 -2
- package/dist/internal.js +3 -3
- package/dist/{local-studio-DIxEENzj.js → local-studio-BR8vPfCn.js} +217 -70
- package/dist/local-studio-BR8vPfCn.js.map +1 -0
- package/dist/{local-studio-Dyp2aN5T.d.ts → local-studio-Cq73EZrD.d.ts} +21 -10
- package/dist/local-studio-Cq73EZrD.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/docker-runner-6cuoe4H9.js.map +0 -1
- package/dist/local-studio-DIxEENzj.js.map +0 -1
- package/dist/local-studio-Dyp2aN5T.d.ts.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { a as displayIdent, c as getEmbedConfig, i as STACK_REF_MAX_CODE_POINTS, o as displayStackName, s as displayToolOutput, t as getLogger, u as setEmbedConfig } from "./logger-Co5XVwco.js";
|
|
2
2
|
import { C as effectiveLoopbackPorts, F as resolveHostDefaultCredentials, G as awsEndpointOverrideClientConfig, K as buildProxyClientConfig, Q as proxyAwareFetch, W as awsEmulatorRoutedServices, Y as isAwsServiceRoutedToEmulator, _t as isLoopbackHostname, b as awsEmulatorEnvName, bt as formatHostForAuthority, d as workloadStsClientConfig, gt as defineOwnKey, ht as resolveEnvVars$1, l as warnWorkloadCredentialsStripped, mt as readEnvVarsFileText, n as accountLookupStsClientConfig, pt as applyEnvOverrideMap, r as applyWorkloadEnvCredentials, rt as createMixedModeStateProvider, u as workloadClientConfig, v as activateWorkloadAwsWiring, vt as isWildcardHostname, w as getActiveWorkloadAwsWiring, xt as hostFromAuthority, y as applyWorkloadAwsWiringToEnv, yt as formatAuthority } from "./workload-identity-BOEZuEDO.js";
|
|
3
3
|
import { c as clampErrorName, d as flattenToOneLine, f as isAwsServiceException, l as describeAwsFailureForWarn, m as stringifyThrown, o as renderAssemblyPathEscape, p as sanitizeServiceExceptionMessage, r as displayUntrustedValue, s as resolveAssemblyPath, t as absoluteAssemblyPathEscape, u as describeCredentialLoadFailure } from "./assembly-path-R96uhMm1.js";
|
|
4
|
-
import { $ as
|
|
4
|
+
import { $ as isIamRoleArn, A as buildDockerImage, B as substituteImagePlaceholders, D as isImageInLocalCache, E as warnIfEmulatedPlatform, F as parseEcrRegistryHost, G as LocalStartServiceError, H as CdkLocalError, I as contextForContainer, J as withErrorHandling, K as RouteDiscoveryError, L as derivePartitionAndUrlSuffix, M as createShutdownSignalHandler, N as signalExitCode, O as parseEcrUri, P as describeExitWithoutArgv, Q as describeRejectedRoleArn, R as derivePseudoParametersFromRegion, T as buildContainerImage, U as InteractiveTtyRequiredError, V as tryResolveImageFnJoin, W as LocalInvokeBuildError, X as applyRoleArnIfSet, Y as AssumeRoleFailure, Z as assumeRoleCredentials, a as describeRefusedSensitiveEnvKeys, c as execEnvForSecrets, d as rememberForwardedPorts, et as refusedRoleArnMessage, f as removeContainer, h as streamLogs, i as attachLoopbackForwarder, j as resolveAssetSourcePath, k as pullEcrImage, l as pickFreePort, m as startNamespaceOwnerForwarder, n as SENSITIVE_ENV_KEYS, nt as resolveProfileCredentials, p as runDetached, q as TargetSelectionCancelledError, r as appendEnvFlags, s as ensureDockerAvailable, t as DockerRunnerError, tt as buildStsClientConfig, u as pullImage, w as architectureToPlatform, z as formatStateRemedy } from "./docker-runner-B3OunVKV.js";
|
|
5
5
|
import { a as isDockerClientEnvKey, c as runDockerStreaming, i as getDockerCmd, n as finchSecretArgvRefusal, o as isMalformedEnvKey, u as warnFinchArgvExposure } from "./docker-cmd-Cjg3jGYF.js";
|
|
6
6
|
import { chmodSync, cpSync, createWriteStream, existsSync, lstatSync, mkdirSync, mkdtempSync, promises, readFileSync, readdirSync, readlinkSync, realpathSync, rmSync, statSync, symlinkSync, unlinkSync, writeFileSync } from "node:fs";
|
|
7
7
|
import { Command, InvalidArgumentError, Option } from "commander";
|
|
@@ -3397,6 +3397,27 @@ function createLocalStateProvider(options, stackName, synthRegion, extraStatePro
|
|
|
3397
3397
|
return factory(options, behavior);
|
|
3398
3398
|
}
|
|
3399
3399
|
}
|
|
3400
|
+
const UNNAMED_WORKLOAD = Object.freeze({});
|
|
3401
|
+
function groupWorkloadsRoutedApart(items, workloadOf) {
|
|
3402
|
+
const base = awsEmulatorRoutedServices(UNNAMED_WORKLOAD);
|
|
3403
|
+
if (base === void 0) return [];
|
|
3404
|
+
const baseKey = base.join(",");
|
|
3405
|
+
const groups = /* @__PURE__ */ new Map();
|
|
3406
|
+
for (const item of items) {
|
|
3407
|
+
const workload = workloadOf(item);
|
|
3408
|
+
const services = awsEmulatorRoutedServices(workload) ?? base;
|
|
3409
|
+
const key = services.join(",");
|
|
3410
|
+
if (key === baseKey) continue;
|
|
3411
|
+
const group = groups.get(key);
|
|
3412
|
+
if (group) group.items.push(item);
|
|
3413
|
+
else groups.set(key, {
|
|
3414
|
+
services,
|
|
3415
|
+
workload,
|
|
3416
|
+
items: [item]
|
|
3417
|
+
});
|
|
3418
|
+
}
|
|
3419
|
+
return [...groups.values()];
|
|
3420
|
+
}
|
|
3400
3421
|
function toFlagName(field) {
|
|
3401
3422
|
return "--" + field.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
3402
3423
|
}
|
|
@@ -4272,7 +4293,7 @@ function parseContainerDefinition(raw, idx, taskLogicalId, resources, stack, con
|
|
|
4272
4293
|
const command = pickStringArray$1(c["Command"]);
|
|
4273
4294
|
const entryPoint = pickStringArray$1(c["EntryPoint"]);
|
|
4274
4295
|
const workingDirectory = pickString(c["WorkingDirectory"]);
|
|
4275
|
-
const subContext = buildSubstitutionContextFromImageContext(context);
|
|
4296
|
+
const subContext = buildSubstitutionContextFromImageContext(contextForContainer(context, name));
|
|
4276
4297
|
const environment = {};
|
|
4277
4298
|
const sensitiveEnvKeys = [];
|
|
4278
4299
|
const droppedEnvKeys = [];
|
|
@@ -4687,13 +4708,34 @@ async function applyCrossStackValuesToTask(task, crossStackResolver, opts) {
|
|
|
4687
4708
|
crossStackResolver,
|
|
4688
4709
|
resolveDynamicReferences: crossStackDynamicReferenceHook(dynamicRefs, `Task ${task.taskDefinitionLogicalId} cross-stack env value`)
|
|
4689
4710
|
};
|
|
4711
|
+
const containerState = (name) => {
|
|
4712
|
+
const own = imageContext?.containerStates;
|
|
4713
|
+
if (!own || !Object.hasOwn(own, name)) return void 0;
|
|
4714
|
+
const state = own[name];
|
|
4715
|
+
return {
|
|
4716
|
+
resources: state.stateResources ?? {},
|
|
4717
|
+
parameters: state.stateParameters,
|
|
4718
|
+
sensitiveParameters: state.stateSensitiveParameters?.length ? new Set(state.stateSensitiveParameters) : void 0
|
|
4719
|
+
};
|
|
4720
|
+
};
|
|
4690
4721
|
try {
|
|
4691
|
-
await applyCrossStackResolverToTask(task, subContext);
|
|
4722
|
+
await applyCrossStackResolverToTask(task, subContext, containerState);
|
|
4692
4723
|
} finally {
|
|
4693
4724
|
dynamicRefs.dispose();
|
|
4694
4725
|
}
|
|
4695
4726
|
}
|
|
4696
|
-
|
|
4727
|
+
function withContainerState(context, state) {
|
|
4728
|
+
const out = {
|
|
4729
|
+
...context,
|
|
4730
|
+
resources: state.resources
|
|
4731
|
+
};
|
|
4732
|
+
if (state.parameters) out.parameters = state.parameters;
|
|
4733
|
+
else delete out.parameters;
|
|
4734
|
+
if (state.sensitiveParameters) out.sensitiveParameters = state.sensitiveParameters;
|
|
4735
|
+
else delete out.sensitiveParameters;
|
|
4736
|
+
return out;
|
|
4737
|
+
}
|
|
4738
|
+
async function applyCrossStackResolverToTask(task, context, containerState) {
|
|
4697
4739
|
if (!context.crossStackResolver) return;
|
|
4698
4740
|
const { resolveDynamicReferences: _envOnly, ...secretContext } = context;
|
|
4699
4741
|
const rawContainers = (task.resource.Properties ?? {})["ContainerDefinitions"];
|
|
@@ -4705,10 +4747,12 @@ async function applyCrossStackResolverToTask(task, context) {
|
|
|
4705
4747
|
const c = raw;
|
|
4706
4748
|
const containerName = pickString(c["Name"]) ?? container.name;
|
|
4707
4749
|
const resolveRefs = context.resolveDynamicReferences;
|
|
4750
|
+
const ownState = containerState?.(container.name);
|
|
4751
|
+
const baseContext = ownState ? withContainerState(context, ownState) : context;
|
|
4708
4752
|
const containerContext = resolveRefs ? {
|
|
4709
|
-
...
|
|
4753
|
+
...baseContext,
|
|
4710
4754
|
resolveDynamicReferences: (v, region) => resolveRefs(v, region, { containerName: container.name })
|
|
4711
|
-
} :
|
|
4755
|
+
} : baseContext;
|
|
4712
4756
|
const resolvedEnvKeys = /* @__PURE__ */ new Set();
|
|
4713
4757
|
const resolvedSecretNames = /* @__PURE__ */ new Set();
|
|
4714
4758
|
if (Array.isArray(c["Environment"])) for (const entry of c["Environment"]) {
|
|
@@ -4736,7 +4780,7 @@ async function applyCrossStackResolverToTask(task, context) {
|
|
|
4736
4780
|
if (typeof valueFromRaw === "string" && valueFromRaw.length > 0) continue;
|
|
4737
4781
|
if (container.secrets.some((s) => s.name === sName)) continue;
|
|
4738
4782
|
if (!isCrossStackIntrinsic(valueFromRaw)) continue;
|
|
4739
|
-
const sub = await substituteAgainstStateAsync(valueFromRaw, secretContext);
|
|
4783
|
+
const sub = await substituteAgainstStateAsync(valueFromRaw, ownState ? withContainerState(secretContext, ownState) : secretContext);
|
|
4740
4784
|
if (sub.kind === "literal" && typeof sub.value === "string" && sub.value.length > 0) {
|
|
4741
4785
|
container.secrets.push({
|
|
4742
4786
|
name: sName,
|
|
@@ -10823,7 +10867,7 @@ async function localStartApiCommand(targets, options, extraStateProviders) {
|
|
|
10823
10867
|
for (const [k, v] of direct) corsConfigByApiId.set(k, v);
|
|
10824
10868
|
}
|
|
10825
10869
|
assertServedLogicalIdsUnambiguous(servedStacks, servedRoutes, routesWithAuth, webSocketApis);
|
|
10826
|
-
const stateByStack = isCfnFlagPresent(options) || hasExtraStateProviderActive(options, extraStateProviders) ? await loadStateForRoutedStacks(servedStacks, servedRoutes, routesWithAuth, options, extraStateProviders) : /* @__PURE__ */ new Map();
|
|
10870
|
+
const stateByStack = isCfnFlagPresent(options) || hasExtraStateProviderActive(options, extraStateProviders) ? await loadStateForRoutedStacks(servedStacks, servedRoutes, routesWithAuth, options, extraStateProviders, webSocketApis) : /* @__PURE__ */ new Map();
|
|
10827
10871
|
const profileCredentials = options.profile ? await resolveProfileCredentials(options.profile) : void 0;
|
|
10828
10872
|
if (options.profile && profileCredentials && !profileCredsFile) profileCredsFile = await writeProfileCredentialsFile(options.profile, profileCredentials);
|
|
10829
10873
|
const lambdaIds = uniqueLambdaIds(servedRoutes, routesWithAuth, webSocketApis);
|
|
@@ -11396,7 +11440,8 @@ async function buildContainerSpec(args) {
|
|
|
11396
11440
|
platform = architectureToPlatform(lambda.architecture);
|
|
11397
11441
|
}
|
|
11398
11442
|
let templateEnv = getTemplateEnv$1(lambda.resource);
|
|
11399
|
-
const
|
|
11443
|
+
const stackBundle = stateByStack.get(lambda.stack.stackName);
|
|
11444
|
+
const stateBundle = stackBundle?.byLambda?.get(logicalId) ?? (stackBundle?.withoutSharedState ? void 0 : stackBundle);
|
|
11400
11445
|
let stateAudit;
|
|
11401
11446
|
const plaintextKeys = /* @__PURE__ */ new Set();
|
|
11402
11447
|
const deployedSecretKeys = [];
|
|
@@ -11461,7 +11506,7 @@ async function buildContainerSpec(args) {
|
|
|
11461
11506
|
logicalId,
|
|
11462
11507
|
assumeRole,
|
|
11463
11508
|
lambdaResource: lambda.resource,
|
|
11464
|
-
stateBundle
|
|
11509
|
+
stateBundle: stackBundle?.withoutSharedState ? void 0 : stackBundle
|
|
11465
11510
|
});
|
|
11466
11511
|
if (roleArn) {
|
|
11467
11512
|
const creds = await assumeLambdaExecutionRole(roleArn, stsRegion, profile);
|
|
@@ -11893,10 +11938,9 @@ function envHasIntrinsicValue$1(templateEnv) {
|
|
|
11893
11938
|
}
|
|
11894
11939
|
return false;
|
|
11895
11940
|
}
|
|
11896
|
-
async function loadStateForRoutedStacks(stacks, routes, routesWithAuth, options, extraStateProviders) {
|
|
11897
|
-
const logger = getLogger();
|
|
11941
|
+
async function loadStateForRoutedStacks(stacks, routes, routesWithAuth, options, extraStateProviders, webSocketApis = []) {
|
|
11898
11942
|
const out = /* @__PURE__ */ new Map();
|
|
11899
|
-
const lambdaIds = uniqueLambdaIds(routes, routesWithAuth);
|
|
11943
|
+
const lambdaIds = uniqueLambdaIds(routes, routesWithAuth, webSocketApis);
|
|
11900
11944
|
const reachableStackNames = /* @__PURE__ */ new Set();
|
|
11901
11945
|
for (const logicalId of lambdaIds) for (const stack of stacks) {
|
|
11902
11946
|
const resource = stack.template.Resources?.[logicalId];
|
|
@@ -11918,51 +11962,88 @@ async function loadStateForRoutedStacks(stacks, routes, routesWithAuth, options,
|
|
|
11918
11962
|
for (const stackName of reachableStackNames) {
|
|
11919
11963
|
const stack = stacks.find((s) => s.stackName === stackName);
|
|
11920
11964
|
if (!stack) continue;
|
|
11921
|
-
const
|
|
11922
|
-
|
|
11923
|
-
|
|
11924
|
-
|
|
11925
|
-
|
|
11926
|
-
|
|
11927
|
-
|
|
11928
|
-
|
|
11929
|
-
|
|
11930
|
-
|
|
11931
|
-
|
|
11932
|
-
|
|
11933
|
-
|
|
11934
|
-
|
|
11935
|
-
|
|
11936
|
-
|
|
11937
|
-
|
|
11938
|
-
|
|
11939
|
-
|
|
11940
|
-
|
|
11941
|
-
|
|
11942
|
-
|
|
11943
|
-
const resource = stack.template.Resources?.[logicalId];
|
|
11944
|
-
if (!resource || resource.Type !== "AWS::Lambda::Function") continue;
|
|
11945
|
-
if (!envHasIntrinsicValue$1(getTemplateEnv$1(resource))) continue;
|
|
11946
|
-
const physicalId = loaded.resources[logicalId]?.physicalId;
|
|
11947
|
-
if (!physicalId) continue;
|
|
11948
|
-
const deployedEnv = await provider.resolveDeployedFunctionEnv(physicalId);
|
|
11949
|
-
if (deployedEnv) deployedEnvByLambda.set(logicalId, deployedEnv);
|
|
11950
|
-
}
|
|
11951
|
-
if (deployedEnvByLambda.size > 0) bundle.deployedEnvByLambda = deployedEnvByLambda;
|
|
11952
|
-
}
|
|
11953
|
-
if (stackHasIntrinsicEnv(stackName) && provider.resolveTemplateSsmParameters) {
|
|
11954
|
-
const ssmParameters = await provider.resolveTemplateSsmParameters(stack.template);
|
|
11955
|
-
if (Object.keys(ssmParameters.values).length > 0) bundle.ssmParameters = ssmParameters.values;
|
|
11956
|
-
if (ssmParameters.secureStringLogicalIds.length > 0) bundle.ssmSecureStringLogicalIds = ssmParameters.secureStringLogicalIds;
|
|
11957
|
-
}
|
|
11958
|
-
out.set(stackName, bundle);
|
|
11959
|
-
logger.debug(`${provider.label}: loaded state for ${displayStackName(stackName)} (${loaded.region})`);
|
|
11960
|
-
} finally {
|
|
11961
|
-
provider.dispose();
|
|
11965
|
+
const region = await resolveCfnFallbackRegion(options, stack.region);
|
|
11966
|
+
const providerFor = (workload) => createLocalStateProvider(options, stack.stackName, region, extraStateProviders, { workload });
|
|
11967
|
+
const stackLambdaIds = lambdaIds.filter((id) => stack.template.Resources?.[id]?.Type === "AWS::Lambda::Function");
|
|
11968
|
+
const groups = groupWorkloadsRoutedApart(stackLambdaIds, (logicalId) => ({
|
|
11969
|
+
logicalId,
|
|
11970
|
+
cdkPath: readCdkPathOrUndefined(stack.template.Resources[logicalId])
|
|
11971
|
+
}));
|
|
11972
|
+
const grouped = new Set(groups.flatMap((g) => g.items));
|
|
11973
|
+
const shared = await loadStackStateBundle(stack, providerFor(UNNAMED_WORKLOAD), {
|
|
11974
|
+
lambdaIds: stackLambdaIds.filter((id) => !grouped.has(id)),
|
|
11975
|
+
intrinsicEnv: stackHasIntrinsicEnv(stackName),
|
|
11976
|
+
options
|
|
11977
|
+
});
|
|
11978
|
+
const byLambda = /* @__PURE__ */ new Map();
|
|
11979
|
+
for (const group of groups) {
|
|
11980
|
+
const own = await loadStackStateBundle(stack, providerFor(group.workload), {
|
|
11981
|
+
lambdaIds: group.items,
|
|
11982
|
+
intrinsicEnv: stackHasIntrinsicEnv(stackName),
|
|
11983
|
+
options,
|
|
11984
|
+
...shared?.pseudoParameters && { pseudoParameters: shared.pseudoParameters }
|
|
11985
|
+
});
|
|
11986
|
+
if (own) for (const logicalId of group.items) byLambda.set(logicalId, own);
|
|
11962
11987
|
}
|
|
11988
|
+
const bundle = shared ?? (byLambda.size > 0 ? {
|
|
11989
|
+
state: {
|
|
11990
|
+
version: 1,
|
|
11991
|
+
stackName: stack.stackName,
|
|
11992
|
+
resources: {},
|
|
11993
|
+
outputs: {},
|
|
11994
|
+
lastModified: 0
|
|
11995
|
+
},
|
|
11996
|
+
withoutSharedState: true
|
|
11997
|
+
} : void 0);
|
|
11998
|
+
if (!bundle) continue;
|
|
11999
|
+
if (byLambda.size > 0) bundle.byLambda = byLambda;
|
|
12000
|
+
out.set(stackName, bundle);
|
|
11963
12001
|
}
|
|
11964
12002
|
return out;
|
|
11965
12003
|
}
|
|
12004
|
+
async function loadStackStateBundle(stack, provider, args) {
|
|
12005
|
+
if (!provider) return void 0;
|
|
12006
|
+
try {
|
|
12007
|
+
const loaded = await provider.load(stack.stackName, stack.region);
|
|
12008
|
+
if (!loaded) return void 0;
|
|
12009
|
+
const bundle = {
|
|
12010
|
+
state: {
|
|
12011
|
+
version: 1,
|
|
12012
|
+
stackName: stack.stackName,
|
|
12013
|
+
resources: loaded.resources,
|
|
12014
|
+
outputs: loaded.outputs,
|
|
12015
|
+
lastModified: 0
|
|
12016
|
+
},
|
|
12017
|
+
region: loaded.region
|
|
12018
|
+
};
|
|
12019
|
+
if (args.intrinsicEnv) {
|
|
12020
|
+
const pseudo = args.pseudoParameters ?? await resolvePseudoParametersForStartApi(loaded.region, args.options);
|
|
12021
|
+
if (pseudo) bundle.pseudoParameters = pseudo;
|
|
12022
|
+
}
|
|
12023
|
+
if (provider.resolveDeployedFunctionEnv) {
|
|
12024
|
+
const deployedEnvByLambda = /* @__PURE__ */ new Map();
|
|
12025
|
+
for (const logicalId of args.lambdaIds) {
|
|
12026
|
+
const resource = stack.template.Resources?.[logicalId];
|
|
12027
|
+
if (!resource || resource.Type !== "AWS::Lambda::Function") continue;
|
|
12028
|
+
if (!envHasIntrinsicValue$1(getTemplateEnv$1(resource))) continue;
|
|
12029
|
+
const physicalId = loaded.resources[logicalId]?.physicalId;
|
|
12030
|
+
if (!physicalId) continue;
|
|
12031
|
+
const deployedEnv = await provider.resolveDeployedFunctionEnv(physicalId);
|
|
12032
|
+
if (deployedEnv) deployedEnvByLambda.set(logicalId, deployedEnv);
|
|
12033
|
+
}
|
|
12034
|
+
if (deployedEnvByLambda.size > 0) bundle.deployedEnvByLambda = deployedEnvByLambda;
|
|
12035
|
+
}
|
|
12036
|
+
if (args.intrinsicEnv && provider.resolveTemplateSsmParameters) {
|
|
12037
|
+
const ssmParameters = await provider.resolveTemplateSsmParameters(stack.template);
|
|
12038
|
+
if (Object.keys(ssmParameters.values).length > 0) bundle.ssmParameters = ssmParameters.values;
|
|
12039
|
+
if (ssmParameters.secureStringLogicalIds.length > 0) bundle.ssmSecureStringLogicalIds = ssmParameters.secureStringLogicalIds;
|
|
12040
|
+
}
|
|
12041
|
+
getLogger().debug(`${provider.label}: loaded state for ${displayStackName(stack.stackName)} (${loaded.region})`);
|
|
12042
|
+
return bundle;
|
|
12043
|
+
} finally {
|
|
12044
|
+
provider.dispose();
|
|
12045
|
+
}
|
|
12046
|
+
}
|
|
11966
12047
|
async function resolvePseudoParametersForStartApi(stateRegion, options) {
|
|
11967
12048
|
const logger = getLogger();
|
|
11968
12049
|
const region = options.region ?? process.env["AWS_REGION"] ?? process.env["AWS_DEFAULT_REGION"] ?? stateRegion;
|
|
@@ -16707,7 +16788,7 @@ const defaultDockerStartImpl = async (containerId, opts = {}) => {
|
|
|
16707
16788
|
const { getActiveWorkloadAwsWiring } = await import("./workload-identity-BOEZuEDO.js").then((n) => n.R);
|
|
16708
16789
|
const wiring = getActiveWorkloadAwsWiring();
|
|
16709
16790
|
if (wiring) {
|
|
16710
|
-
const { attachLoopbackForwarder } = await import("./docker-runner-
|
|
16791
|
+
const { attachLoopbackForwarder } = await import("./docker-runner-B3OunVKV.js").then((n) => n.o);
|
|
16711
16792
|
await attachLoopbackForwarder(containerId, wiring);
|
|
16712
16793
|
}
|
|
16713
16794
|
};
|
|
@@ -19588,13 +19669,13 @@ async function loadAssetContextForTarget(args) {
|
|
|
19588
19669
|
}
|
|
19589
19670
|
async function rollOneTarget(args) {
|
|
19590
19671
|
const { signal, controller, newBoot, stacks, options, discovery, skipPull, extraStateProviders, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, verdict, imageOverrideTag, logger } = args;
|
|
19591
|
-
const
|
|
19592
|
-
const stateProvider = createLocalStateProvider(options, candidate?.stackName ?? "", await resolveCfnFallbackRegion(options, candidate?.region), extraStateProviders);
|
|
19672
|
+
const { stateProvider, stateProviderFor } = await createTargetStateProviders(newBoot.target, stacks, options, extraStateProviders);
|
|
19593
19673
|
try {
|
|
19594
19674
|
let resolved;
|
|
19595
19675
|
try {
|
|
19596
19676
|
resolved = await resolveServiceAndRunnerOpts(newBoot, stacks, options, discovery, skipPull, stateProvider, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, {
|
|
19597
19677
|
quiet: true,
|
|
19678
|
+
stateProviderFor,
|
|
19598
19679
|
...imageOverrideTag !== void 0 && { imageOverrideTag }
|
|
19599
19680
|
});
|
|
19600
19681
|
} catch (err) {
|
|
@@ -19641,23 +19722,28 @@ async function rollOneTarget(args) {
|
|
|
19641
19722
|
}
|
|
19642
19723
|
}
|
|
19643
19724
|
async function bootOneTarget(boot, runState, stacks, options, discovery, skipPull, extraStateProviders, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, imageOverrideTag) {
|
|
19644
|
-
const
|
|
19645
|
-
const stateProvider = createLocalStateProvider(options, candidate?.stackName ?? "", await resolveCfnFallbackRegion(options, candidate?.region), extraStateProviders);
|
|
19725
|
+
const { stateProvider, stateProviderFor } = await createTargetStateProviders(boot.target, stacks, options, extraStateProviders);
|
|
19646
19726
|
try {
|
|
19647
|
-
return await runOneTarget(boot, runState, stacks, options, discovery, skipPull, stateProvider, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, imageOverrideTag);
|
|
19727
|
+
return await runOneTarget(boot, runState, stacks, options, discovery, skipPull, stateProvider, stateProviderFor, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, imageOverrideTag);
|
|
19648
19728
|
} finally {
|
|
19649
19729
|
if (stateProvider) stateProvider.dispose();
|
|
19650
19730
|
}
|
|
19651
19731
|
}
|
|
19652
|
-
async function runOneTarget(boot, runState, stacks, options, discovery, skipPull, stateProvider, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, imageOverrideTag) {
|
|
19653
|
-
const { service, runnerOpts } = await resolveServiceAndRunnerOpts(boot, stacks, options, discovery, skipPull, stateProvider, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning,
|
|
19732
|
+
async function runOneTarget(boot, runState, stacks, options, discovery, skipPull, stateProvider, stateProviderFor, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, imageOverrideTag) {
|
|
19733
|
+
const { service, runnerOpts } = await resolveServiceAndRunnerOpts(boot, stacks, options, discovery, skipPull, stateProvider, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, {
|
|
19734
|
+
stateProviderFor,
|
|
19735
|
+
...imageOverrideTag !== void 0 && { imageOverrideTag }
|
|
19736
|
+
});
|
|
19654
19737
|
return startEcsService(service, runnerOpts, runState);
|
|
19655
19738
|
}
|
|
19656
19739
|
async function resolveServiceAndRunnerOpts(boot, stacks, options, discovery, skipPull, stateProvider, profileCredsFile, frontDoorPools, suppressLoadBalancerWarning, opts = {}) {
|
|
19657
19740
|
const logger = getLogger();
|
|
19658
19741
|
const target = boot.target;
|
|
19659
19742
|
const quiet = opts.quiet === true;
|
|
19660
|
-
const imageContext = await buildEcsImageResolutionContext$1(target, stacks, options, stateProvider,
|
|
19743
|
+
const imageContext = await buildEcsImageResolutionContext$1(target, stacks, options, stateProvider, {
|
|
19744
|
+
...opts.imageOverrideTag !== void 0 && { imageOverridden: true },
|
|
19745
|
+
...opts.stateProviderFor && { stateProviderFor: opts.stateProviderFor }
|
|
19746
|
+
});
|
|
19661
19747
|
const service = resolveEcsServiceTarget(target, stacks, imageContext, { suppressLoadBalancerWarning });
|
|
19662
19748
|
const representative = service.task.containers.find((c) => c.essential) ?? service.task.containers[0];
|
|
19663
19749
|
assertEcsTaskImagesResolvable(service.task, new Set(opts.imageOverrideTag !== void 0 && representative ? [representative.name] : []));
|
|
@@ -20044,6 +20130,63 @@ async function assumeTaskRole$1(roleArn, region, profile) {
|
|
|
20044
20130
|
makeError: (message) => new LocalStartServiceError(message)
|
|
20045
20131
|
});
|
|
20046
20132
|
}
|
|
20133
|
+
async function createTargetStateProviders(target, stacks, options, extraStateProviders) {
|
|
20134
|
+
const candidate = pickCandidateStack$1(target, stacks);
|
|
20135
|
+
const region = await resolveCfnFallbackRegion(options, candidate?.region);
|
|
20136
|
+
const stateProviderFor = (workload) => createLocalStateProvider(options, candidate?.stackName ?? "", region, extraStateProviders, { workload });
|
|
20137
|
+
return {
|
|
20138
|
+
stateProvider: stateProviderFor(UNNAMED_WORKLOAD),
|
|
20139
|
+
stateProviderFor
|
|
20140
|
+
};
|
|
20141
|
+
}
|
|
20142
|
+
function ecsContainerNamesOf(stack) {
|
|
20143
|
+
const names = /* @__PURE__ */ new Set();
|
|
20144
|
+
for (const resource of Object.values(stack.template.Resources ?? {})) {
|
|
20145
|
+
if (resource?.Type !== "AWS::ECS::TaskDefinition") continue;
|
|
20146
|
+
const defs = resource.Properties?.["ContainerDefinitions"];
|
|
20147
|
+
if (!Array.isArray(defs)) continue;
|
|
20148
|
+
for (const def of defs) {
|
|
20149
|
+
const name = def?.["Name"];
|
|
20150
|
+
if (typeof name === "string" && name !== "") names.add(name);
|
|
20151
|
+
}
|
|
20152
|
+
}
|
|
20153
|
+
return [...names];
|
|
20154
|
+
}
|
|
20155
|
+
async function loadMixedModeContainerStates(ctx, stack, stateProviderFor) {
|
|
20156
|
+
const groups = groupWorkloadsRoutedApart(ecsContainerNamesOf(stack), (containerName) => ({ containerName }));
|
|
20157
|
+
if (groups.length === 0) return;
|
|
20158
|
+
const containerStates = {};
|
|
20159
|
+
for (const group of groups) {
|
|
20160
|
+
const provider = stateProviderFor(group.workload);
|
|
20161
|
+
if (!provider) continue;
|
|
20162
|
+
try {
|
|
20163
|
+
const state = {};
|
|
20164
|
+
const loaded = await provider.load(stack.stackName, stack.region);
|
|
20165
|
+
if (loaded) state.stateResources = loaded.resources;
|
|
20166
|
+
else {
|
|
20167
|
+
const loadError = provider.getLastLoadError?.();
|
|
20168
|
+
if (loadError) state.stateLoadFailureMessage = loadError;
|
|
20169
|
+
}
|
|
20170
|
+
if (provider.resolveTemplateSsmParameters) {
|
|
20171
|
+
const ssm = await provider.resolveTemplateSsmParameters(stack.template);
|
|
20172
|
+
if (Object.keys(ssm.values).length > 0) state.stateParameters = ssm.values;
|
|
20173
|
+
if (ssm.secureStringLogicalIds.length > 0) state.stateSensitiveParameters = ssm.secureStringLogicalIds;
|
|
20174
|
+
}
|
|
20175
|
+
for (const name of group.items) defineOwnState(containerStates, name, state);
|
|
20176
|
+
} finally {
|
|
20177
|
+
provider.dispose();
|
|
20178
|
+
}
|
|
20179
|
+
}
|
|
20180
|
+
ctx.containerStates = containerStates;
|
|
20181
|
+
}
|
|
20182
|
+
function defineOwnState(map, key, value) {
|
|
20183
|
+
Object.defineProperty(map, key, {
|
|
20184
|
+
value,
|
|
20185
|
+
enumerable: true,
|
|
20186
|
+
writable: true,
|
|
20187
|
+
configurable: true
|
|
20188
|
+
});
|
|
20189
|
+
}
|
|
20047
20190
|
async function buildEcsImageResolutionContext$1(target, stacks, options, stateProvider, opts = {}) {
|
|
20048
20191
|
const logger = getLogger();
|
|
20049
20192
|
const candidate = pickCandidateStack$1(target, stacks);
|
|
@@ -20084,6 +20227,7 @@ async function buildEcsImageResolutionContext$1(target, stacks, options, statePr
|
|
|
20084
20227
|
if (Object.keys(ssmParameters.values).length > 0) ctx.stateParameters = ssmParameters.values;
|
|
20085
20228
|
if (ssmParameters.secureStringLogicalIds.length > 0) ctx.stateSensitiveParameters = ssmParameters.secureStringLogicalIds;
|
|
20086
20229
|
}
|
|
20230
|
+
if (needs.needsEnvOrSecretSubstitution && opts.stateProviderFor) await loadMixedModeContainerStates(ctx, candidate, opts.stateProviderFor);
|
|
20087
20231
|
} else if (!stateProvider && needs.needsStateResources) {
|
|
20088
20232
|
if (!opts.suppressStateWarning && !opts.imageOverridden) logger.warn("Container Image references a same-stack AWS::ECR::Repository. Pass a state-source flag (e.g. --from-cfn-stack or a host-provided extension) to substitute the deployed repository URI, or --image-override to build it from a local Dockerfile.");
|
|
20089
20233
|
} else if (!stateProvider && needs.needsEnvOrSecretSubstitution) {
|
|
@@ -20199,7 +20343,7 @@ async function resolveAndBuildImageOverrides(args) {
|
|
|
20199
20343
|
const resolvedForPeek = [];
|
|
20200
20344
|
for (const target of perTarget) {
|
|
20201
20345
|
const candidate = pickCandidateStack$1(target, stacks);
|
|
20202
|
-
const stateProvider = createLocalStateProvider(options, candidate?.stackName ?? "", await resolveCfnFallbackRegion(options, candidate?.region), extraStateProviders);
|
|
20346
|
+
const stateProvider = createLocalStateProvider(options, candidate?.stackName ?? "", await resolveCfnFallbackRegion(options, candidate?.region), extraStateProviders, { workload: UNNAMED_WORKLOAD });
|
|
20203
20347
|
let imageContext;
|
|
20204
20348
|
let service;
|
|
20205
20349
|
try {
|
|
@@ -20352,8 +20496,10 @@ async function localRunTaskCommand(target, options, extraStateProviders) {
|
|
|
20352
20496
|
onMissing: () => new CdkLocalError(`${getEmbedConfig().cliName} run-task requires a <target> (an ECS task definition display path or logical ID). Run \`${getEmbedConfig().cliName} list\` to see them, or run it in a TTY to pick interactively.`, "LOCAL_RUN_TASK_TARGET_REQUIRED")
|
|
20353
20497
|
});
|
|
20354
20498
|
const candidate = pickCandidateStack(resolvedTarget, stacks);
|
|
20355
|
-
|
|
20356
|
-
const
|
|
20499
|
+
const stateRegion = await resolveCfnFallbackRegion(options, candidate?.region);
|
|
20500
|
+
const stateProviderFor = (workload) => createLocalStateProvider(options, candidate?.stackName ?? "", stateRegion, extraStateProviders, { workload });
|
|
20501
|
+
stateProvider = stateProviderFor(UNNAMED_WORKLOAD);
|
|
20502
|
+
const imageContext = await buildEcsImageResolutionContext(candidate, stateProvider, options, stateProviderFor);
|
|
20357
20503
|
const task = resolveEcsTaskTarget(resolvedTarget, stacks, imageContext);
|
|
20358
20504
|
logger.info(`Target: ${displayStackName(`${task.stack.stackName}/${task.taskDefinitionLogicalId}`)} (family=${displayIdent(task.family)}, containers=${task.containers.length})`);
|
|
20359
20505
|
const taskNeeds = detectEcsImageResolutionNeeds(stacks.find((s) => s.stackName === task.stack.stackName) ?? task.stack);
|
|
@@ -20495,7 +20641,7 @@ async function assumeTaskRole(roleArn, region, profile) {
|
|
|
20495
20641
|
sessionNameSuffix: "run-task"
|
|
20496
20642
|
});
|
|
20497
20643
|
}
|
|
20498
|
-
async function buildEcsImageResolutionContext(candidate, stateProvider, options) {
|
|
20644
|
+
async function buildEcsImageResolutionContext(candidate, stateProvider, options, stateProviderFor) {
|
|
20499
20645
|
const logger = getLogger();
|
|
20500
20646
|
if (!candidate) return void 0;
|
|
20501
20647
|
const needs = detectEcsImageResolutionNeeds(candidate);
|
|
@@ -20534,6 +20680,7 @@ async function buildEcsImageResolutionContext(candidate, stateProvider, options)
|
|
|
20534
20680
|
if (Object.keys(ssmParameters.values).length > 0) ctx.stateParameters = ssmParameters.values;
|
|
20535
20681
|
if (ssmParameters.secureStringLogicalIds.length > 0) ctx.stateSensitiveParameters = ssmParameters.secureStringLogicalIds;
|
|
20536
20682
|
}
|
|
20683
|
+
if (needs.needsEnvOrSecretSubstitution && stateProviderFor) await loadMixedModeContainerStates(ctx, candidate, stateProviderFor);
|
|
20537
20684
|
} else if (!stateProvider && needs.needsStateResources) {
|
|
20538
20685
|
if (!options.imageOverride?.length) logger.warn("Container Image references a same-stack AWS::ECR::Repository. Pass a state-source flag (e.g. --from-cfn-stack or a host-provided extension) to substitute the deployed repository URI, or --image-override to build it from a local Dockerfile. Otherwise the resolver will surface its existing error.");
|
|
20539
20686
|
} else if (!stateProvider && needs.needsEnvOrSecretSubstitution) logger.warn("Container Environment / Secrets entries contain CloudFormation intrinsics (Ref / Fn::GetAtt / Fn::Sub / Fn::Join). Pass a state-source flag (e.g. --from-cfn-stack or a host-provided extension) to substitute them against deployed state. Without a state source these entries are dropped (per-key warnings will follow).");
|
|
@@ -31621,7 +31768,7 @@ async function prepareEcsImageContexts(args) {
|
|
|
31621
31768
|
}
|
|
31622
31769
|
rejectExplicitCfnStackWithMultipleStacks(options, owningStacks.length);
|
|
31623
31770
|
for (const stack of owningStacks) {
|
|
31624
|
-
const stateProvider = createLocalStateProvider(options, stack.stackName, await resolveCfnFallbackRegion(options, stack.region));
|
|
31771
|
+
const stateProvider = createLocalStateProvider(options, stack.stackName, await resolveCfnFallbackRegion(options, stack.region), void 0, { workload: UNNAMED_WORKLOAD });
|
|
31625
31772
|
try {
|
|
31626
31773
|
const ctx = await buildEcsImageResolutionContext(stack, stateProvider, options);
|
|
31627
31774
|
contextByStack.set(stack.stackName, ctx);
|
|
@@ -31998,5 +32145,5 @@ function addStudioSpecificOptions(cmd) {
|
|
|
31998
32145
|
}
|
|
31999
32146
|
|
|
32000
32147
|
//#endregion
|
|
32001
|
-
export { postHook as $,
|
|
32002
|
-
//# sourceMappingURL=local-studio-
|
|
32148
|
+
export { postHook as $, withoutKeys as $a, buildConnectEvent as $i, addImageOverrideOptions as $n, addStartApiSpecificOptions as $r, classifyS3Error as $t, microvmFidelityWarnings as A, filterWebSocketApisByIdentifiers as Aa, buildCorsConfigByApiId as Ai, stripCloudFrontImport as An, A2A_CONTAINER_PORT as Ar, readContainerLogTail as At, MICROVM_WS_BASE_PROTOCOL as B, AGENTCORE_RUNTIME_TYPE as Ba, pickResponseTemplate as Bi, createLocalStartAlbCommand as Bn, AGENTCORE_SESSION_ID_HEADER as Br, parseWebFunctionBuildConfig as Bt, addListSpecificOptions as C, resolveWatchConfig as Ca, buildMethodArn as Ci, WEB_FUNCTION_REVISION_TYPE as Cn, setShadowReadyTimeoutMs as Cr, parseKvsFileOverrides as Ct, buildMicrovmLambdaView as D, availableWebSocketApiIdentifiers as Da, invokeTokenAuthorizer as Di, compileCloudFrontFunction as Dn, createLocalInvokeAgentCoreCommand as Dr, WEB_FUNCTION_CONTAINER_PORT as Dt, addStartMicrovmSpecificOptions as E, listTargets as Ea, invokeRequestAuthorizer as Ei, resolveWebFunctionTarget as En, addInvokeAgentCoreSpecificOptions as Er, RecentOutput as Et, microvmImageTag as F, resolveLambdaArnIntrinsic as Fa, translateLambdaResponse as Fi, findFileAssetForObjectKey as Fn, MCP_PROTOCOL_VERSION as Fr, buildNodeEntryFileStart as Ft, startMicrovmFrontDoor as G, DynamicReferenceResolver as Ga, HOST_GATEWAY_MIN_VERSION as Gi, addStartServiceSpecificOptions as Gn, SUPPORTED_CODE_RUNTIMES as Gr, readWebFunctionServiceConfig as Gt, PROXY_PORT_HEADER as H, pickAgentCoreCandidateStack as Ha, tryParseStatus as Hi, resolveAlbTarget as Hn, waitForAgentCoreHttpReady as Hr, WEB_FUNCTION_HTTP_ENDPOINT_ENV as Ht, planMicrovmPorts as I, AGENTCORE_A2A_PROTOCOL as Ia, applyAuthorizerOverlay as Ii, isBucketDeploymentResource as In, mcpInvokeOnce as Ir, defaultWebFunctionPlatform as It, MICROVM_HOOK_PATH_PREFIX as J, firstUsableRegion as Ja, bufferToBody as Ji, addRunTaskSpecificOptions as Jn, renderCodeDockerfile as Jr, idFromArn as Jt, stripMicrovmProxyHeaders as K, containsDynamicReference as Ka, probeHostGatewaySupport as Ki, createLocalStartServiceCommand as Kn, buildAgentCoreCodeImage as Kr, webFunctionAssumeRole as Kt, readExposedPorts as L, AGENTCORE_AGUI_PROTOCOL as La, buildHttpApiV2Event as Li, resolveBucketDeploymentObjectKey as Ln, parseSseForJsonRpc as Lr, resolveWebFunctionRuntime as Lt, DEFAULT_TERMINATE_HOOK_TIMEOUT_MS as M, webSocketApiMatchesIdentifier as Ma, isFunctionUrlOacFronted as Mi, createLocalFileKvsDataSource as Mn, a2aInvokeOnce as Mr, waitForWebFunctionReady as Mt, LocalMicrovm as N, discoverRoutes as Na, matchPreflight as Ni, createUnboundCloudFrontModule as Nn, MCP_CONTAINER_PORT as Nr, watchContainerExit as Nt, createLocalStartMicrovmCommand as O, discoverWebSocketApis as Oa, attachAuthorizers as Oi, runViewerRequest as On, bridgeAgentCoreWs as Or, containerFailure as Ot, buildMicrovmImage as P, pickRefLogicalId as Pa, matchRoute as Pi, bucketDeploymentSourceObjectKeys as Pn, MCP_PATH as Pr, WEB_FUNCTION_RUNTIMES as Pt, pollBuildHook as Q, resolveDynamicReferencesInEnv as Qa, parseConnectionsPath as Qi, addEcsAssumeRoleOptions as Qn, createLocalInvokeCommand as Qr, resolveDeployedOriginBucket as Qt, setContainerPaused as R, AGENTCORE_HTTP_PROTOCOL as Ra, buildRestV1Event as Ri, addAlbSpecificOptions as Rn, AGENTCORE_SIGV4_SERVICE as Rr, supportedWebFunctionRuntimes as Rt, StudioEventBus as S, resolveSsmParameters as Sa, verifyJwtViaDiscovery as Si, WEB_FUNCTION_ENDPOINT_TYPE as Sn, SOFT_RELOAD_COMPLETION_LOG_SUFFIX as Sr, normalizeKvsFileKeys as St, formatTargetListing as T, countTargets as Ta, evaluateCachedLambdaPolicy as Ti, WebFunctionResolutionError as Tn, attachContainerLogStreamer as Tr, resolveCloudFrontTarget as Tt, rewriteUpgradeResponseHead as U, resolveAgentCoreTarget as Ua, VtlEvaluationError as Ui, isApplicationLoadBalancer as Un, waitForAgentCorePing as Ur, buildWebFunctionLambdaView as Ut, MicrovmStateError as V, AgentCoreResolutionError as Va, selectIntegrationResponse as Vi, parseLbPortOverrides as Vn, invokeAgentCore as Vr, resolveWebFunctionArtifact as Vt, selectTargetPort as W, DynamicReferenceResolutionError as Wa, HOST_DOCKER_INTERNAL_GATEWAY as Wi, resolveAlbFrontDoor as Wn, downloadAndExtractS3Bundle as Wr, finalizeWebFunctionEnv as Wt, callRuntimeHook as X, keysOverriddenBy as Xa, buildMgmtEndpointEnvUrl as Xi, MAX_TASKS_SUBNET_RANGE_CAP as Xn, classifySourceChange as Xr, createDeployedKvsDataSource as Xt, MicrovmHookError as Y, keysNotFromTemplate as Ya, ConnectionRegistry as Yi, createLocalRunTaskCommand as Yn, toCmdArgv as Yr, resolveKvsModulesForDistribution as Yt, generateMicrovmId as Z, parseDynamicReference as Za, handleConnectionsRequest as Zi, addCommonEcsServiceOptions as Zn, addInvokeSpecificOptions as Zr, resolveDeployedKvsArnByName as Zt, filterStudioTargetGroups as _, resolveCfnFallbackRegion as _a, buildCognitoJwksUrl as _i, pickKvsLogicalIdFromArn as _n, isLocalCdkAssetImage as _r, attachAgentCoreWsBridge as _t, createLocalStudioCommand as a, EcsTaskResolutionError as aa, attachStageContext as ai, serveLambdaUrlOrigin as an, resolveSharedSidecarCredentials as ar, disposeMicrovmCodeArtifact as at, renderStudioHtml as b, CfnLocalStateProvider as ba, verifyCognitoJwt as bi, pickWebFunctionEndpointLogicalIdFromOrigin as bn, CloudMapRegistry as br, addStartCloudFrontSpecificOptions as bt, startStudioProxy as c, substituteAgainstStateAsync as ca, availableApiIdentifiers as ci, buildEdgeRequestEvent as cn, buildImageOverrideTag as cr, resolveMicrovmImageTarget as ct, createStudioDispatcher as d, LocalStateSourceError as da, groupRoutesByServer as di, httpHeadersToEdge as dn, mergeForService as dr, createLocalStartWebFunctionCommand as dt, buildDisconnectEvent as ea, createLocalStartApiCommand as ei, createS3OriginReader as en, addAwsEndpointOptions as eo, buildEcsImageResolutionContext$1 as er, runHookBody as et, filterStudioCustomResources as f, UNNAMED_WORKLOAD as fa, readMtlsMaterialsFromDisk as fi, CLOUDFRONT_DISTRIBUTION_TYPE as fn, parseImageOverrideFlags as fr, addStartAgentCoreSpecificOptions as ft, annotatePinnedEcsTargets as g, rejectExplicitCfnStackWithMultipleStacks as ga, defaultCredentialsLoader as gi, pickFunctionUrlLogicalIdFromOrigin as gn, imageOverrideKeyAliases as gr, startAgentCoreHttpServer as gt, annotateEcsTaskPinnedTargets as h, isCfnFlagPresent as ha, resolveServiceIntegrationParameters as hi, isCloudFrontDistribution as hn, describePinnedImageUri as hr, selectServeInboundAuth as ht, coerceStopRequest as i, resolveRuntimeImage as ia, createFileWatcher as ii, serveFromStaticOrigin as in, resolveEcsAssumeRoleOption as ir, MicrovmResolutionError as it, readRunHookPayload as j, parseSelectionExpressionPath as ja, buildCorsConfigFromCloudFrontChain as ji, createCloudFrontModule as jn, A2A_PATH as jr, startWebFunctionContainer as jt, finalizeMicrovmEnv as k, discoverWebSocketApisOrThrow as ka, applyCorsResponseHeaders as ki, runViewerResponse as kn, invokeAgentCoreWs as kr, planWebFunctionContainer as kt, relayServeRequest as l, substituteEnvVarsFromState as la, filterRoutesByApiIdentifier as li, buildEdgeResponseEvent as ln, canonicalizeImageOverrideKeys as lr, s3KeyOfUri as lt, annotateAlbPinnedBackingServices as m, groupWorkloadsRoutedApart as ma, resolveSelectionExpression as mi, extractKvsAssociations as mn, runImageOverrideBuilds as mr, buildAgentCoreServeAuthCheck as mt, coerceRunRequest as n, resolveRuntimeCodeMountPath as na, resolveApiTargetSubset as ni, startCloudFrontServer as nn, parseMaxTasks as nr, MICROVM_DEFAULT_INGRESS_PORT as nt, resolveServeBaseUrl as o, assertEcsTaskImagesResolvable as oa, buildStageMap as oi, applyEdgeRequestResult as on, runEcsServiceEmulator as or, readMicrovmImageConfig as ot, isCustomResourceLambdaTarget as p, createLocalStateProvider as pa, startApiServer as pi, describeS3OriginDomain as pn, resolveImageOverrides as pr, createLocalStartAgentCoreCommand as pt, MAX_RUN_HOOK_PAYLOAD_BYTES as q, deployedFillMayBeSecret as qa, resolveHostGatewayExtraHosts as qi, serviceStrategy as qn, computeCodeImageTag as qr, webFunctionFidelityWarnings as qt, coerceServeRequest as r, resolveRuntimeFileExtension as ra, createAuthorizerCache as ri, resolveErrorResponseCandidates as rn, parseRestartPolicy as rr, MICROVM_IMAGE_TYPE as rt, createStudioServeManager as s, substituteAgainstState as sa, materializeLayerFromArn as si, applyEdgeResponseResult as sn, ImageOverrideError as sr, resolveMicrovmCodeArtifact as st, addStudioSpecificOptions as t, buildMessageEvent as ta, createWatchPredicates as ti, matchBehavior as tn, awsEndpointOptions as to, ecsClusterOption as tr, waitForAppAnswer as tt, reinvoke as u, substituteEnvVarsFromStateAsync as ua, filterRoutesByApiIdentifiers as ui, edgeHeadersToHttp as un, enforceImageOverrideOrphans as ur, addStartWebFunctionSpecificOptions as ut, startStudioServer as v, resolveCfnRegion as va, buildJwksUrlFromIssuer as vi, pickLambdaEdgeFunctionLogicalId as vn, listPinnedTargets as vr, startAgentCoreWsBridge as vt, createLocalListCommand as w, resolveSingleTarget as wa, computeRequestIdentityHash as wi, WEB_FUNCTION_TYPE as wn, getContainerNetworkIp as wr, parseOriginOverrides as wt, createStudioStore as x, collectSsmParameterRefs as xa, verifyJwtAuthorizer as xi, resolveCloudFrontDistribution as xn, DEFAULT_SHADOW_READY_TIMEOUT_MS as xr, createLocalStartCloudFrontCommand as xt, toStudioTargetGroups as y, resolveCfnStackName as ya, createJwksCache as yi, pickTargetFunctionLogicalId as yn, buildCloudMapIndex as yr, LocalStartCloudFrontError as yt, MICROVM_CONTROL_PATH as z, AGENTCORE_MCP_PROTOCOL as za, evaluateResponseParameters as zi, albStrategy as zn, signAgentCoreInvocation as zr, disposeWebFunctionArtifact as zt };
|
|
32149
|
+
//# sourceMappingURL=local-studio-BR8vPfCn.js.map
|