summaryrefslogtreecommitdiff
path: root/src/converge.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/converge.rs')
-rw-r--r--src/converge.rs23
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(),