projects
/
gandi_dns_update.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Display the DNS update response
[gandi_dns_update.git]
/
src
/
main.rs
diff --git
a/src/main.rs
b/src/main.rs
index
3c3b4f5
..
67c251a
100644
(file)
--- a/
src/main.rs
+++ b/
src/main.rs
@@
-11,7
+11,7
@@
#![cfg_attr(debug_assertions, allow(unused_variables, unused_imports, dead_code))]
#![cfg_attr(debug_assertions, allow(unused_variables, unused_imports, dead_code))]
-use std::{ f
mt::format, f
s::File, net::{ IpAddr, Ipv4Addr }, thread, time };
+use std::{ fs::File, net::{ IpAddr, Ipv4Addr }, thread, time };
use ron::{ de::from_reader, ser::to_writer };
use serde::{ Deserialize, Serialize };
use serde_json::{ Value, json };
use ron::{ de::from_reader, ser::to_writer };
use serde::{ Deserialize, Serialize };
use serde_json::{ Value, json };
@@
-32,7
+32,7
@@
impl std::fmt::Display for Error {
impl std::error::Error for Error { }
impl std::error::Error for Error { }
-#[derive(Debug, Deserialize, Serialize)]
+#[derive(Debug,
Clone,
Deserialize, Serialize)]
struct Config {
delay_between_check: time::Duration,
api_key: String,
struct Config {
delay_between_check: time::Duration,
api_key: String,
@@
-68,7
+68,7
@@
fn main() -> Result<()> {
let config = Config::read(FILE_CONF)?;
let config = Config::read(FILE_CONF)?;
- println!("Configuration: {:?}",
config
);
+ println!("Configuration: {:?}",
Config { api_key: String::from("*****"), ..config.clone() }
);
loop {
let time_beginning_loop = time::Instant::now();
loop {
let time_beginning_loop = time::Instant::now();
@@
-88,11
+88,9
@@
fn main() -> Result<()> {
fn check_and_update_dns(api_key: &str, fqdn: &str, domains: &Vec<String>, ttl: i32) -> Result<()> {
let real_ip = get_real_ip()?;
fn check_and_update_dns(api_key: &str, fqdn: &str, domains: &Vec<String>, ttl: i32) -> Result<()> {
let real_ip = get_real_ip()?;
- dbg!(&real_ip);
for domain in domains {
let current_ip = get_current_record_ip(api_key, domain, fqdn)?;
for domain in domains {
let current_ip = get_current_record_ip(api_key, domain, fqdn)?;
- dbg!(domain, current_ip);
if real_ip != current_ip {
println!("IP addresses don't match for domain {}: real = {}, dns = {}. Renewing DNS...", domain, real_ip, current_ip);
if real_ip != current_ip {
println!("IP addresses don't match for domain {}: real = {}, dns = {}. Renewing DNS...", domain, real_ip, current_ip);
@@
-177,7
+175,7
@@
fn update_record_ip(api_key: &str, name: &str, fqdn: &str, ip: Ipv4Addr, ttl: i3
let json_value = request_livedns_gandi(api_key, &format!("domains/{}/records/{}/A", fqdn, name), Method::Put(json_body.to_string()))?;
let json_value = request_livedns_gandi(api_key, &format!("domains/{}/records/{}/A", fqdn, name), Method::Put(json_body.to_string()))?;
-
dbg!(
json_value);
+
println!("Update response: {}",
json_value);
Ok(())
}
Ok(())
}