@go-to-k/cdkd 0.298.3 → 0.298.4
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/{asg-provider-CvJsMScM.js → asg-provider-DvX7fChd.js} +2 -2
- package/dist/{asg-provider-CvJsMScM.js.map → asg-provider-DvX7fChd.js.map} +1 -1
- package/dist/cli.js +2 -2
- package/dist/{deploy-engine-DLGCuN4i.js → deploy-engine-C8Fy0Qt4.js} +4 -4
- package/dist/{deploy-engine-DLGCuN4i.js.map → deploy-engine-C8Fy0Qt4.js.map} +1 -1
- package/dist/{iam-role-provider-B020NDGS.js → iam-role-provider-BoSkqeaq.js} +2 -2
- package/dist/{iam-role-provider-B020NDGS.js.map → iam-role-provider-BoSkqeaq.js.map} +1 -1
- package/dist/index.js +2 -2
- package/dist/{neptune-provider-DDFjTv9k.js → neptune-provider-23ajlPbJ.js} +2 -2
- package/dist/{neptune-provider-DDFjTv9k.js.map → neptune-provider-23ajlPbJ.js.map} +1 -1
- package/dist/{program-BQnReLnG.js → program-BqJFGIHe.js} +4 -4
- package/dist/{program-BQnReLnG.js.map → program-BqJFGIHe.js.map} +1 -1
- package/dist/{provider-classes-BTP4rLU6.js → provider-classes-CoJI5423.js} +62 -9
- package/dist/provider-classes-CoJI5423.js.map +1 -0
- package/dist/{rds-provider-DcfF-k86.js → rds-provider-Bbn1D00T.js} +2 -2
- package/dist/{rds-provider-DcfF-k86.js.map → rds-provider-Bbn1D00T.js.map} +1 -1
- package/dist/{version-CWATUXWX.js → version-Dt_Dbvj3.js} +2 -2
- package/dist/{version-CWATUXWX.js.map → version-Dt_Dbvj3.js.map} +1 -1
- package/package.json +1 -1
- package/dist/provider-classes-BTP4rLU6.js.map +0 -1
|
@@ -2,12 +2,12 @@ import { r as getAwsClients } from "./aws-clients-CnmtbrxD.js";
|
|
|
2
2
|
import { F as displayStackName, I as isPasteableIdent, N as displayIdent, O as SECRET_REF_MAX_CODE_POINTS, P as displaySafe, R as plainIdentOr, a as getLogger, b as generateResourceNameWithFallback, n as isAwsAuthoredFailure, r as safeStringify, t as describeAwsFailure, y as generateResourceName, z as safeMsg } from "./aws-failure-text-DtvlUugx.js";
|
|
3
3
|
import { $ as protectedReplacementAdvice, $n as isAmbiguousOutcomeError, $t as credentialFingerprint, A as isQuotableImportValue, B as isTerminalDeleteFailure, Bn as withheldTargetClause, C as setBounded, D as VALUE_NOT_SHOWN, E as assertRegionMatch, F as resolveExplicitPhysicalId, Gt as injectiveKeyPrefix, H as observeThenDisableProtection, In as plainOrDescribed, L as ProtectionFlipRegistry, M as quotedRemedyLogicalId, Mn as hasClauseBreak, Mt as markCreatedBeforeFailure, N as refusalTypeShown, Nn as isInertUnquoted, O as isPlainImportJson, P as remedyLogicalId, Pn as pasteableCommand, Q as pasteableAwsCommand, Qt as clientDefaultsFor, S as replayedSendWindow, St as withDerivedNameMasks, T as RESOURCE_NOT_FOUND, Tt as clearCreatedBeforeFailure, U as protectionFlipKey, V as logGroupProtectionSite, W as rdsFamilyProtectionSite, Wt as injectiveKey, X as WITHHELD_AWS_COMMAND, Xn as markReplayMayCollide, Xt as ambientClientDefaults, Y as UNNAMEABLE_ID_CLAUSE, Yn as markNameCollision, Yt as withPasteableAwsProfile, Z as isAwsCliLiteral, Zt as ambientCredentialConfig, _ as RecentIdSet, _t as createMaskedLogSinks, a as onlySecretDerived, ar as isMarkedNonRetryable, at as startInterruptWatch, b as isInsideWindow, bt as maskDeep, c as recordedPrincipalsRepair, cr as markRedactedCause, ct as canonicalizeRoute53QueryName, dt as compositeIdSkipResult, en as AccountIdUnavailableError, et as renderDisableCommand, ft as logicalIdShown, g as AmbiguousCreateLatch, gn as ProvisioningError, gt as stateOrphanRecordRemedy, h as AMBIGUOUS_LATCH_TTL_MS, ht as segmentAfterAnchor, i as holdsSecretDerivedEntry, ir as THROTTLING_ERROR_NAMES, it as isInterruptedWaitError, j as normalizeAwsTagsToCfn, jn as commandHole, jt as markAuxiliaryFailure, k as isPlainImportValue, lr as wrapMaskedAwsError, lt as compositeIdFormatMessage, nn as CdkdError, nr as isTransientServerError, o as readPrincipalLists, or as isThrottlingError, ot as ElapsedBudgetRegistry, p as withRemovalDefaults, pt as packCompositeId, q as userPoolProtectionSite, r as SECRET_DERIVED_READ_LIVE, sr as markNonRetryable, tr as isRetryableTransientError, u as clearOnUpdateRemoval, ut as compositeIdSeparatorRefusal, v as ambiguousAttemptLead, vn as ResourceUpdateNotSupportedError, vt as createMaskedRetryLogger, w as withoutServerErrorRetries, x as replayFollowedAmbiguousAttempt, xt as maskerOrIdentity, y as createAttemptKey, yt as isSecretDerivedValue, z as deleteWithProtectionCompensation, zn as shellQuote } from "./iam-policy-targets-CwKiK9nS.js";
|
|
4
4
|
import { s as ambientRegion } from "./aws-client-defaults-D0q0z4dG.js";
|
|
5
|
-
import { $ as isTruthyCfnBoolean, $o as markSameGenerationBag, B as DYNAMODB_DELETE_MIN_RESOURCE_TIMEOUT_MS, Br as reDisableInstanceApiTermination, Bt as getStackRecords, Cl as renderAssemblyPathEscape, Co as sameLambdaFunctionAddress, Ct as revertNestedChildFromJournal, Dr as unchangedBehindSecretReference, Dt as getCurrentNestedStackContext, Ei as parseWebACLArn, Er as slowCcOperationTimeoutMs, Fo as passedNoEchoParametersOf, Fr as markWaitAbandoned, G as resolveDynamoDbDeleteBudgetMs, Ga as findSilentDropProperties, H as compensateRemovedDeletionProtection, Ho as hasMaskableValues, Ii as accountArgs, J as deleteTableWithIndexBusyRetry, K as DELETE_INDEX_WAIT_PROCEED_NOTE, Lr as ec2InstanceProtectionSite, Mr as deleteSkipReason, Nr as withIndeterminateGuard, Ot as withNestedStackContext, Pr as isWaitAbandonedError, Q as hasCdkAutoDeleteTag, Qn as earliestDefined, Rr as isTerminationProtectionPropagationError, Rt as awaitInFlightSibling, Sl as displayAssemblyPath, So as lambdaFunctionNameForMask, U as deleteBudgetKey, Ua as withheldAccountClause, V as beginDeleteWait, Vr as reEnableInstanceApiTermination, W as resolveDynamoDbDeleteBudgetClock, X as ECR_AUTO_DELETE_IMAGES_TAG, Y as waitForIndexesSettled, Z as S3_AUTO_DELETE_OBJECTS_TAG, a as findNestedTemplateTreeDefect, ai as s3BucketArn, an as isRedactedRecordedValue, ao as toCfnInteger, ar as planTagDiff, as as dynamicReferenceTokens, b as lookupEachName, bo as withRetry, br as getCurrentResourceSecrets, bt as getNestedRevertRun, c as renderNestedTemplateTreeDefect, ci as s3BucketRegionalDomainName, co as coerceCfnInteger, cr as tagMapAsList, da as refuseMalformedNestedChildOutputs, dl as derivePartitionAndUrlSuffix, do as configStringRefusal, dr as stringifyIfAssigned, ds as recoverMaskedOutput, er as reserveStackCreateToken, es as redactSecretsForState, et as getPriorAttempts, fo as readConfigString, fs as physicalNameCopiesOf, gi as getAccountInfo, go as requireConfigString, gs as carriesSecretMask, ho as requireConfigObject, ii as isSettledInstanceState, in as REDACTED_DELETE_ADDRESS_SKIP_REASON, io as isWarmThroughputDecrease, ir as DBPROXY_TAG_OPTIONS, ja as refuseMalformedResourcesForDestroy, ki as passedParameterClassesOf, li as s3BucketWebsiteUrl, lo as configBooleanRefusal, lr as tagPlanWarning, mo as requireConfigArray, nn as getCurrentProducerRegions, no as WARM_THROUGHPUT_MEMBERS, nr as acquireIdempotencyToken, o as isAbsoluteAssetPath, oc as rewriteTemplateAssetReferences, oi as s3BucketDomainName, on as redactedDeleteAddressFields, oo as toFiniteNumber, or as readTagList, po as replayWarn, ps as recordAttributeIdCopy, q as INDEX_SETTLE_POLL_INTERVAL_MS, qa as withoutSilentDropProperties, ro as coerceWarmThroughput$1, rr as DBPROXY_TAGS_WHAT, rs as withoutPhysicalNameCopies, s as listNestedTemplateRows, si as s3BucketDualStackDomainName, sl as decodeListingKey, sn as redactedDeleteAddressSkip, so as coerceCfnBoolean, sr as refuseMalformedDesiredTags, t as DeployEngine, tc as stringifyValue, tt as markRefusedBeforeApplying, ul as canonicalizeRegion, uo as configIntegerRefusal, ur as definedAttributes, v as chunks, wl as resolveAssemblyPath, x as withApiLimit, xl as describeFileReadFailure, xo as canonicalLambdaFunctionName, y as isAccessDeniedError, z as DynamoDBGlobalTableProvider, zr as observeThenDisableInstanceApiTermination } from "./deploy-engine-
|
|
6
|
-
import { n as collectInlinePolicyNamesManagedBySiblings, r as IamCreateClientCache, t as IAMRoleProvider } from "./iam-role-provider-
|
|
7
|
-
import { a as canonicalizeIpProtocolValue, i as resolveSecretDerivedPrincipals, n as runDestroyForStack, o as resolvedResourceTimeoutMs, r as isResolvableSecretPrincipalList, t as canonicalizeIpv4Cidr } from "./program-
|
|
8
|
-
import { RDSProvider } from "./rds-provider-
|
|
9
|
-
import { NeptuneProvider } from "./neptune-provider-
|
|
10
|
-
import { ASGProvider } from "./asg-provider-
|
|
5
|
+
import { $ as isTruthyCfnBoolean, $o as markSameGenerationBag, B as DYNAMODB_DELETE_MIN_RESOURCE_TIMEOUT_MS, Br as reDisableInstanceApiTermination, Bt as getStackRecords, Cl as renderAssemblyPathEscape, Co as sameLambdaFunctionAddress, Ct as revertNestedChildFromJournal, Dr as unchangedBehindSecretReference, Dt as getCurrentNestedStackContext, Ei as parseWebACLArn, Er as slowCcOperationTimeoutMs, Fo as passedNoEchoParametersOf, Fr as markWaitAbandoned, G as resolveDynamoDbDeleteBudgetMs, Ga as findSilentDropProperties, H as compensateRemovedDeletionProtection, Ho as hasMaskableValues, Ii as accountArgs, J as deleteTableWithIndexBusyRetry, K as DELETE_INDEX_WAIT_PROCEED_NOTE, Lr as ec2InstanceProtectionSite, Mr as deleteSkipReason, Nr as withIndeterminateGuard, Ot as withNestedStackContext, Pr as isWaitAbandonedError, Q as hasCdkAutoDeleteTag, Qn as earliestDefined, Rr as isTerminationProtectionPropagationError, Rt as awaitInFlightSibling, Sl as displayAssemblyPath, So as lambdaFunctionNameForMask, U as deleteBudgetKey, Ua as withheldAccountClause, V as beginDeleteWait, Vr as reEnableInstanceApiTermination, W as resolveDynamoDbDeleteBudgetClock, X as ECR_AUTO_DELETE_IMAGES_TAG, Y as waitForIndexesSettled, Z as S3_AUTO_DELETE_OBJECTS_TAG, a as findNestedTemplateTreeDefect, ai as s3BucketArn, an as isRedactedRecordedValue, ao as toCfnInteger, ar as planTagDiff, as as dynamicReferenceTokens, b as lookupEachName, bo as withRetry, br as getCurrentResourceSecrets, bt as getNestedRevertRun, c as renderNestedTemplateTreeDefect, ci as s3BucketRegionalDomainName, co as coerceCfnInteger, cr as tagMapAsList, da as refuseMalformedNestedChildOutputs, dl as derivePartitionAndUrlSuffix, do as configStringRefusal, dr as stringifyIfAssigned, ds as recoverMaskedOutput, er as reserveStackCreateToken, es as redactSecretsForState, et as getPriorAttempts, fo as readConfigString, fs as physicalNameCopiesOf, gi as getAccountInfo, go as requireConfigString, gs as carriesSecretMask, ho as requireConfigObject, ii as isSettledInstanceState, in as REDACTED_DELETE_ADDRESS_SKIP_REASON, io as isWarmThroughputDecrease, ir as DBPROXY_TAG_OPTIONS, ja as refuseMalformedResourcesForDestroy, ki as passedParameterClassesOf, li as s3BucketWebsiteUrl, lo as configBooleanRefusal, lr as tagPlanWarning, mo as requireConfigArray, nn as getCurrentProducerRegions, no as WARM_THROUGHPUT_MEMBERS, nr as acquireIdempotencyToken, o as isAbsoluteAssetPath, oc as rewriteTemplateAssetReferences, oi as s3BucketDomainName, on as redactedDeleteAddressFields, oo as toFiniteNumber, or as readTagList, po as replayWarn, ps as recordAttributeIdCopy, q as INDEX_SETTLE_POLL_INTERVAL_MS, qa as withoutSilentDropProperties, ro as coerceWarmThroughput$1, rr as DBPROXY_TAGS_WHAT, rs as withoutPhysicalNameCopies, s as listNestedTemplateRows, si as s3BucketDualStackDomainName, sl as decodeListingKey, sn as redactedDeleteAddressSkip, so as coerceCfnBoolean, sr as refuseMalformedDesiredTags, t as DeployEngine, tc as stringifyValue, tt as markRefusedBeforeApplying, ul as canonicalizeRegion, uo as configIntegerRefusal, ur as definedAttributes, v as chunks, wl as resolveAssemblyPath, x as withApiLimit, xl as describeFileReadFailure, xo as canonicalLambdaFunctionName, y as isAccessDeniedError, z as DynamoDBGlobalTableProvider, zr as observeThenDisableInstanceApiTermination } from "./deploy-engine-C8Fy0Qt4.js";
|
|
6
|
+
import { n as collectInlinePolicyNamesManagedBySiblings, r as IamCreateClientCache, t as IAMRoleProvider } from "./iam-role-provider-BoSkqeaq.js";
|
|
7
|
+
import { a as canonicalizeIpProtocolValue, i as resolveSecretDerivedPrincipals, n as runDestroyForStack, o as resolvedResourceTimeoutMs, r as isResolvableSecretPrincipalList, t as canonicalizeIpv4Cidr } from "./program-BqJFGIHe.js";
|
|
8
|
+
import { RDSProvider } from "./rds-provider-Bbn1D00T.js";
|
|
9
|
+
import { NeptuneProvider } from "./neptune-provider-23ajlPbJ.js";
|
|
10
|
+
import { ASGProvider } from "./asg-provider-DvX7fChd.js";
|
|
11
11
|
import { createHash, randomUUID } from "node:crypto";
|
|
12
12
|
import { CreateBucketCommand, DeleteBucketAnalyticsConfigurationCommand, DeleteBucketCommand, DeleteBucketCorsCommand, DeleteBucketEncryptionCommand, DeleteBucketIntelligentTieringConfigurationCommand, DeleteBucketInventoryConfigurationCommand, DeleteBucketLifecycleCommand, DeleteBucketMetricsConfigurationCommand, DeleteBucketOwnershipControlsCommand, DeleteBucketPolicyCommand, DeleteBucketReplicationCommand, DeleteBucketTaggingCommand, DeleteBucketWebsiteCommand, DeleteObjectsCommand, GetBucketAccelerateConfigurationCommand, GetBucketCorsCommand, GetBucketEncryptionCommand, GetBucketLifecycleConfigurationCommand, GetBucketLocationCommand, GetBucketLoggingCommand, GetBucketNotificationConfigurationCommand, GetBucketOwnershipControlsCommand, GetBucketPolicyCommand, GetBucketReplicationCommand, GetBucketTaggingCommand, GetBucketVersioningCommand, GetBucketWebsiteCommand, GetObjectCommand, GetObjectLockConfigurationCommand, GetPublicAccessBlockCommand, HeadBucketCommand, ListBucketAnalyticsConfigurationsCommand, ListBucketIntelligentTieringConfigurationsCommand, ListBucketInventoryConfigurationsCommand, ListBucketMetricsConfigurationsCommand, ListBucketsCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchBucket, PutBucketAccelerateConfigurationCommand, PutBucketAnalyticsConfigurationCommand, PutBucketCorsCommand, PutBucketEncryptionCommand, PutBucketIntelligentTieringConfigurationCommand, PutBucketInventoryConfigurationCommand, PutBucketLifecycleConfigurationCommand, PutBucketLoggingCommand, PutBucketMetricsConfigurationCommand, PutBucketNotificationConfigurationCommand, PutBucketOwnershipControlsCommand, PutBucketPolicyCommand, PutBucketReplicationCommand, PutBucketTaggingCommand, PutBucketVersioningCommand, PutBucketWebsiteCommand, PutObjectLockConfigurationCommand, PutPublicAccessBlockCommand, S3Client } from "@aws-sdk/client-s3";
|
|
13
13
|
import { AddRoleToInstanceProfileCommand, AddUserToGroupCommand, AttachGroupPolicyCommand, AttachRolePolicyCommand, AttachUserPolicyCommand, CreateAccessKeyCommand, CreateGroupCommand, CreateInstanceProfileCommand, CreateLoginProfileCommand, CreatePolicyCommand, CreatePolicyVersionCommand, CreateUserCommand, DeleteAccessKeyCommand, DeleteGroupCommand, DeleteGroupPolicyCommand, DeleteInstanceProfileCommand, DeleteLoginProfileCommand, DeletePolicyCommand, DeletePolicyVersionCommand, DeleteRolePolicyCommand, DeleteUserCommand, DeleteUserPermissionsBoundaryCommand, DeleteUserPolicyCommand, DetachGroupPolicyCommand, DetachRolePolicyCommand, DetachUserPolicyCommand, GetAccessKeyLastUsedCommand, GetGroupCommand, GetGroupPolicyCommand, GetInstanceProfileCommand, GetPolicyCommand, GetPolicyVersionCommand, GetRolePolicyCommand, GetUserCommand, GetUserPolicyCommand, IAMClient, ListAccessKeysCommand, ListAttachedGroupPoliciesCommand, ListAttachedUserPoliciesCommand, ListEntitiesForPolicyCommand, ListGroupPoliciesCommand, ListGroupsForUserCommand, ListPoliciesCommand, ListPolicyTagsCommand, ListPolicyVersionsCommand, ListUserPoliciesCommand, NoSuchEntityException, PutGroupPolicyCommand, PutRolePolicyCommand, PutUserPermissionsBoundaryCommand, PutUserPolicyCommand, RemoveRoleFromInstanceProfileCommand, RemoveUserFromGroupCommand, TagPolicyCommand, TagUserCommand, UntagPolicyCommand, UntagUserCommand, UpdateAccessKeyCommand, UpdateLoginProfileCommand } from "@aws-sdk/client-iam";
|
|
@@ -7309,6 +7309,16 @@ var LambdaCreateClientCache = class {
|
|
|
7309
7309
|
|
|
7310
7310
|
//#endregion
|
|
7311
7311
|
//#region src/provisioning/providers/lambda-function-provider.ts
|
|
7312
|
+
function isFunctionName(id) {
|
|
7313
|
+
return /^[A-Za-z0-9_-]{1,64}$/.test(id);
|
|
7314
|
+
}
|
|
7315
|
+
function functionIdentityToken(arn, lastModified) {
|
|
7316
|
+
if (typeof arn !== "string" || arn === "") return void 0;
|
|
7317
|
+
if (typeof lastModified !== "string" || lastModified === "") return void 0;
|
|
7318
|
+
const ms = Date.parse(lastModified);
|
|
7319
|
+
if (Number.isNaN(ms)) return void 0;
|
|
7320
|
+
return `${arn}@${ms}`;
|
|
7321
|
+
}
|
|
7312
7322
|
const SELF_NEEDLE_MIN_LENGTH$1 = 3;
|
|
7313
7323
|
function lambdaOperationSinks(logger, maskSecrets, namePairs, bag) {
|
|
7314
7324
|
const base = createMaskedLogSinks(logger, maskSecrets);
|
|
@@ -7544,6 +7554,7 @@ var LambdaFunctionProvider = class {
|
|
|
7544
7554
|
refuseImageFunctionUnsupported(logicalId, resourceType, properties);
|
|
7545
7555
|
let functionCreated = false;
|
|
7546
7556
|
let createdFunctionName;
|
|
7557
|
+
let createdFunctionIdentity;
|
|
7547
7558
|
const postCreateCleanup = { deleted: false };
|
|
7548
7559
|
try {
|
|
7549
7560
|
const tags = properties["Tags"] ? Object.fromEntries(desiredTags.map((tag) => [tag.Key, tag.Value])) : void 0;
|
|
@@ -7577,6 +7588,7 @@ var LambdaFunctionProvider = class {
|
|
|
7577
7588
|
const response = await (await this.createClient.get()).send(new CreateFunctionCommand(createParams));
|
|
7578
7589
|
functionCreated = true;
|
|
7579
7590
|
createdFunctionName = response.FunctionName || functionName;
|
|
7591
|
+
createdFunctionIdentity = functionIdentityToken(response.FunctionArn, response.LastModified);
|
|
7580
7592
|
const recursiveLoop = properties["RecursiveLoop"];
|
|
7581
7593
|
if (recursiveLoop !== void 0) await this.applyPostCreateConfig(() => this.lambdaClient.send(new PutFunctionRecursionConfigCommand({
|
|
7582
7594
|
FunctionName: functionName,
|
|
@@ -7612,6 +7624,7 @@ var LambdaFunctionProvider = class {
|
|
|
7612
7624
|
maxDelay: 5
|
|
7613
7625
|
}, { FunctionName: functionName });
|
|
7614
7626
|
await this.putRuntimeManagementConfig(functionName, runtimeManagementConfig);
|
|
7627
|
+
createdFunctionIdentity = void 0;
|
|
7615
7628
|
}, {
|
|
7616
7629
|
apiName: "PutRuntimeManagementConfig",
|
|
7617
7630
|
propertyName: "RuntimeManagementConfig",
|
|
@@ -7633,7 +7646,7 @@ var LambdaFunctionProvider = class {
|
|
|
7633
7646
|
if (functionCreated) markAuxiliaryFailure(error, logicalId);
|
|
7634
7647
|
const cause = error instanceof Error ? error : void 0;
|
|
7635
7648
|
const thrown = this.wrapMaskedError(log, error, (text) => new ProvisioningError(`Failed to create Lambda function ${logicalId}: ${text}`, resourceType, logicalId, functionName, cause ?? new Error(String(error))));
|
|
7636
|
-
if (createdFunctionName !== void 0 && !postCreateCleanup.deleted) markCreatedBeforeFailure(thrown, logicalId, resourceType, createdFunctionName);
|
|
7649
|
+
if (createdFunctionName !== void 0 && !postCreateCleanup.deleted) markCreatedBeforeFailure(thrown, logicalId, resourceType, createdFunctionName, createdFunctionIdentity);
|
|
7637
7650
|
throw thrown;
|
|
7638
7651
|
}
|
|
7639
7652
|
}
|
|
@@ -7830,6 +7843,7 @@ var LambdaFunctionProvider = class {
|
|
|
7830
7843
|
if (error instanceof ResourceNotFoundException) {
|
|
7831
7844
|
const clientRegion = await this.lambdaClient.config.region();
|
|
7832
7845
|
assertRegionMatch(clientRegion, context?.expectedRegion, resourceType, logicalId, physicalId);
|
|
7846
|
+
this.logFunctionGone(logicalId, physicalId, context);
|
|
7833
7847
|
return;
|
|
7834
7848
|
}
|
|
7835
7849
|
this.logger.warn(`Pre-delete VPC detach failed for ${physicalId}: ${describeAwsFailure(error).detail} — continuing with delete`);
|
|
@@ -7843,7 +7857,7 @@ var LambdaFunctionProvider = class {
|
|
|
7843
7857
|
if (error instanceof ResourceNotFoundException) {
|
|
7844
7858
|
const clientRegion = await this.lambdaClient.config.region();
|
|
7845
7859
|
assertRegionMatch(clientRegion, context?.expectedRegion, resourceType, logicalId, physicalId);
|
|
7846
|
-
this.
|
|
7860
|
+
this.logFunctionGone(logicalId, physicalId, context);
|
|
7847
7861
|
return;
|
|
7848
7862
|
}
|
|
7849
7863
|
const cause = error instanceof Error ? error : void 0;
|
|
@@ -8068,6 +8082,45 @@ var LambdaFunctionProvider = class {
|
|
|
8068
8082
|
}
|
|
8069
8083
|
return (crc ^ 4294967295) >>> 0;
|
|
8070
8084
|
}
|
|
8085
|
+
logFunctionGone(logicalId, physicalId, context) {
|
|
8086
|
+
if (context?.failedCreateOrphan === true) this.logger.info(safeMsg` Lambda function ${physicalId} (${logicalId}), which a failed deploy created, is already gone; nothing to delete`);
|
|
8087
|
+
else this.logger.debug(`Lambda function ${physicalId} does not exist, skipping deletion`);
|
|
8088
|
+
}
|
|
8089
|
+
async isSameResource(journaledPhysicalId, record, resourceType, context) {
|
|
8090
|
+
if (resourceType !== "AWS::Lambda::Function") return "unknown";
|
|
8091
|
+
if (!isFunctionName(journaledPhysicalId) || !isFunctionName(record.physicalId)) return "unknown";
|
|
8092
|
+
if (journaledPhysicalId === record.physicalId) return "same";
|
|
8093
|
+
if (journaledPhysicalId.toLowerCase() === record.physicalId.toLowerCase()) return "unknown";
|
|
8094
|
+
if (await this.lambdaClient.config.region() !== context.expectedRegion) return "unknown";
|
|
8095
|
+
const recordFn = await this.readFunctionIfExists(record.physicalId);
|
|
8096
|
+
if (recordFn === void 0) return "unknown";
|
|
8097
|
+
const journaledFn = await this.readFunctionIfExists(journaledPhysicalId);
|
|
8098
|
+
if (journaledFn === void 0) return "different";
|
|
8099
|
+
return journaledFn.arn === recordFn.arn ? "same" : "different";
|
|
8100
|
+
}
|
|
8101
|
+
async resourceIdentity(physicalId, resourceType, context) {
|
|
8102
|
+
if (resourceType !== "AWS::Lambda::Function" || !isFunctionName(physicalId)) return;
|
|
8103
|
+
if (await this.lambdaClient.config.region() !== context.expectedRegion) return void 0;
|
|
8104
|
+
const live = await this.readFunctionIfExists(physicalId);
|
|
8105
|
+
if (live === void 0) return RESOURCE_NOT_FOUND;
|
|
8106
|
+
return functionIdentityToken(live.arn, live.lastModified);
|
|
8107
|
+
}
|
|
8108
|
+
async readFunctionIfExists(functionName) {
|
|
8109
|
+
let response;
|
|
8110
|
+
try {
|
|
8111
|
+
response = await this.lambdaClient.send(new GetFunctionCommand({ FunctionName: functionName }));
|
|
8112
|
+
} catch (error) {
|
|
8113
|
+
if (error instanceof ResourceNotFoundException) return void 0;
|
|
8114
|
+
throw error;
|
|
8115
|
+
}
|
|
8116
|
+
if (response.Configuration?.FunctionName !== functionName) throw new Error("GetFunction answered for another function than the one asked for");
|
|
8117
|
+
const arn = response.Configuration.FunctionArn;
|
|
8118
|
+
if (typeof arn !== "string" || arn === "") throw new Error("GetFunction returned no FunctionArn");
|
|
8119
|
+
return {
|
|
8120
|
+
arn,
|
|
8121
|
+
lastModified: response.Configuration.LastModified
|
|
8122
|
+
};
|
|
8123
|
+
}
|
|
8071
8124
|
async getAttribute(physicalId, _resourceType, attributeName) {
|
|
8072
8125
|
if (attributeName !== "Arn" && attributeName !== "SnapStartResponse.ApplyOn" && attributeName !== "SnapStartResponse.OptimizationStatus") return;
|
|
8073
8126
|
try {
|
|
@@ -44968,4 +45021,4 @@ var ACMCertificateProvider = class {
|
|
|
44968
45021
|
|
|
44969
45022
|
//#endregion
|
|
44970
45023
|
export { ACMCertificateProvider, ASGProvider, AgentCoreBrowserProvider, AgentCoreCodeInterpreterProvider, AgentCoreEvaluatorProvider, AgentCoreRuntimeProvider, ApiGatewayProvider, ApiGatewayV2Provider, AppSyncProvider, BudgetsBudgetProvider, CloudFrontDistributionProvider, CloudFrontOACProvider, CloudFrontOAIProvider, CloudTrailProvider, CloudWatchAlarmProvider, CloudWatchAnomalyDetectorProvider, CodeBuildProvider, CodeCommitRepositoryProvider, CognitoUserPoolProvider, DLMLifecyclePolicyProvider, DocDBProvider, DocDBSubnetGroupProvider, DynamoDBGlobalTableProvider, DynamoDBTableProvider, EC2Provider, ECRProvider, ECSProvider, EFSProvider, ELBv2Provider, EMRClusterProvider, EMRInstanceFleetConfigProvider, EMRInstanceGroupConfigProvider, ElastiCacheProvider, EventBridgeBusProvider, EventBridgeRuleProvider, FSxFileSystemProvider, FirehoseProvider, GlueConnectionProvider, GlueCrawlerProvider, GlueJobProvider, GlueProvider, GlueSecurityConfigurationProvider, GlueTriggerProvider, GlueWorkflowProvider, IAMAccessKeyProvider, IAMInstanceProfileProvider, IAMManagedPolicyProvider, IAMPolicyProvider, IAMRoleProvider, IAMUserGroupProvider, KMSProvider, KinesisStreamConsumerProvider, KinesisStreamProvider, LambdaEventInvokeConfigProvider, LambdaEventSourceMappingProvider, LambdaFunctionProvider, LambdaLayerVersionProvider, LambdaMicrovmImageProvider, LambdaPermissionProvider, LambdaUrlProvider, LogsLogGroupProvider, NeptuneProvider, NestedStackProvider, PipesPipeProvider, RDSDBProxyEndpointProvider, RDSDBProxyProvider, RDSDBProxyTargetGroupProvider, RDSProvider, Route53Provider, S3BucketPolicyProvider, S3BucketProvider, S3DirectoryBucketProvider, S3TablesProvider, S3VectorsProvider, SNSSubscriptionProvider, SNSTopicPolicyProvider, SNSTopicProvider, SQSQueuePolicyProvider, SQSQueueProvider, SSMParameterProvider, SchedulerScheduleProvider, SecretsManagerSecretProvider, ServiceDiscoveryProvider, StepFunctionsProvider, WAFv2WebACLProvider, WaitConditionHandleProvider };
|
|
44971
|
-
//# sourceMappingURL=provider-classes-
|
|
45024
|
+
//# sourceMappingURL=provider-classes-CoJI5423.js.map
|