feat: fix typo
This commit is contained in:
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -4,7 +4,7 @@ version = 3
|
||||
|
||||
[[package]]
|
||||
name = "acme-client"
|
||||
version = "1.3.2"
|
||||
version = "1.3.3"
|
||||
dependencies = [
|
||||
"acme-lib",
|
||||
"aliyun-openapi-core-rust-sdk",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "acme-client"
|
||||
version = "1.3.2"
|
||||
version = "1.3.3"
|
||||
authors = ["Hatter Jiang <jht5945@gmail.com>"]
|
||||
edition = "2018"
|
||||
description = "Acme auto challenge client, acme-client can issue certificates from Let's encrypt"
|
||||
|
||||
26
src/main.rs
26
src/main.rs
@@ -8,7 +8,7 @@ mod util;
|
||||
mod config;
|
||||
mod x509;
|
||||
mod network;
|
||||
mod statics;
|
||||
mod statistics;
|
||||
mod dingtalk;
|
||||
mod dns;
|
||||
mod ali_dns;
|
||||
@@ -27,7 +27,7 @@ use rust_util::util_cmd::run_command_and_wait;
|
||||
use crate::config::{AcmeMode, AcmeChallenge, CertConfig, CERT_NAME, KEY_NAME};
|
||||
use crate::x509::{X509PublicKeyAlgo};
|
||||
use crate::dingtalk::send_dingtalk_message;
|
||||
use crate::statics::{AcmeStatics, AcmeStatus};
|
||||
use crate::statistics::{AcmeStatistics, AcmeStatus};
|
||||
use crate::acme::{AcmeRequest, request_acme_certificate};
|
||||
use crate::network::get_local_public_ip;
|
||||
|
||||
@@ -242,7 +242,7 @@ async fn main() -> tide::Result<()> {
|
||||
check_cert_config(&cert_config);
|
||||
return Ok(());
|
||||
}
|
||||
let mut acme_statics = AcmeStatics::start();
|
||||
let mut acme_statistics = AcmeStatistics::start();
|
||||
let filtered_cert_config = cert_config.filter_cert_config_items(30);
|
||||
for item in &filtered_cert_config.cert_items {
|
||||
if item.common_name.as_ref().map(|n| n.contains('*')).unwrap_or(false)
|
||||
@@ -293,24 +293,24 @@ async fn main() -> tide::Result<()> {
|
||||
dns_names.iter().for_each(|dns_name| domains.push(dns_name.clone()));
|
||||
if let Err(e) = request_acme_certificate(acme_request, &mut dns_cleaned_domains) {
|
||||
failure!("Request certificate: {}, by acme failed: {}", item.path, e);
|
||||
acme_statics.add_item(domains, AcmeStatus::Fail(format!("{}", e)));
|
||||
acme_statistics.add_item(domains, AcmeStatus::Fail(format!("{}", e)));
|
||||
} else {
|
||||
acme_statics.add_item(domains, AcmeStatus::Success);
|
||||
acme_statistics.add_item(domains, AcmeStatus::Success);
|
||||
}
|
||||
}
|
||||
}
|
||||
acme_statics.end();
|
||||
acme_statistics.end();
|
||||
|
||||
let mut success_count = 0;
|
||||
for acme_static in &acme_statics.items {
|
||||
if let AcmeStatus::Success = acme_static.status {
|
||||
for acme_statistic in &acme_statistics.items {
|
||||
if let AcmeStatus::Success = acme_statistic.status {
|
||||
success_count += 1;
|
||||
}
|
||||
}
|
||||
|
||||
success!("Statics: \n{}", acme_statics);
|
||||
success!("Statistics: \n{}", acme_statistics);
|
||||
|
||||
let mut dingtalk_message = format!("Statics: \n{}", acme_statics);
|
||||
let mut dingtalk_message = format!("Statistics: \n{}", acme_statistics);
|
||||
if success_count > 0 {
|
||||
if let Some(trigger_after_update) = &filtered_cert_config.trigger_after_update {
|
||||
if trigger_after_update.len() > 0 {
|
||||
@@ -338,7 +338,7 @@ async fn main() -> tide::Result<()> {
|
||||
|
||||
let mut success_domains = vec![];
|
||||
let mut failed_domains = vec![];
|
||||
for acme_item in &acme_statics.items {
|
||||
for acme_item in &acme_statistics.items {
|
||||
if let AcmeStatus::Success = acme_item.status {
|
||||
success_domains.push(format!("* {}", acme_item.domains.join(", ")));
|
||||
}
|
||||
@@ -356,12 +356,12 @@ async fn main() -> tide::Result<()> {
|
||||
dingtalk_message.push_str(&failed_domains.join("\n"));
|
||||
}
|
||||
|
||||
if !acme_statics.items.is_empty() && filtered_cert_config.notify_token.is_some() {
|
||||
if !acme_statistics.items.is_empty() && filtered_cert_config.notify_token.is_some() {
|
||||
if let Err(err) = send_dingtalk_message(&filtered_cert_config, &dingtalk_message) {
|
||||
failure!("Send notification message failed: {:?}", err);
|
||||
}
|
||||
} else {
|
||||
information!("No notification message need to send, or not configed notification token");
|
||||
information!("No notification message sent, or no configured notification token");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ use std::time::SystemTime;
|
||||
use std::fmt::{Display, Formatter, Result};
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct AcmeStatics {
|
||||
pub struct AcmeStatistics {
|
||||
pub started: SystemTime,
|
||||
pub ended: Option<SystemTime>,
|
||||
pub items: Vec<AcmeItem>,
|
||||
@@ -36,7 +36,7 @@ impl Display for AcmeItem {
|
||||
}
|
||||
}
|
||||
|
||||
impl Display for AcmeStatics {
|
||||
impl Display for AcmeStatistics {
|
||||
fn fmt(&self, f: &mut Formatter<'_>) -> Result {
|
||||
let mut sb = String::with_capacity(512);
|
||||
let df = simpledateformat::fmt("yyyy-MM-dd HH:mm:ss z").unwrap();
|
||||
@@ -72,9 +72,9 @@ impl Display for AcmeStatics {
|
||||
}
|
||||
}
|
||||
|
||||
impl AcmeStatics {
|
||||
pub fn start() -> AcmeStatics {
|
||||
AcmeStatics {
|
||||
impl AcmeStatistics {
|
||||
pub fn start() -> AcmeStatistics {
|
||||
AcmeStatistics {
|
||||
started: SystemTime::now(),
|
||||
ended: None,
|
||||
items: Vec::new(),
|
||||
Reference in New Issue
Block a user