alchemy 0.22.4 → 0.24.0
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/lib/aws/bucket.d.ts.map +1 -1
- package/lib/aws/bucket.js +13 -12
- package/lib/aws/bucket.js.map +1 -1
- package/lib/aws/control/client.d.ts.map +1 -1
- package/lib/aws/control/client.js +5 -3
- package/lib/aws/control/client.js.map +1 -1
- package/lib/aws/control/properties.d.ts +11 -2
- package/lib/aws/control/properties.d.ts.map +1 -1
- package/lib/aws/control/properties.js +96 -19
- package/lib/aws/control/properties.js.map +1 -1
- package/lib/aws/control/resource.d.ts.map +1 -1
- package/lib/aws/control/resource.js +13 -4
- package/lib/aws/control/resource.js.map +1 -1
- package/lib/aws/control/types.d.ts +81069 -0
- package/lib/aws/control/types.d.ts.map +1 -0
- package/lib/aws/control/types.js +4 -0
- package/lib/aws/control/types.js.map +1 -0
- package/lib/aws/function.d.ts.map +1 -1
- package/lib/aws/function.js +51 -42
- package/lib/aws/function.js.map +1 -1
- package/lib/aws/index.d.ts +1 -0
- package/lib/aws/index.d.ts.map +1 -1
- package/lib/aws/index.js +1 -0
- package/lib/aws/index.js.map +1 -1
- package/lib/aws/policy-attachment.d.ts.map +1 -1
- package/lib/aws/policy-attachment.js +5 -4
- package/lib/aws/policy-attachment.js.map +1 -1
- package/lib/aws/policy.d.ts.map +1 -1
- package/lib/aws/policy.js +21 -20
- package/lib/aws/policy.js.map +1 -1
- package/lib/aws/queue.d.ts.map +1 -1
- package/lib/aws/queue.js +19 -15
- package/lib/aws/queue.js.map +1 -1
- package/lib/aws/retry.d.ts +5 -0
- package/lib/aws/retry.d.ts.map +1 -0
- package/lib/aws/retry.js +27 -0
- package/lib/aws/retry.js.map +1 -0
- package/lib/aws/role.d.ts.map +1 -1
- package/lib/aws/role.js +31 -30
- package/lib/aws/role.js.map +1 -1
- package/lib/aws/ses.d.ts.map +1 -1
- package/lib/aws/ses.js +27 -26
- package/lib/aws/ses.js.map +1 -1
- package/lib/aws/ssm-parameter.d.ts +150 -0
- package/lib/aws/ssm-parameter.d.ts.map +1 -0
- package/lib/aws/ssm-parameter.js +184 -0
- package/lib/aws/ssm-parameter.js.map +1 -0
- package/lib/aws/table.d.ts.map +1 -1
- package/lib/aws/table.js +9 -27
- package/lib/aws/table.js.map +1 -1
- package/lib/cloudflare/account-id.d.ts +1 -0
- package/lib/cloudflare/account-id.d.ts.map +1 -1
- package/lib/cloudflare/account-id.js.map +1 -1
- package/lib/cloudflare/api.d.ts.map +1 -1
- package/lib/cloudflare/api.js +22 -2
- package/lib/cloudflare/api.js.map +1 -1
- package/lib/cloudflare/bound.d.ts +1 -1
- package/lib/cloudflare/bound.d.ts.map +1 -1
- package/lib/cloudflare/index.d.ts +2 -1
- package/lib/cloudflare/index.d.ts.map +1 -1
- package/lib/cloudflare/index.js +2 -1
- package/lib/cloudflare/index.js.map +1 -1
- package/lib/cloudflare/queue-consumer.d.ts +7 -1
- package/lib/cloudflare/queue-consumer.d.ts.map +1 -1
- package/lib/cloudflare/queue-consumer.js +14 -0
- package/lib/cloudflare/queue-consumer.js.map +1 -1
- package/lib/cloudflare/queue.d.ts +27 -0
- package/lib/cloudflare/queue.d.ts.map +1 -1
- package/lib/cloudflare/queue.js +23 -0
- package/lib/cloudflare/queue.js.map +1 -1
- package/lib/cloudflare/route.d.ts +7 -0
- package/lib/cloudflare/route.d.ts.map +1 -1
- package/lib/cloudflare/route.js +44 -2
- package/lib/cloudflare/route.js.map +1 -1
- package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
- package/lib/cloudflare/worker-metadata.js +1 -2
- package/lib/cloudflare/worker-metadata.js.map +1 -1
- package/lib/cloudflare/worker.d.ts +2 -1
- package/lib/cloudflare/worker.d.ts.map +1 -1
- package/lib/cloudflare/worker.js +20 -9
- package/lib/cloudflare/worker.js.map +1 -1
- package/lib/cloudflare/workflow.d.ts +7 -0
- package/lib/cloudflare/workflow.d.ts.map +1 -1
- package/lib/cloudflare/workflow.js +2 -0
- package/lib/cloudflare/workflow.js.map +1 -1
- package/lib/cloudflare/wrangler.json.d.ts +1 -0
- package/lib/cloudflare/wrangler.json.d.ts.map +1 -1
- package/lib/cloudflare/wrangler.json.js +1 -0
- package/lib/cloudflare/wrangler.json.js.map +1 -1
- package/lib/destroy.js +1 -1
- package/lib/destroy.js.map +1 -1
- package/lib/dns/godaddy.d.ts.map +1 -1
- package/lib/dns/godaddy.js +2 -1
- package/lib/dns/godaddy.js.map +1 -1
- package/lib/fs/file-system-state-store.d.ts.map +1 -1
- package/lib/fs/file-system-state-store.js +14 -2
- package/lib/fs/file-system-state-store.js.map +1 -1
- package/lib/github/secret.d.ts.map +1 -1
- package/lib/github/secret.js +1 -0
- package/lib/github/secret.js.map +1 -1
- package/lib/neon/api.d.ts.map +1 -1
- package/lib/neon/api.js +2 -1
- package/lib/neon/api.js.map +1 -1
- package/lib/runtime/shims.d.ts +6 -0
- package/lib/runtime/shims.d.ts.map +1 -0
- package/lib/runtime/shims.js +27 -0
- package/lib/runtime/shims.js.map +1 -0
- package/lib/sentry/api.d.ts.map +1 -1
- package/lib/sentry/api.js +2 -1
- package/lib/sentry/api.js.map +1 -1
- package/lib/test/bun.d.ts.map +1 -1
- package/lib/test/bun.js +1 -7
- package/lib/test/bun.js.map +1 -1
- package/lib/test/prune.d.ts +2 -1
- package/lib/test/prune.d.ts.map +1 -1
- package/lib/test/prune.js +29 -5
- package/lib/test/prune.js.map +1 -1
- package/lib/test/vitest.d.ts +92 -0
- package/lib/test/vitest.d.ts.map +1 -0
- package/lib/test/vitest.js +94 -0
- package/lib/test/vitest.js.map +1 -0
- package/lib/upstash/api.d.ts.map +1 -1
- package/lib/upstash/api.js +2 -1
- package/lib/upstash/api.js.map +1 -1
- package/lib/util/retry.js +2 -2
- package/lib/util/retry.js.map +1 -1
- package/lib/util/safe-fetch.d.ts +2 -0
- package/lib/util/safe-fetch.d.ts.map +1 -0
- package/lib/util/safe-fetch.js +49 -0
- package/lib/util/safe-fetch.js.map +1 -0
- package/lib/vercel/api.d.ts.map +1 -1
- package/lib/vercel/api.js +2 -1
- package/lib/vercel/api.js.map +1 -1
- package/lib/web/vitepress/process-front-matter-files.d.ts.map +1 -1
- package/lib/web/vitepress/process-front-matter-files.js +11 -7
- package/lib/web/vitepress/process-front-matter-files.js.map +1 -1
- package/package.json +10 -6
- package/src/alchemy.ts +2 -2
- package/src/aws/bucket.ts +55 -36
- package/src/aws/control/client.ts +13 -13
- package/src/aws/control/properties.ts +96 -19
- package/src/aws/control/resource.ts +19 -3
- package/src/aws/control/types.ts +87235 -0
- package/src/aws/function.ts +233 -178
- package/src/aws/index.ts +1 -0
- package/src/aws/policy-attachment.ts +15 -10
- package/src/aws/policy.ts +75 -54
- package/src/aws/queue.ts +53 -36
- package/src/aws/retry.ts +38 -0
- package/src/aws/role.ts +121 -90
- package/src/aws/ses.ts +101 -73
- package/src/aws/ssm-parameter.ts +315 -0
- package/src/aws/table.ts +61 -90
- package/src/cloudflare/account-id.ts +2 -0
- package/src/cloudflare/api.ts +26 -3
- package/src/cloudflare/bound.ts +1 -1
- package/src/cloudflare/index.ts +2 -1
- package/src/cloudflare/queue-consumer.ts +27 -1
- package/src/cloudflare/queue.ts +29 -0
- package/src/cloudflare/route.ts +86 -2
- package/src/cloudflare/worker-metadata.ts +1 -2
- package/src/cloudflare/worker.ts +24 -10
- package/src/cloudflare/workflow.ts +8 -0
- package/src/cloudflare/wrangler.json.ts +8 -1
- package/src/destroy.ts +1 -1
- package/src/dns/godaddy.ts +3 -1
- package/src/fs/file-system-state-store.ts +16 -2
- package/src/github/secret.ts +2 -0
- package/src/neon/api.ts +2 -1
- package/src/sentry/api.ts +2 -1
- package/src/test/bun.ts +1 -7
- package/src/test/prune.ts +31 -4
- package/src/test/vitest.ts +209 -0
- package/src/upstash/api.ts +2 -1
- package/src/util/retry.ts +3 -3
- package/src/util/safe-fetch.ts +62 -0
- package/src/vercel/api.ts +2 -1
- package/src/web/vitepress/process-front-matter-files.ts +15 -7
- package/src/aws/control/types.d.ts +0 -85129
package/src/aws/bucket.ts
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
import type { Context } from "../context.ts";
|
|
14
14
|
import { Resource } from "../resource.ts";
|
|
15
15
|
import { ignore } from "../util/ignore.ts";
|
|
16
|
+
import { retry } from "./retry.ts";
|
|
16
17
|
|
|
17
18
|
/**
|
|
18
19
|
* Properties for creating or updating an S3 bucket
|
|
@@ -133,52 +134,60 @@ export const Bucket = Resource(
|
|
|
133
134
|
|
|
134
135
|
if (this.phase === "delete") {
|
|
135
136
|
await ignore(NoSuchBucket.name, () =>
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
137
|
+
retry(() =>
|
|
138
|
+
client.send(
|
|
139
|
+
new DeleteBucketCommand({
|
|
140
|
+
Bucket: props.bucketName,
|
|
141
|
+
}),
|
|
142
|
+
),
|
|
140
143
|
),
|
|
141
144
|
);
|
|
142
145
|
return this.destroy();
|
|
143
146
|
}
|
|
144
147
|
try {
|
|
145
148
|
// Check if bucket exists
|
|
146
|
-
await
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
149
|
+
await retry(() =>
|
|
150
|
+
client.send(
|
|
151
|
+
new HeadBucketCommand({
|
|
152
|
+
Bucket: props.bucketName,
|
|
153
|
+
}),
|
|
154
|
+
),
|
|
150
155
|
);
|
|
151
156
|
|
|
152
157
|
// Update tags if they changed and bucket exists
|
|
153
158
|
if (this.phase === "update" && props.tags) {
|
|
154
|
-
await
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
TagSet: Object.entries(props.tags).map(([Key, Value]) => ({
|
|
159
|
-
Key,
|
|
160
|
-
Value,
|
|
161
|
-
})),
|
|
162
|
-
},
|
|
163
|
-
}),
|
|
164
|
-
);
|
|
165
|
-
}
|
|
166
|
-
} catch (error: any) {
|
|
167
|
-
if (error.name === "NotFound") {
|
|
168
|
-
// Create bucket if it doesn't exist
|
|
169
|
-
await client.send(
|
|
170
|
-
new CreateBucketCommand({
|
|
171
|
-
Bucket: props.bucketName,
|
|
172
|
-
// Add tags during creation if specified
|
|
173
|
-
...(props.tags && {
|
|
159
|
+
await retry(() =>
|
|
160
|
+
client.send(
|
|
161
|
+
new PutBucketTaggingCommand({
|
|
162
|
+
Bucket: props.bucketName,
|
|
174
163
|
Tagging: {
|
|
175
|
-
TagSet: Object.entries(props.tags).map(([Key, Value]) => ({
|
|
164
|
+
TagSet: Object.entries(props.tags!).map(([Key, Value]) => ({
|
|
176
165
|
Key,
|
|
177
166
|
Value,
|
|
178
167
|
})),
|
|
179
168
|
},
|
|
180
169
|
}),
|
|
181
|
-
|
|
170
|
+
),
|
|
171
|
+
);
|
|
172
|
+
}
|
|
173
|
+
} catch (error: any) {
|
|
174
|
+
if (error.name === "NotFound") {
|
|
175
|
+
// Create bucket if it doesn't exist
|
|
176
|
+
await retry(() =>
|
|
177
|
+
client.send(
|
|
178
|
+
new CreateBucketCommand({
|
|
179
|
+
Bucket: props.bucketName,
|
|
180
|
+
// Add tags during creation if specified
|
|
181
|
+
...(props.tags && {
|
|
182
|
+
Tagging: {
|
|
183
|
+
TagSet: Object.entries(props.tags).map(([Key, Value]) => ({
|
|
184
|
+
Key,
|
|
185
|
+
Value,
|
|
186
|
+
})),
|
|
187
|
+
},
|
|
188
|
+
}),
|
|
189
|
+
}),
|
|
190
|
+
),
|
|
182
191
|
);
|
|
183
192
|
} else {
|
|
184
193
|
throw error;
|
|
@@ -188,11 +197,19 @@ export const Bucket = Resource(
|
|
|
188
197
|
// Get bucket details
|
|
189
198
|
const [locationResponse, versioningResponse, aclResponse] =
|
|
190
199
|
await Promise.all([
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
200
|
+
retry(() =>
|
|
201
|
+
client.send(
|
|
202
|
+
new GetBucketLocationCommand({ Bucket: props.bucketName }),
|
|
203
|
+
),
|
|
204
|
+
),
|
|
205
|
+
retry(() =>
|
|
206
|
+
client.send(
|
|
207
|
+
new GetBucketVersioningCommand({ Bucket: props.bucketName }),
|
|
208
|
+
),
|
|
209
|
+
),
|
|
210
|
+
retry(() =>
|
|
211
|
+
client.send(new GetBucketAclCommand({ Bucket: props.bucketName })),
|
|
194
212
|
),
|
|
195
|
-
client.send(new GetBucketAclCommand({ Bucket: props.bucketName })),
|
|
196
213
|
]);
|
|
197
214
|
|
|
198
215
|
const region = locationResponse.LocationConstraint || "us-east-1";
|
|
@@ -201,8 +218,10 @@ export const Bucket = Resource(
|
|
|
201
218
|
let tags = props.tags;
|
|
202
219
|
if (!tags) {
|
|
203
220
|
try {
|
|
204
|
-
const taggingResponse = await
|
|
205
|
-
|
|
221
|
+
const taggingResponse = await retry(() =>
|
|
222
|
+
client.send(
|
|
223
|
+
new GetBucketTaggingCommand({ Bucket: props.bucketName }),
|
|
224
|
+
),
|
|
206
225
|
);
|
|
207
226
|
tags = Object.fromEntries(
|
|
208
227
|
taggingResponse.TagSet?.map(({ Key, Value }) => [Key, Value]) || [],
|
|
@@ -2,6 +2,7 @@ import { fromNodeProviderChain } from "@aws-sdk/credential-providers";
|
|
|
2
2
|
import { loadConfig } from "@aws-sdk/node-config-provider";
|
|
3
3
|
import { AwsClient } from "aws4fetch";
|
|
4
4
|
|
|
5
|
+
import { safeFetch } from "../../util/safe-fetch.ts";
|
|
5
6
|
import {
|
|
6
7
|
AlreadyExistsError,
|
|
7
8
|
CloudControlError,
|
|
@@ -202,18 +203,17 @@ export class CloudControlClient {
|
|
|
202
203
|
identifier: string,
|
|
203
204
|
): Promise<Record<string, any> | undefined> {
|
|
204
205
|
try {
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
);
|
|
206
|
+
const resource = await this.fetch<{
|
|
207
|
+
Identifier: string;
|
|
208
|
+
TypeName: string;
|
|
209
|
+
ResourceDescription: {
|
|
210
|
+
Properties: string;
|
|
211
|
+
};
|
|
212
|
+
}>("GetResource", {
|
|
213
|
+
TypeName: typeName,
|
|
214
|
+
Identifier: identifier,
|
|
215
|
+
});
|
|
216
|
+
return JSON.parse(resource.ResourceDescription.Properties);
|
|
217
217
|
} catch (error: any) {
|
|
218
218
|
if (error instanceof ResourceNotFoundException) {
|
|
219
219
|
return undefined;
|
|
@@ -366,7 +366,7 @@ export class CloudControlClient {
|
|
|
366
366
|
},
|
|
367
367
|
] as const;
|
|
368
368
|
const signedRequest = await this.client.sign(...args);
|
|
369
|
-
const response = await
|
|
369
|
+
const response = await safeFetch(signedRequest);
|
|
370
370
|
|
|
371
371
|
if (!response.ok) {
|
|
372
372
|
const data: any = await response.json();
|
|
@@ -120,6 +120,7 @@ const properties = {
|
|
|
120
120
|
"DistributionDomainName",
|
|
121
121
|
"DistributionHostedZoneId",
|
|
122
122
|
"DomainName",
|
|
123
|
+
"DomainNameArn",
|
|
123
124
|
"RegionalDomainName",
|
|
124
125
|
"RegionalHostedZoneId",
|
|
125
126
|
],
|
|
@@ -533,7 +534,11 @@ const properties = {
|
|
|
533
534
|
],
|
|
534
535
|
},
|
|
535
536
|
AutoScaling: {
|
|
536
|
-
AutoScalingGroup: [
|
|
537
|
+
AutoScalingGroup: [
|
|
538
|
+
"AutoScalingGroupARN",
|
|
539
|
+
"AutoScalingGroupName",
|
|
540
|
+
"InstanceId",
|
|
541
|
+
],
|
|
537
542
|
LaunchConfiguration: [
|
|
538
543
|
"AssociatePublicIpAddress",
|
|
539
544
|
"BlockDeviceMappings",
|
|
@@ -757,6 +762,18 @@ const properties = {
|
|
|
757
762
|
"GuardrailIdentifier",
|
|
758
763
|
"Version",
|
|
759
764
|
],
|
|
765
|
+
IntelligentPromptRouter: [
|
|
766
|
+
"CreatedAt",
|
|
767
|
+
"Description",
|
|
768
|
+
"FallbackModel",
|
|
769
|
+
"Models",
|
|
770
|
+
"PromptRouterArn",
|
|
771
|
+
"PromptRouterName",
|
|
772
|
+
"RoutingCriteria",
|
|
773
|
+
"Status",
|
|
774
|
+
"Type",
|
|
775
|
+
"UpdatedAt",
|
|
776
|
+
],
|
|
760
777
|
KnowledgeBase: [
|
|
761
778
|
"CreatedAt",
|
|
762
779
|
"FailureReasons",
|
|
@@ -1092,7 +1109,6 @@ const properties = {
|
|
|
1092
1109
|
"ETag",
|
|
1093
1110
|
"Id",
|
|
1094
1111
|
"LastModifiedTime",
|
|
1095
|
-
"ManagedCertificateRequest",
|
|
1096
1112
|
"Name",
|
|
1097
1113
|
"Status",
|
|
1098
1114
|
],
|
|
@@ -1537,7 +1553,14 @@ const properties = {
|
|
|
1537
1553
|
"SubnetArns",
|
|
1538
1554
|
"VpcEndpointId",
|
|
1539
1555
|
],
|
|
1540
|
-
LocationAzureBlob: [
|
|
1556
|
+
LocationAzureBlob: [
|
|
1557
|
+
"AzureBlobContainerUrl",
|
|
1558
|
+
"CmkSecretConfig.SecretArn",
|
|
1559
|
+
"LocationArn",
|
|
1560
|
+
"LocationUri",
|
|
1561
|
+
"ManagedSecretConfig",
|
|
1562
|
+
"ManagedSecretConfig.SecretArn",
|
|
1563
|
+
],
|
|
1541
1564
|
LocationEFS: [
|
|
1542
1565
|
"Ec2Config",
|
|
1543
1566
|
"EfsFilesystemArn",
|
|
@@ -1571,14 +1594,16 @@ const properties = {
|
|
|
1571
1594
|
],
|
|
1572
1595
|
LocationHDFS: ["LocationArn", "LocationUri"],
|
|
1573
1596
|
LocationNFS: ["LocationArn", "LocationUri"],
|
|
1574
|
-
LocationObjectStorage: [
|
|
1597
|
+
LocationObjectStorage: [
|
|
1598
|
+
"BucketName",
|
|
1599
|
+
"CmkSecretConfig.SecretArn",
|
|
1600
|
+
"LocationArn",
|
|
1601
|
+
"LocationUri",
|
|
1602
|
+
"ManagedSecretConfig",
|
|
1603
|
+
"ManagedSecretConfig.SecretArn",
|
|
1604
|
+
],
|
|
1575
1605
|
LocationS3: ["LocationArn", "LocationUri", "S3BucketArn"],
|
|
1576
1606
|
LocationSMB: ["LocationArn", "LocationUri"],
|
|
1577
|
-
StorageSystem: [
|
|
1578
|
-
"ConnectivityStatus",
|
|
1579
|
-
"SecretsManagerArn",
|
|
1580
|
-
"StorageSystemArn",
|
|
1581
|
-
],
|
|
1582
1607
|
Task: [
|
|
1583
1608
|
"DestinationLocationArn",
|
|
1584
1609
|
"DestinationNetworkInterfaceArns",
|
|
@@ -1632,6 +1657,16 @@ const properties = {
|
|
|
1632
1657
|
"RootDomainUnitId",
|
|
1633
1658
|
"Status",
|
|
1634
1659
|
],
|
|
1660
|
+
DomainUnit: [
|
|
1661
|
+
"CreatedAt",
|
|
1662
|
+
"DomainId",
|
|
1663
|
+
"DomainIdentifier",
|
|
1664
|
+
"Id",
|
|
1665
|
+
"Identifier",
|
|
1666
|
+
"LastUpdatedAt",
|
|
1667
|
+
"ParentDomainUnitId",
|
|
1668
|
+
"ParentDomainUnitIdentifier",
|
|
1669
|
+
],
|
|
1635
1670
|
Environment: [
|
|
1636
1671
|
"AwsAccountId",
|
|
1637
1672
|
"AwsAccountRegion",
|
|
@@ -1686,15 +1721,29 @@ const properties = {
|
|
|
1686
1721
|
"GroupName",
|
|
1687
1722
|
"Id",
|
|
1688
1723
|
],
|
|
1724
|
+
Owner: ["DomainIdentifier", "EntityIdentifier", "EntityType", "Owner"],
|
|
1689
1725
|
Project: [
|
|
1690
1726
|
"CreatedAt",
|
|
1691
1727
|
"CreatedBy",
|
|
1692
1728
|
"DomainId",
|
|
1693
1729
|
"DomainIdentifier",
|
|
1730
|
+
"DomainUnitId",
|
|
1694
1731
|
"Id",
|
|
1695
1732
|
"LastUpdatedAt",
|
|
1733
|
+
"ProjectProfileId",
|
|
1734
|
+
"ProjectStatus",
|
|
1696
1735
|
],
|
|
1697
1736
|
ProjectMembership: ["DomainIdentifier", "Member", "ProjectIdentifier"],
|
|
1737
|
+
ProjectProfile: [
|
|
1738
|
+
"CreatedAt",
|
|
1739
|
+
"CreatedBy",
|
|
1740
|
+
"DomainId",
|
|
1741
|
+
"DomainIdentifier",
|
|
1742
|
+
"DomainUnitId",
|
|
1743
|
+
"Id",
|
|
1744
|
+
"Identifier",
|
|
1745
|
+
"LastUpdatedAt",
|
|
1746
|
+
],
|
|
1698
1747
|
SubscriptionTarget: [
|
|
1699
1748
|
"CreatedAt",
|
|
1700
1749
|
"CreatedBy",
|
|
@@ -1949,7 +1998,6 @@ const properties = {
|
|
|
1949
1998
|
EIP: [
|
|
1950
1999
|
"Address",
|
|
1951
2000
|
"AllocationId",
|
|
1952
|
-
"Domain",
|
|
1953
2001
|
"IpamPoolId",
|
|
1954
2002
|
"NetworkBorderGroup",
|
|
1955
2003
|
"PublicIp",
|
|
@@ -2180,6 +2228,7 @@ const properties = {
|
|
|
2180
2228
|
"AlternatePathHints",
|
|
2181
2229
|
"Explanations",
|
|
2182
2230
|
"FilterInArns",
|
|
2231
|
+
"FilterOutArns",
|
|
2183
2232
|
"ForwardPathComponents",
|
|
2184
2233
|
"NetworkInsightsAnalysisArn",
|
|
2185
2234
|
"NetworkInsightsAnalysisId",
|
|
@@ -2591,7 +2640,6 @@ const properties = {
|
|
|
2591
2640
|
PrimaryTaskSet: ["Cluster", "Service"],
|
|
2592
2641
|
Service: [
|
|
2593
2642
|
"Cluster",
|
|
2594
|
-
"DeploymentController",
|
|
2595
2643
|
"LaunchType",
|
|
2596
2644
|
"Name",
|
|
2597
2645
|
"Role",
|
|
@@ -3064,7 +3112,6 @@ const properties = {
|
|
|
3064
3112
|
"FleetId",
|
|
3065
3113
|
"GameServerContainerGroupDefinitionArn",
|
|
3066
3114
|
"InstanceType",
|
|
3067
|
-
"Locations",
|
|
3068
3115
|
"MaximumGameServerContainerGroupsPerInstance",
|
|
3069
3116
|
"PerInstanceContainerGroupDefinitionArn",
|
|
3070
3117
|
"Status",
|
|
@@ -3084,6 +3131,7 @@ const properties = {
|
|
|
3084
3131
|
"CertificateConfiguration",
|
|
3085
3132
|
"ComputeType",
|
|
3086
3133
|
"EC2InstanceType",
|
|
3134
|
+
"FleetArn",
|
|
3087
3135
|
"FleetId",
|
|
3088
3136
|
"FleetType",
|
|
3089
3137
|
"InstanceRoleARN",
|
|
@@ -3822,7 +3870,7 @@ const properties = {
|
|
|
3822
3870
|
],
|
|
3823
3871
|
},
|
|
3824
3872
|
Kendra: {
|
|
3825
|
-
DataSource: ["Arn", "Id", "Type"],
|
|
3873
|
+
DataSource: ["Arn", "Id", "IndexId", "Type"],
|
|
3826
3874
|
Faq: [
|
|
3827
3875
|
"Arn",
|
|
3828
3876
|
"Description",
|
|
@@ -4328,7 +4376,7 @@ const properties = {
|
|
|
4328
4376
|
Queue: ["Arn", "Name", "Name"],
|
|
4329
4377
|
},
|
|
4330
4378
|
MediaLive: {
|
|
4331
|
-
Channel: ["
|
|
4379
|
+
Channel: ["Arn", "Inputs", "Vpc"],
|
|
4332
4380
|
ChannelPlacementGroup: ["Arn", "Channels", "ClusterId", "Id", "State"],
|
|
4333
4381
|
CloudWatchAlarmTemplate: [
|
|
4334
4382
|
"Arn",
|
|
@@ -4848,6 +4896,22 @@ const properties = {
|
|
|
4848
4896
|
"Status",
|
|
4849
4897
|
"StorageCapacity",
|
|
4850
4898
|
"Type",
|
|
4899
|
+
"Uuid",
|
|
4900
|
+
],
|
|
4901
|
+
WorkflowVersion: [
|
|
4902
|
+
"Accelerators",
|
|
4903
|
+
"Arn",
|
|
4904
|
+
"CreationTime",
|
|
4905
|
+
"DefinitionUri",
|
|
4906
|
+
"Engine",
|
|
4907
|
+
"Main",
|
|
4908
|
+
"ParameterTemplate",
|
|
4909
|
+
"Status",
|
|
4910
|
+
"Type",
|
|
4911
|
+
"Uuid",
|
|
4912
|
+
"VersionName",
|
|
4913
|
+
"WorkflowBucketOwnerId",
|
|
4914
|
+
"WorkflowId",
|
|
4851
4915
|
],
|
|
4852
4916
|
},
|
|
4853
4917
|
OpenSearchServerless: {
|
|
@@ -5808,11 +5872,8 @@ const properties = {
|
|
|
5808
5872
|
"IpAddressCount",
|
|
5809
5873
|
"Name",
|
|
5810
5874
|
"OutpostArn",
|
|
5811
|
-
"OutpostArn",
|
|
5812
|
-
"PreferredInstanceType",
|
|
5813
5875
|
"PreferredInstanceType",
|
|
5814
5876
|
"ResolverEndpointId",
|
|
5815
|
-
"ResolverEndpointType",
|
|
5816
5877
|
"SecurityGroupIds",
|
|
5817
5878
|
],
|
|
5818
5879
|
ResolverQueryLoggingConfig: [
|
|
@@ -5911,6 +5972,14 @@ const properties = {
|
|
|
5911
5972
|
StorageLensGroup: ["Name", "StorageLensGroupArn"],
|
|
5912
5973
|
},
|
|
5913
5974
|
S3Express: {
|
|
5975
|
+
AccessPoint: [
|
|
5976
|
+
"Arn",
|
|
5977
|
+
"Bucket",
|
|
5978
|
+
"BucketAccountId",
|
|
5979
|
+
"Name",
|
|
5980
|
+
"NetworkOrigin",
|
|
5981
|
+
"VpcConfiguration",
|
|
5982
|
+
],
|
|
5914
5983
|
BucketPolicy: ["Bucket"],
|
|
5915
5984
|
DirectoryBucket: [
|
|
5916
5985
|
"Arn",
|
|
@@ -5983,6 +6052,11 @@ const properties = {
|
|
|
5983
6052
|
"AddonSubscriptionArn",
|
|
5984
6053
|
"AddonSubscriptionId",
|
|
5985
6054
|
],
|
|
6055
|
+
MailManagerAddressList: [
|
|
6056
|
+
"AddressListArn",
|
|
6057
|
+
"AddressListId",
|
|
6058
|
+
"AddressListName",
|
|
6059
|
+
],
|
|
5986
6060
|
MailManagerArchive: [
|
|
5987
6061
|
"ArchiveArn",
|
|
5988
6062
|
"ArchiveId",
|
|
@@ -6042,6 +6116,9 @@ const properties = {
|
|
|
6042
6116
|
Plan: ["Arn", "ContactId"],
|
|
6043
6117
|
Rotation: ["Arn"],
|
|
6044
6118
|
},
|
|
6119
|
+
SSMGuiConnect: {
|
|
6120
|
+
Preferences: ["AccountId"],
|
|
6121
|
+
},
|
|
6045
6122
|
SSMIncidents: {
|
|
6046
6123
|
ReplicationSet: ["Arn"],
|
|
6047
6124
|
ResponsePlan: ["Arn", "Name"],
|
|
@@ -6074,6 +6151,7 @@ const properties = {
|
|
|
6074
6151
|
"AppArn",
|
|
6075
6152
|
"AppName",
|
|
6076
6153
|
"AppType",
|
|
6154
|
+
"BuiltInLifecycleConfigArn",
|
|
6077
6155
|
"DomainId",
|
|
6078
6156
|
"ResourceSpec",
|
|
6079
6157
|
"Tags",
|
|
@@ -6578,7 +6656,6 @@ const properties = {
|
|
|
6578
6656
|
],
|
|
6579
6657
|
ScheduledQuery: [
|
|
6580
6658
|
"Arn",
|
|
6581
|
-
"ClientToken",
|
|
6582
6659
|
"ErrorReportConfiguration",
|
|
6583
6660
|
"KmsKeyId",
|
|
6584
6661
|
"NotificationConfiguration",
|
|
@@ -6939,7 +7016,7 @@ const properties = {
|
|
|
6939
7016
|
TransactionSearchConfig: ["AccountId"],
|
|
6940
7017
|
},
|
|
6941
7018
|
Alexa: {
|
|
6942
|
-
|
|
7019
|
+
ASKSkill: ["VendorId"],
|
|
6943
7020
|
},
|
|
6944
7021
|
};
|
|
6945
7022
|
|
|
@@ -9,6 +9,7 @@ import { createCloudControlClient, type ProgressEvent } from "./client.ts";
|
|
|
9
9
|
import {
|
|
10
10
|
AlreadyExistsError,
|
|
11
11
|
ConcurrentOperationError,
|
|
12
|
+
NotFoundError,
|
|
12
13
|
UpdateFailedError,
|
|
13
14
|
} from "./error.ts";
|
|
14
15
|
import readOnlyPropertiesMap from "./properties.ts";
|
|
@@ -206,7 +207,19 @@ export const CloudControlResource = Resource(
|
|
|
206
207
|
// register a catch-all for AWS::* resources (Resources created with the Control API)
|
|
207
208
|
registerDynamicResource((typeName) => {
|
|
208
209
|
if (typeName.startsWith("AWS::")) {
|
|
209
|
-
return Resource(
|
|
210
|
+
return Resource(
|
|
211
|
+
typeName,
|
|
212
|
+
function (
|
|
213
|
+
this: Context<CloudControlResource, CloudControlResourceProps>,
|
|
214
|
+
id: string,
|
|
215
|
+
props: Omit<CloudControlResourceProps, "typeName">,
|
|
216
|
+
) {
|
|
217
|
+
return CloudControlLifecycle.bind(this)(id, {
|
|
218
|
+
typeName,
|
|
219
|
+
...props,
|
|
220
|
+
});
|
|
221
|
+
},
|
|
222
|
+
) as unknown as Provider;
|
|
210
223
|
}
|
|
211
224
|
return undefined;
|
|
212
225
|
});
|
|
@@ -228,8 +241,11 @@ async function CloudControlLifecycle(
|
|
|
228
241
|
try {
|
|
229
242
|
await client.deleteResource(props.typeName, this.output.id);
|
|
230
243
|
} catch (error) {
|
|
231
|
-
|
|
232
|
-
|
|
244
|
+
if (error instanceof NotFoundError) {
|
|
245
|
+
// great, this is the desired outcome
|
|
246
|
+
} else {
|
|
247
|
+
throw error;
|
|
248
|
+
}
|
|
233
249
|
}
|
|
234
250
|
}
|
|
235
251
|
return this.destroy();
|