38 řádky
845 B
Rust
38 řádky
845 B
Rust
|
use anyhow::Error;
|
||
|
use glob::glob;
|
||
|
use html_minifier::minify;
|
||
|
use std::{
|
||
|
fs::{read_to_string, File},
|
||
|
io::Write,
|
||
|
process::Command,
|
||
|
};
|
||
|
|
||
|
fn main() -> Result<(), Error> {
|
||
|
println!("cargo:rerun-if-changed=build.rs");
|
||
|
println!("cargo:rerun-if-changed=migrations");
|
||
|
println!("cargo:rerun-if-changed=templates");
|
||
|
|
||
|
Command::new("rm").args(["-rf", "templates_min"]).output()?;
|
||
|
|
||
|
Command::new("cp")
|
||
|
.args(["-r", "templates", "templates_min"])
|
||
|
.output()?;
|
||
|
|
||
|
let templates = glob("templates_min/**/*.html")?;
|
||
|
|
||
|
for path in templates {
|
||
|
let path = path?;
|
||
|
|
||
|
if !path.is_file() {
|
||
|
continue;
|
||
|
}
|
||
|
|
||
|
let html = read_to_string(&path)?;
|
||
|
let minified = minify(html)?.replace('\n', "");
|
||
|
|
||
|
File::create(path)?.write_all(minified.as_bytes())?;
|
||
|
}
|
||
|
|
||
|
Ok(())
|
||
|
}
|