diff --git a/lib/ansible/modules/cloud/amazon/ec2_metric_alarm.py b/lib/ansible/modules/cloud/amazon/ec2_metric_alarm.py index 2949c57630e..5c23f5f734f 100644 --- a/lib/ansible/modules/cloud/amazon/ec2_metric_alarm.py +++ b/lib/ansible/modules/cloud/amazon/ec2_metric_alarm.py @@ -225,7 +225,9 @@ def create_metric_alarm(connection, module): for attr in ('alarm_actions','insufficient_data_actions','ok_actions'): action = module.params.get(attr) or [] - if getattr(alarm, attr) != action: + # Boto and/or ansible may provide same elements in lists but in different order. + # Compare on sets since they do not need any order. + if set(getattr(alarm, attr)) != set(action): changed = True setattr(alarm, attr, module.params.get(attr))