diff options
Diffstat (limited to 'src/converge.rs')
| -rw-r--r-- | src/converge.rs | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/src/converge.rs b/src/converge.rs index f0746f9..29c4878 100644 --- a/src/converge.rs +++ b/src/converge.rs @@ -2,13 +2,11 @@ use std::collections::HashSet; use std::fmt::Debug; use anyhow::Result; -use aws_sdk_route53::types::ResourceRecordSet; use futures::try_join; use crate::autoscaling::{propose_asg_recordsets, AutoScaling}; use crate::ec2::Ec2; -use crate::hashable::Hashable; -use crate::route53::{zone_actual_recordsets, zone_for_name, Route53, Target}; +use crate::route53::{zone_actual_recordsets, zone_for_name, ResourceRecordSet, Route53, Target}; #[derive(Debug)] pub struct Changes<T> { @@ -38,23 +36,14 @@ where fn changes_for_records<T>( zone_id: &str, - intended: &HashSet<Hashable<T>>, - actual: &HashSet<Hashable<T>>, + intended: &HashSet<T>, + actual: &HashSet<T>, ) -> Changes<impl IntoIterator<Item = T> + Debug> where - Hashable<T>: Eq + std::hash::Hash, - T: Clone + Debug, + T: std::hash::Hash + Eq + Clone + Debug, { - let remove: Vec<_> = actual - .difference(intended) - .map(Hashable::as_ref) - .cloned() - .collect(); - let insert: Vec<_> = intended - .difference(actual) - .map(Hashable::as_ref) - .cloned() - .collect(); + let remove: Vec<_> = actual.difference(intended).cloned().collect(); + let insert: Vec<_> = intended.difference(actual).cloned().collect(); Changes { zone_id: zone_id.into(), |
