diff options
| author | Owen Jacobson <owen@grimoire.ca> | 2024-07-25 20:01:46 -0400 |
|---|---|---|
| committer | Owen Jacobson <owen@grimoire.ca> | 2024-07-25 20:01:46 -0400 |
| commit | 1754b64db14a1ea409779738a84d020fbb1ac79b (patch) | |
| tree | 8b41783dd178884492529b76c1976658dac497b5 /src/converge.rs | |
| parent | a2e2df7c0f97633bba3a91981c4c1598a062aaac (diff) | |
Unify dns_name and dns_ttl into a "target" type, pass that around.
Diffstat (limited to 'src/converge.rs')
| -rw-r--r-- | src/converge.rs | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/converge.rs b/src/converge.rs index d25a82b..f0746f9 100644 --- a/src/converge.rs +++ b/src/converge.rs @@ -4,12 +4,11 @@ use std::fmt::Debug; use anyhow::Result; use aws_sdk_route53::types::ResourceRecordSet; use futures::try_join; -use trust_dns_proto::rr::Name; use crate::autoscaling::{propose_asg_recordsets, AutoScaling}; use crate::ec2::Ec2; use crate::hashable::Hashable; -use crate::route53::{zone_actual_recordsets, zone_for_domain, Route53}; +use crate::route53::{zone_actual_recordsets, zone_for_name, Route53, Target}; #[derive(Debug)] pub struct Changes<T> { @@ -20,18 +19,17 @@ pub struct Changes<T> { pub async fn named_asg_changes<C>( aws_context: &C, + target: &Target, asg_name: &str, - dns_name: &Name, - dns_ttl: i64, ) -> Result<Changes<impl IntoIterator<Item = ResourceRecordSet> + Debug>> where C: AutoScaling + Ec2 + Route53, { - let zone = zone_for_domain(aws_context, dns_name).await?; + let zone = zone_for_name(aws_context, target.name()).await?; let (proposed, actual) = try_join!( - propose_asg_recordsets(aws_context, asg_name, dns_name, dns_ttl), - zone_actual_recordsets(aws_context, &zone.id, dns_name), + propose_asg_recordsets(aws_context, target, asg_name), + zone_actual_recordsets(aws_context, &zone.id, target.name()), )?; let changes = changes_for_records(&zone.id, &proposed, &actual); |
