add: trigger regen on drop
This commit is contained in:
@@ -8,4 +8,5 @@ RUN cargo build --release
|
|||||||
FROM debian:stable-slim
|
FROM debian:stable-slim
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=builder /app/target/release/handler .
|
COPY --from=builder /app/target/release/handler .
|
||||||
|
COPY --from=builder /app/target/release/skubelb .
|
||||||
CMD ["./handler"]
|
CMD ["./handler"]
|
||||||
@@ -98,7 +98,7 @@ impl Rewriter {
|
|||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn cleanup(&mut self) {
|
pub fn cleanup(&mut self) -> bool {
|
||||||
let now = Instant::now();
|
let now = Instant::now();
|
||||||
let mut to_remove = vec![];
|
let mut to_remove = vec![];
|
||||||
for (name, when) in self.replacement_cleanup.iter() {
|
for (name, when) in self.replacement_cleanup.iter() {
|
||||||
@@ -106,10 +106,11 @@ impl Rewriter {
|
|||||||
to_remove.push(name.clone());
|
to_remove.push(name.clone());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
let will_cleanup = to_remove.len() > 0;
|
||||||
for name in to_remove {
|
for name in to_remove {
|
||||||
self.remove_replacement(&name);
|
self.remove_replacement(&name);
|
||||||
}
|
}
|
||||||
|
will_cleanup
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -36,9 +36,12 @@ impl Server {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn cleanup(&mut self) -> Result<()> {
|
pub fn cleanup(&mut self) -> Result<bool> {
|
||||||
self.rewriter.cleanup();
|
let cleaned_up = self.rewriter.cleanup();
|
||||||
Ok(())
|
if cleaned_up {
|
||||||
|
self.generate_config()?;
|
||||||
|
}
|
||||||
|
Ok(cleaned_up)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn register(&mut self, _request: &Request, ip: &str) -> Result<()> {
|
pub fn register(&mut self, _request: &Request, ip: &str) -> Result<()> {
|
||||||
|
|||||||
Reference in New Issue
Block a user