Add EventBridge scheduling: schedule_reminder, list_reminders, cancel_reminder
This commit is contained in:
@@ -387,7 +387,7 @@
|
||||
"Properties": {
|
||||
"Code": {
|
||||
"S3Bucket": "cdk-hnb659fds-assets-495395224548-us-east-1",
|
||||
"S3Key": "c0db2a060be885d61722dfe6fbd3967e1c956826682078f6338123bf0c797e5b.zip"
|
||||
"S3Key": "49f9e3ee598c0259165125872304200dbdffee263d76fca541a8630534d8f5c5.zip"
|
||||
},
|
||||
"Environment": {
|
||||
"Variables": {
|
||||
@@ -423,7 +423,7 @@
|
||||
],
|
||||
"Metadata": {
|
||||
"aws:cdk:path": "AgentClawStack/AgentRunner/Resource",
|
||||
"aws:asset:path": "asset.c0db2a060be885d61722dfe6fbd3967e1c956826682078f6338123bf0c797e5b",
|
||||
"aws:asset:path": "asset.49f9e3ee598c0259165125872304200dbdffee263d76fca541a8630534d8f5c5",
|
||||
"aws:asset:is-bundled": false,
|
||||
"aws:asset:property": "Code"
|
||||
}
|
||||
@@ -872,6 +872,33 @@
|
||||
"Effect": "Allow",
|
||||
"Resource": "arn:aws:secretsmanager:us-east-1:495395224548:secret:agent-claw/google-credentials/*",
|
||||
"Sid": "PerUserGoogleCredentialsReadRuntime"
|
||||
},
|
||||
{
|
||||
"Action": [
|
||||
"events:PutRule",
|
||||
"events:PutTargets",
|
||||
"events:ListRules",
|
||||
"events:ListTargetsByRule",
|
||||
"events:RemoveTargets",
|
||||
"events:DeleteRule"
|
||||
],
|
||||
"Effect": "Allow",
|
||||
"Resource": "arn:aws:events:us-east-1:*:rule/agent-claw-reminder-*",
|
||||
"Sid": "EventBridgeScheduler"
|
||||
},
|
||||
{
|
||||
"Action": [
|
||||
"lambda:AddPermission",
|
||||
"lambda:RemovePermission"
|
||||
],
|
||||
"Effect": "Allow",
|
||||
"Resource": {
|
||||
"Fn::GetAtt": [
|
||||
"SchedulerCFE73206",
|
||||
"Arn"
|
||||
]
|
||||
},
|
||||
"Sid": "SchedulerLambdaPermission"
|
||||
}
|
||||
],
|
||||
"Version": "2012-10-17"
|
||||
@@ -1114,6 +1141,127 @@
|
||||
"aws:asset:property": "Code"
|
||||
}
|
||||
},
|
||||
"SchedulerServiceRole62CDA70C": {
|
||||
"Type": "AWS::IAM::Role",
|
||||
"Properties": {
|
||||
"AssumeRolePolicyDocument": {
|
||||
"Statement": [
|
||||
{
|
||||
"Action": "sts:AssumeRole",
|
||||
"Effect": "Allow",
|
||||
"Principal": {
|
||||
"Service": "lambda.amazonaws.com"
|
||||
}
|
||||
}
|
||||
],
|
||||
"Version": "2012-10-17"
|
||||
},
|
||||
"ManagedPolicyArns": [
|
||||
{
|
||||
"Fn::Join": [
|
||||
"",
|
||||
[
|
||||
"arn:",
|
||||
{
|
||||
"Ref": "AWS::Partition"
|
||||
},
|
||||
":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"Metadata": {
|
||||
"aws:cdk:path": "AgentClawStack/Scheduler/ServiceRole/Resource"
|
||||
}
|
||||
},
|
||||
"SchedulerServiceRoleDefaultPolicyFA0D8235": {
|
||||
"Type": "AWS::IAM::Policy",
|
||||
"Properties": {
|
||||
"PolicyDocument": {
|
||||
"Statement": [
|
||||
{
|
||||
"Action": [
|
||||
"secretsmanager:GetSecretValue",
|
||||
"secretsmanager:DescribeSecret"
|
||||
],
|
||||
"Effect": "Allow",
|
||||
"Resource": "arn:aws:secretsmanager:us-east-1:495395224548:secret:agent-claw/telegram-bot-token-Oq3in3"
|
||||
},
|
||||
{
|
||||
"Action": [
|
||||
"events:RemoveTargets",
|
||||
"events:DeleteRule"
|
||||
],
|
||||
"Effect": "Allow",
|
||||
"Resource": "arn:aws:events:us-east-1:495395224548:rule/agent-claw-reminder-*"
|
||||
}
|
||||
],
|
||||
"Version": "2012-10-17"
|
||||
},
|
||||
"PolicyName": "SchedulerServiceRoleDefaultPolicyFA0D8235",
|
||||
"Roles": [
|
||||
{
|
||||
"Ref": "SchedulerServiceRole62CDA70C"
|
||||
}
|
||||
]
|
||||
},
|
||||
"Metadata": {
|
||||
"aws:cdk:path": "AgentClawStack/Scheduler/ServiceRole/DefaultPolicy/Resource"
|
||||
}
|
||||
},
|
||||
"SchedulerCFE73206": {
|
||||
"Type": "AWS::Lambda::Function",
|
||||
"Properties": {
|
||||
"Code": {
|
||||
"S3Bucket": "cdk-hnb659fds-assets-495395224548-us-east-1",
|
||||
"S3Key": "8e7324457a5952eb51f04a34fbc5ba853252e7157d8d8958ac5fda92e72edb1f.zip"
|
||||
},
|
||||
"Environment": {
|
||||
"Variables": {
|
||||
"TELEGRAM_BOT_TOKEN_SECRET_ARN": "arn:aws:secretsmanager:us-east-1:495395224548:secret:agent-claw/telegram-bot-token-Oq3in3"
|
||||
}
|
||||
},
|
||||
"FunctionName": "agent-claw-scheduler",
|
||||
"Handler": "handler.handler",
|
||||
"MemorySize": 128,
|
||||
"Role": {
|
||||
"Fn::GetAtt": [
|
||||
"SchedulerServiceRole62CDA70C",
|
||||
"Arn"
|
||||
]
|
||||
},
|
||||
"Runtime": "python3.12",
|
||||
"Timeout": 30
|
||||
},
|
||||
"DependsOn": [
|
||||
"SchedulerServiceRoleDefaultPolicyFA0D8235",
|
||||
"SchedulerServiceRole62CDA70C"
|
||||
],
|
||||
"Metadata": {
|
||||
"aws:cdk:path": "AgentClawStack/Scheduler/Resource",
|
||||
"aws:asset:path": "asset.8e7324457a5952eb51f04a34fbc5ba853252e7157d8d8958ac5fda92e72edb1f",
|
||||
"aws:asset:is-bundled": false,
|
||||
"aws:asset:property": "Code"
|
||||
}
|
||||
},
|
||||
"SchedulerEventBridgeInvoke72A0529A": {
|
||||
"Type": "AWS::Lambda::Permission",
|
||||
"Properties": {
|
||||
"Action": "lambda:InvokeFunction",
|
||||
"FunctionName": {
|
||||
"Fn::GetAtt": [
|
||||
"SchedulerCFE73206",
|
||||
"Arn"
|
||||
]
|
||||
},
|
||||
"Principal": "events.amazonaws.com",
|
||||
"SourceArn": "arn:aws:events:us-east-1:495395224548:rule/agent-claw-reminder-*"
|
||||
},
|
||||
"Metadata": {
|
||||
"aws:cdk:path": "AgentClawStack/Scheduler/EventBridgeInvoke"
|
||||
}
|
||||
},
|
||||
"CDKMetadata": {
|
||||
"Type": "AWS::CDK::Metadata",
|
||||
"Properties": {
|
||||
@@ -1216,6 +1364,15 @@
|
||||
"Arn"
|
||||
]
|
||||
}
|
||||
},
|
||||
"SchedulerLambdaArn": {
|
||||
"Description": "Scheduler Lambda ARN — set as SCHEDULER_LAMBDA_ARN in agentcore.json",
|
||||
"Value": {
|
||||
"Fn::GetAtt": [
|
||||
"SchedulerCFE73206",
|
||||
"Arn"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"Parameters": {
|
||||
|
||||
Reference in New Issue
Block a user