@@ -74,22 +74,25 @@ def get_store() -> EventsStore:
74
74
def get_scheduled_rule_func (rule_name : RuleName , event_bus_name : Optional [EventBusNameOrArn ]):
75
75
def func (* args , ** kwargs ):
76
76
client = aws_stack .connect_to_service ("events" )
77
- targets = client .list_targets_by_rule (Rule = rule_name , EventBusName = event_bus_name )[
78
- "Targets"
79
- ]
77
+ targets_args = {"Rule" : rule_name }
78
+ if event_bus_name :
79
+ targets_args ["EventBusName" ] = event_bus_name
80
+ targets = client .list_targets_by_rule (** targets_args )["Targets" ]
80
81
if targets :
81
82
LOG .debug (
82
83
"Notifying %s targets in response to triggered Events rule %s" ,
83
84
len (targets ),
84
85
rule_name ,
85
86
)
86
- rule_arn = client .describe_rule (Name = rule_name , EventBusName = event_bus_name )["Arn" ]
87
+ targets_args .update ({"Name" : targets_args .pop ("Rule" )})
88
+ rule_arn = client .describe_rule (** targets_args )["Arn" ]
87
89
for target in targets :
88
90
arn = target .get ("Arn" )
89
91
# TODO generate event matching aws in case no Input has been specified
90
92
event_str = target .get ("Input" ) or "{}"
91
93
event = json .loads (event_str )
92
94
attr = pick_attributes (target , ["$.SqsParameters" , "$.KinesisParameters" ])
95
+
93
96
try :
94
97
send_event_to_target (
95
98
arn ,
@@ -131,8 +134,8 @@ def convert_schedule_to_cron(schedule):
131
134
def put_rule_job_scheduler (
132
135
name : Optional [RuleName ],
133
136
state : Optional [RuleState ],
134
- event_bus_name : Optional [EventBusNameOrArn ],
135
137
schedule_expression : Optional [ScheduleExpression ],
138
+ event_bus_name : Optional [EventBusNameOrArn ],
136
139
):
137
140
enabled = state != "DISABLED"
138
141
if schedule_expression :
@@ -156,7 +159,7 @@ def put_rule(
156
159
tags : TagList = None ,
157
160
event_bus_name : EventBusNameOrArn = None ,
158
161
) -> PutRuleResponse :
159
- self .put_rule_job_scheduler (name , state , schedule_expression )
162
+ self .put_rule_job_scheduler (name , state , schedule_expression , event_bus_name )
160
163
return call_moto (context )
161
164
162
165
def delete_rule (
0 commit comments