alchemy 2.0.0-beta.1 → 2.0.0-beta.2
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/bin/alchemy-effect.js +31 -16
- package/bin/alchemy-effect.js.map +1 -1
- package/bin/alchemy-effect.sh +2 -3
- package/bin/alchemy-effect.ts +3 -3
- package/lib/cli/index.d.ts +39 -36
- package/lib/cli/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/AWS/ACM/Certificate.ts +49 -46
- package/src/AWS/AutoScaling/AutoScalingGroup.ts +4 -1
- package/src/AWS/AutoScaling/LaunchTemplate.ts +3 -1
- package/src/AWS/AutoScaling/ScalingPolicy.ts +4 -1
- package/src/AWS/CloudFront/Distribution.ts +4 -1
- package/src/AWS/CloudFront/Function.ts +4 -1
- package/src/AWS/CloudFront/Invalidation.ts +4 -1
- package/src/AWS/CloudFront/KeyValueStore.ts +4 -1
- package/src/AWS/CloudFront/KvEntries.ts +4 -1
- package/src/AWS/CloudFront/KvRoutesUpdate.ts +4 -1
- package/src/AWS/CloudFront/OriginAccessControl.ts +4 -1
- package/src/AWS/CloudWatch/Alarm.ts +4 -1
- package/src/AWS/CloudWatch/AlarmMuteRule.ts +4 -1
- package/src/AWS/CloudWatch/AnomalyDetector.ts +4 -1
- package/src/AWS/CloudWatch/CompositeAlarm.ts +4 -1
- package/src/AWS/CloudWatch/Dashboard.ts +4 -1
- package/src/AWS/CloudWatch/InsightRule.ts +4 -1
- package/src/AWS/CloudWatch/MetricStream.ts +4 -1
- package/src/AWS/DynamoDB/Table.ts +3 -1
- package/src/AWS/EC2/EIP.ts +4 -1
- package/src/AWS/EC2/EgressOnlyInternetGateway.ts +4 -1
- package/src/AWS/EC2/Instance.ts +3 -1
- package/src/AWS/EC2/InternetGateway.ts +4 -1
- package/src/AWS/EC2/NatGateway.ts +4 -1
- package/src/AWS/EC2/NetworkAcl.ts +4 -1
- package/src/AWS/EC2/NetworkAclAssociation.ts +4 -1
- package/src/AWS/EC2/NetworkAclEntry.ts +4 -1
- package/src/AWS/EC2/Route.ts +4 -1
- package/src/AWS/EC2/RouteTable.ts +4 -1
- package/src/AWS/EC2/RouteTableAssociation.ts +4 -1
- package/src/AWS/EC2/SecurityGroup.ts +4 -1
- package/src/AWS/EC2/SecurityGroupRule.ts +4 -1
- package/src/AWS/EC2/Subnet.ts +4 -1
- package/src/AWS/EC2/Vpc.ts +4 -1
- package/src/AWS/EC2/VpcEndpoint.ts +4 -1
- package/src/AWS/ECR/Repository.ts +4 -1
- package/src/AWS/ECS/Cluster.ts +4 -1
- package/src/AWS/ECS/Service.ts +4 -1
- package/src/AWS/ECS/Task.ts +3 -1
- package/src/AWS/EKS/AccessEntry.ts +4 -1
- package/src/AWS/EKS/Addon.ts +4 -1
- package/src/AWS/EKS/Cluster.ts +3 -1
- package/src/AWS/EKS/PodIdentityAssociation.ts +4 -1
- package/src/AWS/ELBv2/Listener.ts +4 -1
- package/src/AWS/ELBv2/LoadBalancer.ts +4 -1
- package/src/AWS/ELBv2/TargetGroup.ts +4 -1
- package/src/AWS/EventBridge/EventBus.ts +4 -1
- package/src/AWS/EventBridge/Permission.ts +4 -1
- package/src/AWS/EventBridge/Rule.ts +4 -1
- package/src/AWS/IAM/AccessKey.ts +4 -1
- package/src/AWS/IAM/AccountAlias.ts +4 -1
- package/src/AWS/IAM/AccountPasswordPolicy.ts +4 -1
- package/src/AWS/IAM/Group.ts +4 -1
- package/src/AWS/IAM/GroupMembership.ts +4 -1
- package/src/AWS/IAM/InstanceProfile.ts +4 -1
- package/src/AWS/IAM/LoginProfile.ts +4 -1
- package/src/AWS/IAM/OpenIDConnectProvider.ts +4 -1
- package/src/AWS/IAM/Policy.ts +4 -1
- package/src/AWS/IAM/Role.ts +4 -1
- package/src/AWS/IAM/SAMLProvider.ts +4 -1
- package/src/AWS/IAM/SSHPublicKey.ts +4 -1
- package/src/AWS/IAM/ServerCertificate.ts +4 -1
- package/src/AWS/IAM/ServiceSpecificCredential.ts +4 -1
- package/src/AWS/IAM/SigningCertificate.ts +4 -1
- package/src/AWS/IAM/User.ts +4 -1
- package/src/AWS/IAM/VirtualMFADevice.ts +4 -1
- package/src/AWS/IdentityCenter/AccountAssignment.ts +4 -1
- package/src/AWS/IdentityCenter/Group.ts +4 -1
- package/src/AWS/IdentityCenter/Instance.ts +4 -1
- package/src/AWS/IdentityCenter/PermissionSet.ts +4 -1
- package/src/AWS/Kinesis/Stream.ts +4 -1
- package/src/AWS/Kinesis/StreamConsumer.ts +4 -1
- package/src/AWS/Lambda/EventSourceMapping.ts +4 -1
- package/src/AWS/Lambda/Function.ts +3 -1
- package/src/AWS/Lambda/Permission.ts +4 -1
- package/src/AWS/Logs/LogGroup.ts +4 -1
- package/src/AWS/Organizations/Account.ts +4 -1
- package/src/AWS/Organizations/DelegatedAdministrator.ts +4 -1
- package/src/AWS/Organizations/Organization.ts +4 -1
- package/src/AWS/Organizations/OrganizationResourcePolicy.ts +4 -1
- package/src/AWS/Organizations/OrganizationalUnit.ts +4 -1
- package/src/AWS/Organizations/Policy.ts +4 -1
- package/src/AWS/Organizations/PolicyAttachment.ts +4 -1
- package/src/AWS/Organizations/Root.ts +4 -1
- package/src/AWS/Organizations/RootPolicyType.ts +4 -1
- package/src/AWS/Organizations/TrustedServiceAccess.ts +4 -1
- package/src/AWS/Providers.ts +484 -438
- package/src/AWS/RDS/DBCluster.ts +4 -1
- package/src/AWS/RDS/DBClusterEndpoint.ts +4 -1
- package/src/AWS/RDS/DBClusterParameterGroup.ts +4 -1
- package/src/AWS/RDS/DBInstance.ts +4 -1
- package/src/AWS/RDS/DBParameterGroup.ts +4 -1
- package/src/AWS/RDS/DBProxy.ts +4 -1
- package/src/AWS/RDS/DBProxyEndpoint.ts +4 -1
- package/src/AWS/RDS/DBProxyTargetGroup.ts +4 -1
- package/src/AWS/RDS/DBSubnetGroup.ts +4 -1
- package/src/AWS/Route53/Record.ts +4 -1
- package/src/AWS/S3/Bucket.ts +3 -1
- package/src/AWS/SNS/Subscription.ts +4 -1
- package/src/AWS/SNS/Topic.ts +4 -1
- package/src/AWS/SQS/Queue.ts +3 -1
- package/src/AWS/Scheduler/Schedule.ts +4 -1
- package/src/AWS/Scheduler/ScheduleGroup.ts +4 -1
- package/src/AWS/SecretsManager/Secret.ts +4 -1
- package/src/AWS/Website/AssetDeployment.ts +4 -1
- package/src/Apply.ts +3 -3
- package/src/Binding.ts +18 -17
- package/src/Cloudflare/Container/ContainerApplication.ts +3 -1
- package/src/Cloudflare/D1/D1Database.ts +4 -1
- package/src/Cloudflare/KV/KVNamespace.ts +7 -4
- package/src/Cloudflare/Providers.ts +62 -60
- package/src/Cloudflare/R2/R2Bucket.ts +4 -1
- package/src/Cloudflare/R2/R2BucketBinding.ts +26 -31
- package/src/Cloudflare/Workers/Worker.ts +3 -1
- package/src/Cloudflare/Workers/Workflow.ts +3 -1
- package/src/Plan.ts +595 -596
- package/src/Platform.ts +9 -8
- package/src/Provider.ts +145 -23
- package/src/Resource.ts +10 -3
- package/src/Stack.ts +1 -1
- package/src/Util/service.ts +1 -1
- package/src/index.ts +10 -7
package/src/AWS/Providers.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { pipe } from "effect/Function";
|
|
3
1
|
import * as Layer from "effect/Layer";
|
|
4
|
-
import { CommandProvider } from "../Build/Command.ts";
|
|
5
|
-
import
|
|
6
|
-
import { RandomProvider } from "../Random.ts";
|
|
2
|
+
import { Command, CommandProvider } from "../Build/Command.ts";
|
|
3
|
+
import * as Provider from "../Provider.ts";
|
|
4
|
+
import { Random, RandomProvider } from "../Random.ts";
|
|
7
5
|
import * as Account from "./Account.ts";
|
|
8
6
|
import * as ACM from "./ACM/index.ts";
|
|
9
7
|
import * as Assets from "./Assets.ts";
|
|
@@ -34,446 +32,494 @@ import * as Scheduler from "./Scheduler/index.ts";
|
|
|
34
32
|
import * as SecretsManager from "./SecretsManager/index.ts";
|
|
35
33
|
import * as SNS from "./SNS/index.ts";
|
|
36
34
|
import * as SQS from "./SQS/index.ts";
|
|
37
|
-
import {
|
|
35
|
+
import { DefaultStageConfig } from "./StageConfig.ts";
|
|
38
36
|
import * as Website from "./Website/index.ts";
|
|
39
37
|
|
|
40
|
-
export
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
>;
|
|
38
|
+
export class Providers extends Provider.ProviderCollection<Providers>()(
|
|
39
|
+
"AWS",
|
|
40
|
+
) {}
|
|
44
41
|
|
|
45
|
-
/**
|
|
46
|
-
* AWS providers with optional Assets layer for S3-based code deployment.
|
|
47
|
-
* If the assets bucket exists (created via `alchemy-effect bootstrap`),
|
|
48
|
-
* Lambda functions will use S3 for code deployment instead of inline ZipFile.
|
|
49
|
-
*/
|
|
50
42
|
export const providers = () =>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
43
|
+
Layer.effect(
|
|
44
|
+
Providers,
|
|
45
|
+
Provider.collection([
|
|
46
|
+
Command,
|
|
47
|
+
Random,
|
|
48
|
+
ACM.Certificate,
|
|
49
|
+
AutoScaling.AutoScalingGroup,
|
|
50
|
+
AutoScaling.LaunchTemplate,
|
|
51
|
+
AutoScaling.ScalingPolicy,
|
|
52
|
+
CloudFront.Distribution,
|
|
53
|
+
CloudFront.Function,
|
|
54
|
+
CloudFront.Invalidation,
|
|
55
|
+
CloudFront.KeyValueStore,
|
|
56
|
+
CloudFront.KvEntries,
|
|
57
|
+
CloudFront.KvRoutesUpdate,
|
|
58
|
+
CloudFront.OriginAccessControl,
|
|
59
|
+
CloudWatch.Alarm,
|
|
60
|
+
CloudWatch.AlarmMuteRule,
|
|
61
|
+
CloudWatch.AnomalyDetector,
|
|
62
|
+
CloudWatch.CompositeAlarm,
|
|
63
|
+
CloudWatch.Dashboard,
|
|
64
|
+
CloudWatch.DescribeAlarmContributorsPolicy,
|
|
65
|
+
CloudWatch.DescribeAlarmHistoryPolicy,
|
|
66
|
+
CloudWatch.DescribeAlarmsForMetricPolicy,
|
|
67
|
+
CloudWatch.DescribeAlarmsPolicy,
|
|
68
|
+
CloudWatch.DescribeAnomalyDetectorsPolicy,
|
|
69
|
+
CloudWatch.DescribeInsightRulesPolicy,
|
|
70
|
+
CloudWatch.DisableAlarmActionsPolicy,
|
|
71
|
+
CloudWatch.DisableInsightRulesPolicy,
|
|
72
|
+
CloudWatch.EnableAlarmActionsPolicy,
|
|
73
|
+
CloudWatch.GetAlarmMuteRulePolicy,
|
|
74
|
+
CloudWatch.GetDashboardPolicy,
|
|
75
|
+
CloudWatch.GetInsightRuleReportPolicy,
|
|
76
|
+
CloudWatch.GetMetricDataPolicy,
|
|
77
|
+
CloudWatch.GetMetricStatisticsPolicy,
|
|
78
|
+
CloudWatch.GetMetricStreamPolicy,
|
|
79
|
+
CloudWatch.GetMetricWidgetImagePolicy,
|
|
80
|
+
CloudWatch.InsightRule,
|
|
81
|
+
CloudWatch.ListAlarmMuteRulesPolicy,
|
|
82
|
+
CloudWatch.ListDashboardsPolicy,
|
|
83
|
+
CloudWatch.ListManagedInsightRulesPolicy,
|
|
84
|
+
CloudWatch.ListMetricsPolicy,
|
|
85
|
+
CloudWatch.ListMetricStreamsPolicy,
|
|
86
|
+
CloudWatch.ListTagsForResourcePolicy,
|
|
87
|
+
CloudWatch.MetricStream,
|
|
88
|
+
CloudWatch.PutMetricDataPolicy,
|
|
89
|
+
CloudWatch.SetAlarmStatePolicy,
|
|
90
|
+
DynamoDB.BatchExecuteStatementPolicy,
|
|
91
|
+
DynamoDB.BatchGetItemPolicy,
|
|
92
|
+
DynamoDB.BatchWriteItemPolicy,
|
|
93
|
+
DynamoDB.DeleteItemPolicy,
|
|
94
|
+
DynamoDB.DescribeTablePolicy,
|
|
95
|
+
DynamoDB.DescribeTimeToLivePolicy,
|
|
96
|
+
DynamoDB.ExecuteStatementPolicy,
|
|
97
|
+
DynamoDB.ExecuteTransactionPolicy,
|
|
98
|
+
DynamoDB.GetItemPolicy,
|
|
99
|
+
DynamoDB.ListTablesPolicy,
|
|
100
|
+
DynamoDB.ListTagsOfResourcePolicy,
|
|
101
|
+
DynamoDB.PutItemPolicy,
|
|
102
|
+
DynamoDB.QueryPolicy,
|
|
103
|
+
DynamoDB.RestoreTableToPointInTimePolicy,
|
|
104
|
+
DynamoDB.ScanPolicy,
|
|
105
|
+
DynamoDB.Table,
|
|
106
|
+
DynamoDB.TransactGetItemsPolicy,
|
|
107
|
+
DynamoDB.TransactWriteItemsPolicy,
|
|
108
|
+
DynamoDB.UpdateItemPolicy,
|
|
109
|
+
DynamoDB.UpdateTimeToLivePolicy,
|
|
110
|
+
EC2.EgressOnlyInternetGateway,
|
|
111
|
+
EC2.EIP,
|
|
112
|
+
EC2.Instance,
|
|
113
|
+
EC2.InternetGateway,
|
|
114
|
+
EC2.NatGateway,
|
|
115
|
+
EC2.NetworkAcl,
|
|
116
|
+
EC2.NetworkAclAssociation,
|
|
117
|
+
EC2.NetworkAclEntry,
|
|
118
|
+
EC2.Route,
|
|
119
|
+
EC2.RouteTable,
|
|
120
|
+
EC2.RouteTableAssociation,
|
|
121
|
+
EC2.SecurityGroup,
|
|
122
|
+
EC2.SecurityGroupRule,
|
|
123
|
+
EC2.Subnet,
|
|
124
|
+
EC2.Vpc,
|
|
125
|
+
EC2.VpcEndpoint,
|
|
126
|
+
ECR.Repository,
|
|
127
|
+
ECS.Cluster,
|
|
128
|
+
ECS.DescribeTasksPolicy,
|
|
129
|
+
ECS.ListTasksPolicy,
|
|
130
|
+
ECS.RunTaskPolicy,
|
|
131
|
+
ECS.Service,
|
|
132
|
+
ECS.StopTaskPolicy,
|
|
133
|
+
ECS.Task,
|
|
134
|
+
EKS.AccessEntry,
|
|
135
|
+
EKS.Addon,
|
|
136
|
+
EKS.Cluster,
|
|
137
|
+
EKS.PodIdentityAssociation,
|
|
138
|
+
ELBv2.Listener,
|
|
139
|
+
ELBv2.LoadBalancer,
|
|
140
|
+
ELBv2.TargetGroup,
|
|
141
|
+
EventBridge.DescribeEventBusPolicy,
|
|
142
|
+
EventBridge.DescribeRulePolicy,
|
|
143
|
+
EventBridge.EventBus,
|
|
144
|
+
EventBridge.ListEventBusesPolicy,
|
|
145
|
+
EventBridge.ListRulesPolicy,
|
|
146
|
+
EventBridge.ListTargetsByRulePolicy,
|
|
147
|
+
EventBridge.Permission,
|
|
148
|
+
EventBridge.PutEventsPolicy,
|
|
149
|
+
EventBridge.Rule,
|
|
150
|
+
EventBridge.TestEventPatternPolicy,
|
|
151
|
+
EventBridge.ToLambdaPolicy,
|
|
152
|
+
EventBridge.ToQueuePolicy,
|
|
153
|
+
IAM.AccessKey,
|
|
154
|
+
IAM.AccountAlias,
|
|
155
|
+
IAM.AccountPasswordPolicy,
|
|
156
|
+
IAM.Group,
|
|
157
|
+
IAM.GroupMembership,
|
|
158
|
+
IAM.InstanceProfile,
|
|
159
|
+
IAM.LoginProfile,
|
|
160
|
+
IAM.OpenIDConnectProvider,
|
|
161
|
+
IAM.Policy,
|
|
162
|
+
IAM.Role,
|
|
163
|
+
IAM.SAMLProvider,
|
|
164
|
+
IAM.ServerCertificate,
|
|
165
|
+
IAM.ServiceSpecificCredential,
|
|
166
|
+
IAM.SigningCertificate,
|
|
167
|
+
IAM.SSHPublicKey,
|
|
168
|
+
IAM.User,
|
|
169
|
+
IAM.VirtualMFADevice,
|
|
170
|
+
IdentityCenter.AccountAssignment,
|
|
171
|
+
IdentityCenter.Group,
|
|
172
|
+
IdentityCenter.Instance,
|
|
173
|
+
IdentityCenter.PermissionSet,
|
|
174
|
+
Kinesis.DescribeAccountSettingsPolicy,
|
|
175
|
+
Kinesis.DescribeLimitsPolicy,
|
|
176
|
+
Kinesis.DescribeStreamConsumerPolicy,
|
|
177
|
+
Kinesis.DescribeStreamPolicy,
|
|
178
|
+
Kinesis.DescribeStreamSummaryPolicy,
|
|
179
|
+
Kinesis.GetRecordsPolicy,
|
|
180
|
+
Kinesis.GetResourcePolicyPolicy,
|
|
181
|
+
Kinesis.GetShardIteratorPolicy,
|
|
182
|
+
Kinesis.ListShardsPolicy,
|
|
183
|
+
Kinesis.ListStreamConsumersPolicy,
|
|
184
|
+
Kinesis.ListStreamsPolicy,
|
|
185
|
+
Kinesis.ListTagsForResourcePolicy,
|
|
186
|
+
Kinesis.PutRecordPolicy,
|
|
187
|
+
Kinesis.PutRecordsPolicy,
|
|
188
|
+
Kinesis.Stream,
|
|
189
|
+
Kinesis.StreamConsumer,
|
|
190
|
+
Kinesis.StreamSinkPolicy,
|
|
191
|
+
Kinesis.SubscribeToShardPolicy,
|
|
192
|
+
Lambda.BucketEventSourcePolicy,
|
|
193
|
+
Lambda.EventSourcePolicy,
|
|
194
|
+
Lambda.EventSourceMapping,
|
|
195
|
+
Lambda.Function,
|
|
196
|
+
Lambda.InvokeFunctionPolicy,
|
|
197
|
+
Lambda.Permission,
|
|
198
|
+
Lambda.QueueEventSourcePolicy,
|
|
199
|
+
Lambda.StreamEventSourcePolicy,
|
|
200
|
+
Lambda.TableEventSourcePolicy,
|
|
201
|
+
Lambda.TopicEventSourcePolicy,
|
|
202
|
+
Logs.LogGroup,
|
|
203
|
+
Organizations.Account,
|
|
204
|
+
Organizations.DelegatedAdministrator,
|
|
205
|
+
Organizations.Organization,
|
|
206
|
+
Organizations.OrganizationalUnit,
|
|
207
|
+
Organizations.OrganizationResourcePolicy,
|
|
208
|
+
Organizations.Policy,
|
|
209
|
+
Organizations.PolicyAttachment,
|
|
210
|
+
Organizations.Root,
|
|
211
|
+
Organizations.RootPolicyType,
|
|
212
|
+
Organizations.TrustedServiceAccess,
|
|
213
|
+
RDS.ConnectPolicy,
|
|
214
|
+
RDS.DBCluster,
|
|
215
|
+
RDS.DBClusterEndpoint,
|
|
216
|
+
RDS.DBClusterParameterGroup,
|
|
217
|
+
RDS.DBInstance,
|
|
218
|
+
RDS.DBParameterGroup,
|
|
219
|
+
RDS.DBProxy,
|
|
220
|
+
RDS.DBProxyEndpoint,
|
|
221
|
+
RDS.DBProxyTargetGroup,
|
|
222
|
+
RDS.DBSubnetGroup,
|
|
223
|
+
RDSData.BatchExecuteStatementPolicy,
|
|
224
|
+
RDSData.BeginTransactionPolicy,
|
|
225
|
+
RDSData.CommitTransactionPolicy,
|
|
226
|
+
RDSData.ExecuteSqlPolicy,
|
|
227
|
+
RDSData.ExecuteStatementPolicy,
|
|
228
|
+
RDSData.RollbackTransactionPolicy,
|
|
229
|
+
Route53.Record,
|
|
230
|
+
S3.AbortMultipartUploadPolicy,
|
|
231
|
+
S3.Bucket,
|
|
232
|
+
S3.CompleteMultipartUploadPolicy,
|
|
233
|
+
S3.CreateMultipartUploadPolicy,
|
|
234
|
+
S3.DeleteObjectPolicy,
|
|
235
|
+
S3.GetObjectPolicy,
|
|
236
|
+
S3.HeadObjectPolicy,
|
|
237
|
+
S3.ListObjectsV2Policy,
|
|
238
|
+
S3.PutObjectPolicy,
|
|
239
|
+
S3.CopyObjectPolicy,
|
|
240
|
+
S3.UploadPartPolicy,
|
|
241
|
+
Scheduler.Schedule,
|
|
242
|
+
Scheduler.ScheduleGroup,
|
|
243
|
+
SecretsManager.DescribeSecretPolicy,
|
|
244
|
+
SecretsManager.GetRandomPasswordPolicy,
|
|
245
|
+
SecretsManager.GetSecretValuePolicy,
|
|
246
|
+
SecretsManager.ListSecretsPolicy,
|
|
247
|
+
SecretsManager.PutSecretValuePolicy,
|
|
248
|
+
SecretsManager.Secret,
|
|
249
|
+
SNS.AddPermissionPolicy,
|
|
250
|
+
SNS.ConfirmSubscriptionPolicy,
|
|
251
|
+
SNS.GetDataProtectionPolicyPolicy,
|
|
252
|
+
SNS.GetSubscriptionAttributesPolicy,
|
|
253
|
+
SNS.GetTopicAttributesPolicy,
|
|
254
|
+
SNS.ListSubscriptionsByTopicPolicy,
|
|
255
|
+
SNS.ListSubscriptionsPolicy,
|
|
256
|
+
SNS.ListTagsForResourcePolicy,
|
|
257
|
+
SNS.ListTopicsPolicy,
|
|
258
|
+
SNS.PublishBatchPolicy,
|
|
259
|
+
SNS.PublishPolicy,
|
|
260
|
+
SNS.PutDataProtectionPolicyPolicy,
|
|
261
|
+
SNS.RemovePermissionPolicy,
|
|
262
|
+
SNS.SetSubscriptionAttributesPolicy,
|
|
263
|
+
SNS.SetTopicAttributesPolicy,
|
|
264
|
+
SNS.Subscription,
|
|
265
|
+
SNS.TagResourcePolicy,
|
|
266
|
+
SNS.Topic,
|
|
267
|
+
SNS.TopicSinkPolicy,
|
|
268
|
+
SNS.UntagResourcePolicy,
|
|
269
|
+
SQS.DeleteMessagePolicy,
|
|
270
|
+
SQS.DeleteMessageBatchPolicy,
|
|
271
|
+
SQS.Queue,
|
|
272
|
+
SQS.QueueSinkPolicy,
|
|
273
|
+
SQS.ReceiveMessagePolicy,
|
|
274
|
+
SQS.SendMessageBatchPolicy,
|
|
275
|
+
SQS.SendMessagePolicy,
|
|
276
|
+
Website.AssetDeployment,
|
|
277
|
+
]),
|
|
278
|
+
).pipe(
|
|
279
|
+
Layer.provide(
|
|
280
|
+
Layer.mergeAll(
|
|
281
|
+
ACM.CertificateProvider(),
|
|
282
|
+
AutoScaling.AutoScalingGroupProvider(),
|
|
283
|
+
AutoScaling.LaunchTemplateProvider(),
|
|
284
|
+
AutoScaling.ScalingPolicyProvider(),
|
|
285
|
+
CloudFront.DistributionProvider(),
|
|
286
|
+
CloudFront.FunctionProvider(),
|
|
287
|
+
CloudFront.InvalidationProvider(),
|
|
288
|
+
CloudFront.KeyValueStoreProvider(),
|
|
289
|
+
CloudFront.KvEntriesProvider(),
|
|
290
|
+
CloudFront.KvRoutesUpdateProvider(),
|
|
291
|
+
CloudFront.OriginAccessControlProvider(),
|
|
292
|
+
CloudWatch.AlarmMuteRuleProvider(),
|
|
293
|
+
CloudWatch.AlarmProvider(),
|
|
294
|
+
CloudWatch.AnomalyDetectorProvider(),
|
|
295
|
+
CloudWatch.CompositeAlarmProvider(),
|
|
296
|
+
CloudWatch.DashboardProvider(),
|
|
297
|
+
CloudWatch.DescribeAlarmContributorsPolicyLive,
|
|
298
|
+
CloudWatch.DescribeAlarmHistoryPolicyLive,
|
|
299
|
+
CloudWatch.DescribeAlarmsForMetricPolicyLive,
|
|
300
|
+
CloudWatch.DescribeAlarmsPolicyLive,
|
|
301
|
+
CloudWatch.DescribeAnomalyDetectorsPolicyLive,
|
|
302
|
+
CloudWatch.DescribeInsightRulesPolicyLive,
|
|
303
|
+
CloudWatch.DisableAlarmActionsPolicyLive,
|
|
304
|
+
CloudWatch.DisableInsightRulesPolicyLive,
|
|
305
|
+
CloudWatch.EnableAlarmActionsPolicyLive,
|
|
306
|
+
CloudWatch.GetAlarmMuteRulePolicyLive,
|
|
307
|
+
CloudWatch.GetDashboardPolicyLive,
|
|
308
|
+
CloudWatch.GetInsightRuleReportPolicyLive,
|
|
309
|
+
CloudWatch.GetMetricDataPolicyLive,
|
|
310
|
+
CloudWatch.GetMetricStatisticsPolicyLive,
|
|
311
|
+
CloudWatch.GetMetricStreamPolicyLive,
|
|
312
|
+
CloudWatch.GetMetricWidgetImagePolicyLive,
|
|
313
|
+
CloudWatch.InsightRuleProvider(),
|
|
314
|
+
CloudWatch.ListAlarmMuteRulesPolicyLive,
|
|
315
|
+
CloudWatch.ListDashboardsPolicyLive,
|
|
316
|
+
CloudWatch.ListManagedInsightRulesPolicyLive,
|
|
317
|
+
CloudWatch.ListMetricsPolicyLive,
|
|
318
|
+
CloudWatch.ListMetricStreamsPolicyLive,
|
|
319
|
+
CloudWatch.ListTagsForResourcePolicyLive,
|
|
320
|
+
CloudWatch.MetricStreamProvider(),
|
|
321
|
+
CloudWatch.PutMetricDataPolicyLive,
|
|
322
|
+
CloudWatch.SetAlarmStatePolicyLive,
|
|
323
|
+
DynamoDB.BatchExecuteStatementPolicyLive,
|
|
324
|
+
DynamoDB.BatchGetItemPolicyLive,
|
|
325
|
+
DynamoDB.BatchWriteItemPolicyLive,
|
|
326
|
+
DynamoDB.DeleteItemPolicyLive,
|
|
327
|
+
DynamoDB.DescribeTablePolicyLive,
|
|
328
|
+
DynamoDB.DescribeTimeToLivePolicyLive,
|
|
329
|
+
DynamoDB.ExecuteStatementPolicyLive,
|
|
330
|
+
DynamoDB.ExecuteTransactionPolicyLive,
|
|
331
|
+
DynamoDB.GetItemPolicyLive,
|
|
332
|
+
DynamoDB.ListTablesPolicyLive,
|
|
333
|
+
DynamoDB.ListTagsOfResourcePolicyLive,
|
|
334
|
+
DynamoDB.PutItemPolicyLive,
|
|
335
|
+
DynamoDB.QueryPolicyLive,
|
|
336
|
+
DynamoDB.RestoreTableToPointInTimePolicyLive,
|
|
337
|
+
DynamoDB.ScanPolicyLive,
|
|
338
|
+
DynamoDB.TableProvider(),
|
|
339
|
+
DynamoDB.TransactGetItemsPolicyLive,
|
|
340
|
+
DynamoDB.TransactWriteItemsPolicyLive,
|
|
341
|
+
DynamoDB.UpdateItemPolicyLive,
|
|
342
|
+
DynamoDB.UpdateTimeToLivePolicyLive,
|
|
343
|
+
EC2.EgressOnlyInternetGatewayProvider(),
|
|
344
|
+
EC2.EIPProvider(),
|
|
345
|
+
EC2.InstanceProvider(),
|
|
346
|
+
EC2.InternetGatewayProvider(),
|
|
347
|
+
EC2.NatGatewayProvider(),
|
|
348
|
+
EC2.NetworkAclAssociationProvider(),
|
|
349
|
+
EC2.NetworkAclEntryProvider(),
|
|
350
|
+
EC2.NetworkAclProvider(),
|
|
351
|
+
EC2.RouteProvider(),
|
|
352
|
+
EC2.RouteTableAssociationProvider(),
|
|
353
|
+
EC2.RouteTableProvider(),
|
|
354
|
+
EC2.SecurityGroupProvider(),
|
|
355
|
+
EC2.SecurityGroupRuleProvider(),
|
|
356
|
+
EC2.SubnetProvider(),
|
|
357
|
+
EC2.VpcEndpointProvider(),
|
|
358
|
+
EC2.VpcProvider(),
|
|
359
|
+
ECR.RepositoryProvider(),
|
|
360
|
+
ECS.ClusterProvider(),
|
|
361
|
+
ECS.DescribeTasksPolicyLive,
|
|
362
|
+
ECS.ListTasksPolicyLive,
|
|
363
|
+
ECS.RunTaskPolicyLive,
|
|
364
|
+
ECS.ServiceProvider(),
|
|
365
|
+
ECS.StopTaskPolicyLive,
|
|
366
|
+
ECS.TaskProvider(),
|
|
367
|
+
EKS.AccessEntryProvider(),
|
|
368
|
+
EKS.AddonProvider(),
|
|
369
|
+
EKS.ClusterProvider(),
|
|
370
|
+
EKS.PodIdentityAssociationProvider(),
|
|
371
|
+
ELBv2.ListenerProvider(),
|
|
372
|
+
ELBv2.LoadBalancerProvider(),
|
|
373
|
+
ELBv2.TargetGroupProvider(),
|
|
374
|
+
EventBridge.DescribeEventBusPolicyLive,
|
|
375
|
+
EventBridge.DescribeRulePolicyLive,
|
|
376
|
+
EventBridge.EventBusProvider(),
|
|
377
|
+
EventBridge.ListEventBusesPolicyLive,
|
|
378
|
+
EventBridge.ListRulesPolicyLive,
|
|
379
|
+
EventBridge.ListTargetsByRulePolicyLive,
|
|
380
|
+
EventBridge.PermissionProvider(),
|
|
381
|
+
EventBridge.PutEventsPolicyLive,
|
|
382
|
+
EventBridge.RuleProvider(),
|
|
383
|
+
EventBridge.TestEventPatternPolicyLive,
|
|
384
|
+
EventBridge.ToLambdaPolicyLive,
|
|
385
|
+
EventBridge.ToQueuePolicyLive,
|
|
386
|
+
IAM.AccessKeyProvider(),
|
|
387
|
+
IAM.AccountAliasProvider(),
|
|
388
|
+
IAM.AccountPasswordPolicyProvider(),
|
|
389
|
+
IAM.GroupMembershipProvider(),
|
|
390
|
+
IAM.GroupProvider(),
|
|
391
|
+
IAM.InstanceProfileProvider(),
|
|
392
|
+
IAM.LoginProfileProvider(),
|
|
393
|
+
IAM.OpenIDConnectProviderProvider(),
|
|
394
|
+
IAM.PolicyProvider(),
|
|
395
|
+
IAM.RoleProvider(),
|
|
396
|
+
IAM.SAMLProviderProvider(),
|
|
397
|
+
IAM.ServerCertificateProvider(),
|
|
398
|
+
IAM.ServiceSpecificCredentialProvider(),
|
|
399
|
+
IAM.SigningCertificateProvider(),
|
|
400
|
+
IAM.SSHPublicKeyProvider(),
|
|
401
|
+
IAM.UserProvider(),
|
|
402
|
+
IAM.VirtualMFADeviceProvider(),
|
|
403
|
+
IdentityCenter.AccountAssignmentProvider(),
|
|
404
|
+
IdentityCenter.GroupProvider(),
|
|
405
|
+
IdentityCenter.InstanceProvider(),
|
|
406
|
+
IdentityCenter.PermissionSetProvider(),
|
|
407
|
+
Kinesis.DescribeAccountSettingsPolicyLive,
|
|
408
|
+
Kinesis.DescribeLimitsPolicyLive,
|
|
409
|
+
Kinesis.DescribeStreamConsumerPolicyLive,
|
|
410
|
+
Kinesis.DescribeStreamPolicyLive,
|
|
411
|
+
Kinesis.DescribeStreamSummaryPolicyLive,
|
|
412
|
+
Kinesis.GetRecordsPolicyLive,
|
|
413
|
+
Kinesis.GetResourcePolicyPolicyLive,
|
|
414
|
+
Kinesis.GetShardIteratorPolicyLive,
|
|
415
|
+
Kinesis.ListShardsPolicyLive,
|
|
416
|
+
Kinesis.ListStreamConsumersPolicyLive,
|
|
417
|
+
Kinesis.ListStreamsPolicyLive,
|
|
418
|
+
Kinesis.ListTagsForResourcePolicyLive,
|
|
419
|
+
Kinesis.PutRecordPolicyLive,
|
|
420
|
+
Kinesis.PutRecordsPolicyLive,
|
|
421
|
+
Kinesis.StreamConsumerProvider(),
|
|
422
|
+
Kinesis.StreamProvider(),
|
|
423
|
+
Kinesis.StreamSinkPolicyLive,
|
|
424
|
+
Kinesis.SubscribeToShardPolicyLive,
|
|
425
|
+
Lambda.BucketEventSourcePolicyLive,
|
|
426
|
+
Lambda.EventSourceMappingProvider(),
|
|
427
|
+
Lambda.EventSourcePolicyLive,
|
|
428
|
+
Lambda.FunctionProvider(),
|
|
429
|
+
Lambda.InvokeFunctionPolicyLive,
|
|
430
|
+
Lambda.PermissionProvider(),
|
|
431
|
+
Lambda.QueueEventSourcePolicyLive,
|
|
432
|
+
Lambda.StreamEventSourcePolicyLive,
|
|
433
|
+
Lambda.TableEventSourcePolicyLive,
|
|
434
|
+
Lambda.TopicEventSourcePolicyLive,
|
|
435
|
+
Logs.LogGroupProvider(),
|
|
436
|
+
Organizations.AccountProvider(),
|
|
437
|
+
Organizations.DelegatedAdministratorProvider(),
|
|
438
|
+
Organizations.OrganizationalUnitProvider(),
|
|
439
|
+
Organizations.OrganizationProvider(),
|
|
440
|
+
Organizations.OrganizationResourcePolicyProvider(),
|
|
441
|
+
Organizations.PolicyAttachmentProvider(),
|
|
442
|
+
Organizations.PolicyProvider(),
|
|
443
|
+
Organizations.RootPolicyTypeProvider(),
|
|
444
|
+
Organizations.RootProvider(),
|
|
445
|
+
Organizations.TrustedServiceAccessProvider(),
|
|
446
|
+
RDS.ConnectPolicyLive,
|
|
447
|
+
RDS.DBClusterEndpointProvider(),
|
|
448
|
+
RDS.DBClusterParameterGroupProvider(),
|
|
449
|
+
RDS.DBClusterProvider(),
|
|
450
|
+
RDS.DBInstanceProvider(),
|
|
451
|
+
RDS.DBParameterGroupProvider(),
|
|
452
|
+
RDS.DBProxyEndpointProvider(),
|
|
453
|
+
RDS.DBProxyProvider(),
|
|
454
|
+
RDS.DBProxyTargetGroupProvider(),
|
|
455
|
+
RDS.DBSubnetGroupProvider(),
|
|
456
|
+
RDSData.BatchExecuteStatementPolicyLive,
|
|
457
|
+
RDSData.BeginTransactionPolicyLive,
|
|
458
|
+
RDSData.CommitTransactionPolicyLive,
|
|
459
|
+
RDSData.ExecuteSqlPolicyLive,
|
|
460
|
+
RDSData.ExecuteStatementPolicyLive,
|
|
461
|
+
RDSData.RollbackTransactionPolicyLive,
|
|
462
|
+
Route53.RecordProvider(),
|
|
463
|
+
S3.AbortMultipartUploadPolicyLive,
|
|
464
|
+
S3.BucketProvider(),
|
|
465
|
+
S3.CompleteMultipartUploadPolicyLive,
|
|
466
|
+
S3.CopyObjectPolicyLive,
|
|
467
|
+
S3.CreateMultipartUploadPolicyLive,
|
|
468
|
+
S3.DeleteObjectPolicyLive,
|
|
469
|
+
S3.GetObjectPolicyLive,
|
|
470
|
+
S3.HeadObjectPolicyLive,
|
|
471
|
+
S3.ListObjectsV2PolicyLive,
|
|
472
|
+
S3.PutObjectPolicyLive,
|
|
473
|
+
S3.UploadPartPolicyLive,
|
|
474
|
+
Scheduler.ScheduleGroupProvider(),
|
|
475
|
+
Scheduler.ScheduleProvider(),
|
|
476
|
+
SecretsManager.DescribeSecretPolicyLive,
|
|
477
|
+
SecretsManager.GetRandomPasswordPolicyLive,
|
|
478
|
+
SecretsManager.GetSecretValuePolicyLive,
|
|
479
|
+
SecretsManager.ListSecretsPolicyLive,
|
|
480
|
+
SecretsManager.PutSecretValuePolicyLive,
|
|
481
|
+
SecretsManager.SecretProvider(),
|
|
482
|
+
SNS.AddPermissionPolicyLive,
|
|
483
|
+
SNS.ConfirmSubscriptionPolicyLive,
|
|
484
|
+
SNS.GetDataProtectionPolicyPolicyLive,
|
|
485
|
+
SNS.GetSubscriptionAttributesPolicyLive,
|
|
486
|
+
SNS.GetTopicAttributesPolicyLive,
|
|
487
|
+
SNS.ListSubscriptionsByTopicPolicyLive,
|
|
488
|
+
SNS.ListSubscriptionsPolicyLive,
|
|
489
|
+
SNS.ListTagsForResourcePolicyLive,
|
|
490
|
+
SNS.ListTopicsPolicyLive,
|
|
491
|
+
SNS.PublishBatchPolicyLive,
|
|
492
|
+
SNS.PublishPolicyLive,
|
|
493
|
+
SNS.PutDataProtectionPolicyPolicyLive,
|
|
494
|
+
SNS.RemovePermissionPolicyLive,
|
|
495
|
+
SNS.SetSubscriptionAttributesPolicyLive,
|
|
496
|
+
SNS.SetTopicAttributesPolicyLive,
|
|
497
|
+
SNS.SubscriptionProvider(),
|
|
498
|
+
SNS.TagResourcePolicyLive,
|
|
499
|
+
SNS.TopicProvider(),
|
|
500
|
+
SNS.TopicSinkPolicyLive,
|
|
501
|
+
SNS.UntagResourcePolicyLive,
|
|
502
|
+
SQS.DeleteMessageBatchPolicyLive,
|
|
503
|
+
SQS.DeleteMessagePolicyLive,
|
|
504
|
+
SQS.QueueProvider(),
|
|
505
|
+
SQS.QueueSinkPolicyLive,
|
|
506
|
+
SQS.ReceiveMessagePolicyLive,
|
|
507
|
+
SQS.SendMessageBatchPolicyLive,
|
|
508
|
+
SQS.SendMessagePolicyLive,
|
|
509
|
+
Website.AssetDeploymentProvider(),
|
|
510
|
+
),
|
|
511
|
+
),
|
|
512
|
+
Layer.provideMerge(
|
|
513
|
+
Layer.mergeAll(
|
|
514
|
+
CommandProvider(),
|
|
515
|
+
RandomProvider(),
|
|
516
|
+
Assets.AssetsProvider(),
|
|
517
|
+
),
|
|
518
|
+
),
|
|
55
519
|
Layer.provideMerge(Account.fromStageConfig()),
|
|
56
520
|
Layer.provideMerge(Region.fromStageConfig()),
|
|
57
521
|
Layer.provideMerge(Credentials.fromStageConfig()),
|
|
58
522
|
Layer.provideMerge(Endpoint.fromStageConfig()),
|
|
59
|
-
Layer.provideMerge(
|
|
523
|
+
Layer.provideMerge(DefaultStageConfig),
|
|
60
524
|
Layer.orDie,
|
|
61
525
|
);
|
|
62
|
-
|
|
63
|
-
export const stageConfig = () =>
|
|
64
|
-
Layer.effect(StageConfig, Effect.suspend(loadDefaultStageConfig));
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* Minimal AWS credential and account context without registering any resource
|
|
68
|
-
* providers.
|
|
69
|
-
*/
|
|
70
|
-
export const credentials = () =>
|
|
71
|
-
pipe(
|
|
72
|
-
Account.fromStageConfig(),
|
|
73
|
-
Layer.provideMerge(Region.fromStageConfig()),
|
|
74
|
-
Layer.provideMerge(Credentials.fromStageConfig()),
|
|
75
|
-
Layer.provideMerge(Endpoint.fromStageConfig()),
|
|
76
|
-
Layer.provideMerge(stageConfig()),
|
|
77
|
-
);
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* All AWS resource providers.
|
|
81
|
-
*
|
|
82
|
-
* This layer registers the lifecycle providers that can create, read, update,
|
|
83
|
-
* and delete AWS resources during plan and deploy.
|
|
84
|
-
*/
|
|
85
|
-
export const resources = () =>
|
|
86
|
-
Layer.mergeAll(
|
|
87
|
-
buildProviders(),
|
|
88
|
-
acmProviders(),
|
|
89
|
-
autoScalingProviders(),
|
|
90
|
-
cloudFrontProviders(),
|
|
91
|
-
cloudWatchProviders(),
|
|
92
|
-
dynamoDbProviders(),
|
|
93
|
-
ec2Providers(),
|
|
94
|
-
ecrProviders(),
|
|
95
|
-
ecsProviders(),
|
|
96
|
-
eksProviders(),
|
|
97
|
-
elbv2Providers(),
|
|
98
|
-
eventBridgeProviders(),
|
|
99
|
-
iamProviders(),
|
|
100
|
-
identityCenterProviders(),
|
|
101
|
-
kinesisProviders(),
|
|
102
|
-
lambdaProviders(),
|
|
103
|
-
logsProviders(),
|
|
104
|
-
organizationsProviders(),
|
|
105
|
-
rdsProviders(),
|
|
106
|
-
route53Providers(),
|
|
107
|
-
s3Providers(),
|
|
108
|
-
schedulerProviders(),
|
|
109
|
-
secretsManagerProviders(),
|
|
110
|
-
snsProviders(),
|
|
111
|
-
sqsProviders(),
|
|
112
|
-
websiteProviders(),
|
|
113
|
-
);
|
|
114
|
-
|
|
115
|
-
export const buildProviders = () =>
|
|
116
|
-
Layer.mergeAll(CommandProvider(), RandomProvider());
|
|
117
|
-
|
|
118
|
-
export const acmProviders = () => Layer.mergeAll(ACM.CertificateProvider());
|
|
119
|
-
|
|
120
|
-
export const autoScalingProviders = () =>
|
|
121
|
-
Layer.mergeAll(
|
|
122
|
-
AutoScaling.AutoScalingGroupProvider(),
|
|
123
|
-
AutoScaling.LaunchTemplateProvider(),
|
|
124
|
-
AutoScaling.ScalingPolicyProvider(),
|
|
125
|
-
);
|
|
126
|
-
|
|
127
|
-
export const cloudFrontProviders = () =>
|
|
128
|
-
Layer.mergeAll(
|
|
129
|
-
CloudFront.DistributionProvider(),
|
|
130
|
-
CloudFront.FunctionProvider(),
|
|
131
|
-
CloudFront.InvalidationProvider(),
|
|
132
|
-
CloudFront.KeyValueStoreProvider(),
|
|
133
|
-
CloudFront.KvEntriesProvider(),
|
|
134
|
-
CloudFront.KvRoutesUpdateProvider(),
|
|
135
|
-
CloudFront.OriginAccessControlProvider(),
|
|
136
|
-
);
|
|
137
|
-
|
|
138
|
-
export const cloudWatchProviders = () =>
|
|
139
|
-
Layer.mergeAll(
|
|
140
|
-
CloudWatch.AlarmMuteRuleProvider(),
|
|
141
|
-
CloudWatch.AlarmProvider(),
|
|
142
|
-
CloudWatch.AnomalyDetectorProvider(),
|
|
143
|
-
CloudWatch.CompositeAlarmProvider(),
|
|
144
|
-
CloudWatch.DashboardProvider(),
|
|
145
|
-
CloudWatch.InsightRuleProvider(),
|
|
146
|
-
CloudWatch.MetricStreamProvider(),
|
|
147
|
-
);
|
|
148
|
-
|
|
149
|
-
export const dynamoDbProviders = () => Layer.mergeAll(DynamoDB.TableProvider());
|
|
150
|
-
|
|
151
|
-
export const ec2Providers = () =>
|
|
152
|
-
Layer.mergeAll(
|
|
153
|
-
EC2.EgressOnlyInternetGatewayProvider(),
|
|
154
|
-
EC2.EIPProvider(),
|
|
155
|
-
EC2.InstanceProvider(),
|
|
156
|
-
EC2.InternetGatewayProvider(),
|
|
157
|
-
EC2.NatGatewayProvider(),
|
|
158
|
-
EC2.NetworkAclAssociationProvider(),
|
|
159
|
-
EC2.NetworkAclEntryProvider(),
|
|
160
|
-
EC2.NetworkAclProvider(),
|
|
161
|
-
EC2.RouteProvider(),
|
|
162
|
-
EC2.RouteTableAssociationProvider(),
|
|
163
|
-
EC2.RouteTableProvider(),
|
|
164
|
-
EC2.SecurityGroupProvider(),
|
|
165
|
-
EC2.SecurityGroupRuleProvider(),
|
|
166
|
-
EC2.SubnetProvider(),
|
|
167
|
-
EC2.VpcEndpointProvider(),
|
|
168
|
-
EC2.VpcProvider(),
|
|
169
|
-
);
|
|
170
|
-
|
|
171
|
-
export const ecrProviders = () => Layer.mergeAll(ECR.RepositoryProvider());
|
|
172
|
-
|
|
173
|
-
export const ecsProviders = () =>
|
|
174
|
-
Layer.mergeAll(
|
|
175
|
-
ECS.ClusterProvider(),
|
|
176
|
-
ECS.ServiceProvider(),
|
|
177
|
-
ECS.TaskProvider(),
|
|
178
|
-
);
|
|
179
|
-
|
|
180
|
-
export const eksProviders = () =>
|
|
181
|
-
Layer.mergeAll(
|
|
182
|
-
EKS.AccessEntryProvider(),
|
|
183
|
-
EKS.AddonProvider(),
|
|
184
|
-
EKS.ClusterProvider(),
|
|
185
|
-
EKS.PodIdentityAssociationProvider(),
|
|
186
|
-
);
|
|
187
|
-
|
|
188
|
-
export const elbv2Providers = () =>
|
|
189
|
-
Layer.mergeAll(
|
|
190
|
-
ELBv2.ListenerProvider(),
|
|
191
|
-
ELBv2.LoadBalancerProvider(),
|
|
192
|
-
ELBv2.TargetGroupProvider(),
|
|
193
|
-
);
|
|
194
|
-
|
|
195
|
-
export const eventBridgeProviders = () =>
|
|
196
|
-
Layer.mergeAll(
|
|
197
|
-
EventBridge.EventBusProvider(),
|
|
198
|
-
EventBridge.PermissionProvider(),
|
|
199
|
-
EventBridge.RuleProvider(),
|
|
200
|
-
);
|
|
201
|
-
|
|
202
|
-
export const iamProviders = () =>
|
|
203
|
-
Layer.mergeAll(
|
|
204
|
-
IAM.AccessKeyProvider(),
|
|
205
|
-
IAM.AccountAliasProvider(),
|
|
206
|
-
IAM.AccountPasswordPolicyProvider(),
|
|
207
|
-
IAM.GroupMembershipProvider(),
|
|
208
|
-
IAM.GroupProvider(),
|
|
209
|
-
IAM.InstanceProfileProvider(),
|
|
210
|
-
IAM.LoginProfileProvider(),
|
|
211
|
-
IAM.OpenIDConnectProviderProvider(),
|
|
212
|
-
IAM.PolicyProvider(),
|
|
213
|
-
IAM.RoleProvider(),
|
|
214
|
-
IAM.SAMLProviderProvider(),
|
|
215
|
-
IAM.ServerCertificateProvider(),
|
|
216
|
-
IAM.ServiceSpecificCredentialProvider(),
|
|
217
|
-
IAM.SigningCertificateProvider(),
|
|
218
|
-
IAM.SSHPublicKeyProvider(),
|
|
219
|
-
IAM.UserProvider(),
|
|
220
|
-
IAM.VirtualMFADeviceProvider(),
|
|
221
|
-
);
|
|
222
|
-
|
|
223
|
-
export const identityCenterProviders = () =>
|
|
224
|
-
Layer.mergeAll(
|
|
225
|
-
IdentityCenter.AccountAssignmentProvider(),
|
|
226
|
-
IdentityCenter.GroupProvider(),
|
|
227
|
-
IdentityCenter.InstanceProvider(),
|
|
228
|
-
IdentityCenter.PermissionSetProvider(),
|
|
229
|
-
);
|
|
230
|
-
|
|
231
|
-
export const kinesisProviders = () =>
|
|
232
|
-
Layer.mergeAll(Kinesis.StreamConsumerProvider(), Kinesis.StreamProvider());
|
|
233
|
-
|
|
234
|
-
export const lambdaProviders = () =>
|
|
235
|
-
Layer.mergeAll(
|
|
236
|
-
Lambda.EventSourceMappingProvider(),
|
|
237
|
-
Lambda.FunctionProvider(),
|
|
238
|
-
Lambda.PermissionProvider(),
|
|
239
|
-
);
|
|
240
|
-
|
|
241
|
-
export const logsProviders = () => Layer.mergeAll(Logs.LogGroupProvider());
|
|
242
|
-
|
|
243
|
-
export const organizationsProviders = () =>
|
|
244
|
-
Layer.mergeAll(
|
|
245
|
-
Organizations.AccountProvider(),
|
|
246
|
-
Organizations.DelegatedAdministratorProvider(),
|
|
247
|
-
Organizations.OrganizationalUnitProvider(),
|
|
248
|
-
Organizations.OrganizationProvider(),
|
|
249
|
-
Organizations.OrganizationResourcePolicyProvider(),
|
|
250
|
-
Organizations.PolicyAttachmentProvider(),
|
|
251
|
-
Organizations.PolicyProvider(),
|
|
252
|
-
Organizations.RootPolicyTypeProvider(),
|
|
253
|
-
Organizations.RootProvider(),
|
|
254
|
-
Organizations.TrustedServiceAccessProvider(),
|
|
255
|
-
);
|
|
256
|
-
|
|
257
|
-
export const rdsProviders = () =>
|
|
258
|
-
Layer.mergeAll(
|
|
259
|
-
RDS.DBClusterEndpointProvider(),
|
|
260
|
-
RDS.DBClusterParameterGroupProvider(),
|
|
261
|
-
RDS.DBClusterProvider(),
|
|
262
|
-
RDS.DBInstanceProvider(),
|
|
263
|
-
RDS.DBParameterGroupProvider(),
|
|
264
|
-
RDS.DBProxyEndpointProvider(),
|
|
265
|
-
RDS.DBProxyProvider(),
|
|
266
|
-
RDS.DBProxyTargetGroupProvider(),
|
|
267
|
-
RDS.DBSubnetGroupProvider(),
|
|
268
|
-
);
|
|
269
|
-
|
|
270
|
-
export const route53Providers = () => Layer.mergeAll(Route53.RecordProvider());
|
|
271
|
-
|
|
272
|
-
export const s3Providers = () => Layer.mergeAll(S3.BucketProvider());
|
|
273
|
-
|
|
274
|
-
export const schedulerProviders = () =>
|
|
275
|
-
Layer.mergeAll(
|
|
276
|
-
Scheduler.ScheduleGroupProvider(),
|
|
277
|
-
Scheduler.ScheduleProvider(),
|
|
278
|
-
);
|
|
279
|
-
|
|
280
|
-
export const secretsManagerProviders = () =>
|
|
281
|
-
Layer.mergeAll(SecretsManager.SecretProvider());
|
|
282
|
-
|
|
283
|
-
export const snsProviders = () =>
|
|
284
|
-
Layer.mergeAll(SNS.SubscriptionProvider(), SNS.TopicProvider());
|
|
285
|
-
|
|
286
|
-
export const sqsProviders = () => Layer.mergeAll(SQS.QueueProvider());
|
|
287
|
-
|
|
288
|
-
export const websiteProviders = () =>
|
|
289
|
-
Layer.mergeAll(Website.AssetDeploymentProvider());
|
|
290
|
-
|
|
291
|
-
/**
|
|
292
|
-
* All AWS binding policies.
|
|
293
|
-
*
|
|
294
|
-
* These layers attach IAM statements and event-source bindings to functions at
|
|
295
|
-
* deploy time so runtime bindings like `PutObject.bind(bucket)` can execute
|
|
296
|
-
* with the required permissions.
|
|
297
|
-
*/
|
|
298
|
-
export const bindings = () =>
|
|
299
|
-
Layer.mergeAll(
|
|
300
|
-
cloudWatchBindings(),
|
|
301
|
-
dynamoDbBindings(),
|
|
302
|
-
ecsBindings(),
|
|
303
|
-
eventBridgeBindings(),
|
|
304
|
-
kinesisBindings(),
|
|
305
|
-
lambdaBindings(),
|
|
306
|
-
rdsBindings(),
|
|
307
|
-
rdsDataBindings(),
|
|
308
|
-
s3Bindings(),
|
|
309
|
-
secretsManagerBindings(),
|
|
310
|
-
snsBindings(),
|
|
311
|
-
sqsBindings(),
|
|
312
|
-
);
|
|
313
|
-
|
|
314
|
-
export const cloudWatchBindings = () =>
|
|
315
|
-
Layer.mergeAll(
|
|
316
|
-
CloudWatch.DescribeAlarmContributorsPolicyLive,
|
|
317
|
-
CloudWatch.DescribeAlarmHistoryPolicyLive,
|
|
318
|
-
CloudWatch.DescribeAlarmsForMetricPolicyLive,
|
|
319
|
-
CloudWatch.DescribeAlarmsPolicyLive,
|
|
320
|
-
CloudWatch.DescribeAnomalyDetectorsPolicyLive,
|
|
321
|
-
CloudWatch.DescribeInsightRulesPolicyLive,
|
|
322
|
-
CloudWatch.DisableAlarmActionsPolicyLive,
|
|
323
|
-
CloudWatch.DisableInsightRulesPolicyLive,
|
|
324
|
-
CloudWatch.EnableAlarmActionsPolicyLive,
|
|
325
|
-
CloudWatch.GetAlarmMuteRulePolicyLive,
|
|
326
|
-
CloudWatch.GetDashboardPolicyLive,
|
|
327
|
-
CloudWatch.GetInsightRuleReportPolicyLive,
|
|
328
|
-
CloudWatch.GetMetricDataPolicyLive,
|
|
329
|
-
CloudWatch.GetMetricStatisticsPolicyLive,
|
|
330
|
-
CloudWatch.GetMetricStreamPolicyLive,
|
|
331
|
-
CloudWatch.GetMetricWidgetImagePolicyLive,
|
|
332
|
-
CloudWatch.ListAlarmMuteRulesPolicyLive,
|
|
333
|
-
CloudWatch.ListDashboardsPolicyLive,
|
|
334
|
-
CloudWatch.ListManagedInsightRulesPolicyLive,
|
|
335
|
-
CloudWatch.ListMetricsPolicyLive,
|
|
336
|
-
CloudWatch.ListMetricStreamsPolicyLive,
|
|
337
|
-
CloudWatch.ListTagsForResourcePolicyLive,
|
|
338
|
-
CloudWatch.PutMetricDataPolicyLive,
|
|
339
|
-
CloudWatch.SetAlarmStatePolicyLive,
|
|
340
|
-
);
|
|
341
|
-
|
|
342
|
-
export const dynamoDbBindings = () =>
|
|
343
|
-
Layer.mergeAll(
|
|
344
|
-
DynamoDB.BatchExecuteStatementPolicyLive,
|
|
345
|
-
DynamoDB.BatchGetItemPolicyLive,
|
|
346
|
-
DynamoDB.BatchWriteItemPolicyLive,
|
|
347
|
-
DynamoDB.DeleteItemPolicyLive,
|
|
348
|
-
DynamoDB.DescribeTablePolicyLive,
|
|
349
|
-
DynamoDB.DescribeTimeToLivePolicyLive,
|
|
350
|
-
DynamoDB.ExecuteStatementPolicyLive,
|
|
351
|
-
DynamoDB.ExecuteTransactionPolicyLive,
|
|
352
|
-
DynamoDB.GetItemPolicyLive,
|
|
353
|
-
DynamoDB.ListTablesPolicyLive,
|
|
354
|
-
DynamoDB.ListTagsOfResourcePolicyLive,
|
|
355
|
-
DynamoDB.PutItemPolicyLive,
|
|
356
|
-
DynamoDB.QueryPolicyLive,
|
|
357
|
-
DynamoDB.RestoreTableToPointInTimePolicyLive,
|
|
358
|
-
DynamoDB.ScanPolicyLive,
|
|
359
|
-
DynamoDB.TransactGetItemsPolicyLive,
|
|
360
|
-
DynamoDB.TransactWriteItemsPolicyLive,
|
|
361
|
-
DynamoDB.UpdateItemPolicyLive,
|
|
362
|
-
DynamoDB.UpdateTimeToLivePolicyLive,
|
|
363
|
-
);
|
|
364
|
-
|
|
365
|
-
export const ecsBindings = () =>
|
|
366
|
-
Layer.mergeAll(
|
|
367
|
-
ECS.DescribeTasksPolicyLive,
|
|
368
|
-
ECS.ListTasksPolicyLive,
|
|
369
|
-
ECS.RunTaskPolicyLive,
|
|
370
|
-
ECS.StopTaskPolicyLive,
|
|
371
|
-
);
|
|
372
|
-
|
|
373
|
-
export const eventBridgeBindings = () =>
|
|
374
|
-
Layer.mergeAll(
|
|
375
|
-
EventBridge.DescribeEventBusPolicyLive,
|
|
376
|
-
EventBridge.DescribeRulePolicyLive,
|
|
377
|
-
EventBridge.ListEventBusesPolicyLive,
|
|
378
|
-
EventBridge.ListRulesPolicyLive,
|
|
379
|
-
EventBridge.ListTargetsByRulePolicyLive,
|
|
380
|
-
EventBridge.PutEventsPolicyLive,
|
|
381
|
-
EventBridge.TestEventPatternPolicyLive,
|
|
382
|
-
EventBridge.ToLambdaPolicyLive,
|
|
383
|
-
EventBridge.ToQueuePolicyLive,
|
|
384
|
-
);
|
|
385
|
-
|
|
386
|
-
export const kinesisBindings = () =>
|
|
387
|
-
Layer.mergeAll(
|
|
388
|
-
Kinesis.DescribeAccountSettingsPolicyLive,
|
|
389
|
-
Kinesis.DescribeLimitsPolicyLive,
|
|
390
|
-
Kinesis.DescribeStreamConsumerPolicyLive,
|
|
391
|
-
Kinesis.DescribeStreamPolicyLive,
|
|
392
|
-
Kinesis.DescribeStreamSummaryPolicyLive,
|
|
393
|
-
Kinesis.GetRecordsPolicyLive,
|
|
394
|
-
Kinesis.GetResourcePolicyPolicyLive,
|
|
395
|
-
Kinesis.GetShardIteratorPolicyLive,
|
|
396
|
-
Kinesis.ListShardsPolicyLive,
|
|
397
|
-
Kinesis.ListStreamConsumersPolicyLive,
|
|
398
|
-
Kinesis.ListStreamsPolicyLive,
|
|
399
|
-
Kinesis.ListTagsForResourcePolicyLive,
|
|
400
|
-
Kinesis.PutRecordPolicyLive,
|
|
401
|
-
Kinesis.PutRecordsPolicyLive,
|
|
402
|
-
Kinesis.StreamSinkPolicyLive,
|
|
403
|
-
Kinesis.SubscribeToShardPolicyLive,
|
|
404
|
-
);
|
|
405
|
-
|
|
406
|
-
export const lambdaBindings = () =>
|
|
407
|
-
Layer.mergeAll(
|
|
408
|
-
Lambda.BucketEventSourcePolicyLive,
|
|
409
|
-
Lambda.QueueEventSourcePolicyLive,
|
|
410
|
-
Lambda.StreamEventSourcePolicyLive,
|
|
411
|
-
Lambda.TableEventSourcePolicyLive,
|
|
412
|
-
Lambda.TopicEventSourcePolicyLive,
|
|
413
|
-
);
|
|
414
|
-
|
|
415
|
-
export const rdsBindings = () => Layer.mergeAll(RDS.ConnectPolicyLive);
|
|
416
|
-
|
|
417
|
-
export const rdsDataBindings = () =>
|
|
418
|
-
Layer.mergeAll(
|
|
419
|
-
RDSData.BatchExecuteStatementPolicyLive,
|
|
420
|
-
RDSData.BeginTransactionPolicyLive,
|
|
421
|
-
RDSData.CommitTransactionPolicyLive,
|
|
422
|
-
RDSData.ExecuteSqlPolicyLive,
|
|
423
|
-
RDSData.ExecuteStatementPolicyLive,
|
|
424
|
-
RDSData.RollbackTransactionPolicyLive,
|
|
425
|
-
);
|
|
426
|
-
|
|
427
|
-
export const s3Bindings = () =>
|
|
428
|
-
Layer.mergeAll(
|
|
429
|
-
S3.AbortMultipartUploadPolicyLive,
|
|
430
|
-
S3.CompleteMultipartUploadPolicyLive,
|
|
431
|
-
S3.CreateMultipartUploadPolicyLive,
|
|
432
|
-
S3.DeleteObjectPolicyLive,
|
|
433
|
-
S3.GetObjectPolicyLive,
|
|
434
|
-
S3.HeadObjectPolicyLive,
|
|
435
|
-
S3.ListObjectsV2PolicyLive,
|
|
436
|
-
S3.PutObjectPolicyLive,
|
|
437
|
-
S3.UploadPartPolicyLive,
|
|
438
|
-
);
|
|
439
|
-
|
|
440
|
-
export const secretsManagerBindings = () =>
|
|
441
|
-
Layer.mergeAll(
|
|
442
|
-
SecretsManager.DescribeSecretPolicyLive,
|
|
443
|
-
SecretsManager.GetRandomPasswordPolicyLive,
|
|
444
|
-
SecretsManager.GetSecretValuePolicyLive,
|
|
445
|
-
SecretsManager.ListSecretsPolicyLive,
|
|
446
|
-
SecretsManager.PutSecretValuePolicyLive,
|
|
447
|
-
);
|
|
448
|
-
|
|
449
|
-
export const snsBindings = () =>
|
|
450
|
-
Layer.mergeAll(
|
|
451
|
-
SNS.AddPermissionPolicyLive,
|
|
452
|
-
SNS.ConfirmSubscriptionPolicyLive,
|
|
453
|
-
SNS.GetDataProtectionPolicyPolicyLive,
|
|
454
|
-
SNS.GetSubscriptionAttributesPolicyLive,
|
|
455
|
-
SNS.GetTopicAttributesPolicyLive,
|
|
456
|
-
SNS.ListSubscriptionsByTopicPolicyLive,
|
|
457
|
-
SNS.ListSubscriptionsPolicyLive,
|
|
458
|
-
SNS.ListTagsForResourcePolicyLive,
|
|
459
|
-
SNS.ListTopicsPolicyLive,
|
|
460
|
-
SNS.PublishBatchPolicyLive,
|
|
461
|
-
SNS.PublishPolicyLive,
|
|
462
|
-
SNS.PutDataProtectionPolicyPolicyLive,
|
|
463
|
-
SNS.RemovePermissionPolicyLive,
|
|
464
|
-
SNS.SetSubscriptionAttributesPolicyLive,
|
|
465
|
-
SNS.SetTopicAttributesPolicyLive,
|
|
466
|
-
SNS.TagResourcePolicyLive,
|
|
467
|
-
SNS.TopicSinkPolicyLive,
|
|
468
|
-
SNS.UntagResourcePolicyLive,
|
|
469
|
-
);
|
|
470
|
-
|
|
471
|
-
export const sqsBindings = () =>
|
|
472
|
-
Layer.mergeAll(
|
|
473
|
-
SQS.DeleteMessageBatchPolicyLive,
|
|
474
|
-
SQS.QueueSinkPolicyLive,
|
|
475
|
-
SQS.ReceiveMessagePolicyLive,
|
|
476
|
-
SQS.SendMessageBatchPolicyLive,
|
|
477
|
-
SQS.SendMessagePolicyLive,
|
|
478
|
-
// SQS.QueueEventSourcePolicyLive,
|
|
479
|
-
);
|