Isolate pasta uploads from database.json by moving them into pasta_data/public/
This commit is contained in:
parent
7b4cd7c26e
commit
05941f0d6f
4 changed files with 10 additions and 10 deletions
|
@ -122,11 +122,11 @@ pub async fn create(
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
std::fs::create_dir_all(format!("./pasta_data/{}", &new_pasta.id_as_animals()))
|
std::fs::create_dir_all(format!("./pasta_data/public/{}", &new_pasta.id_as_animals()))
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
let filepath = format!(
|
let filepath = format!(
|
||||||
"./pasta_data/{}/{}",
|
"./pasta_data/public/{}/{}",
|
||||||
&new_pasta.id_as_animals(),
|
&new_pasta.id_as_animals(),
|
||||||
&file.name()
|
&file.name()
|
||||||
);
|
);
|
||||||
|
|
|
@ -25,14 +25,14 @@ pub async fn remove(data: web::Data<AppState>, id: web::Path<String>) -> HttpRes
|
||||||
if pasta.id == id {
|
if pasta.id == id {
|
||||||
// remove the file itself
|
// remove the file itself
|
||||||
if let Some(PastaFile { name, .. }) = &pasta.file {
|
if let Some(PastaFile { name, .. }) = &pasta.file {
|
||||||
if fs::remove_file(format!("./pasta_data/{}/{}", pasta.id_as_animals(), name))
|
if fs::remove_file(format!("./pasta_data/public/{}/{}", pasta.id_as_animals(), name))
|
||||||
.is_err()
|
.is_err()
|
||||||
{
|
{
|
||||||
log::error!("Failed to delete file {}!", name)
|
log::error!("Failed to delete file {}!", name)
|
||||||
}
|
}
|
||||||
|
|
||||||
// and remove the containing directory
|
// and remove the containing directory
|
||||||
if fs::remove_dir(format!("./pasta_data/{}/", pasta.id_as_animals())).is_err() {
|
if fs::remove_dir(format!("./pasta_data/public/{}/", pasta.id_as_animals())).is_err() {
|
||||||
log::error!("Failed to delete directory {}!", name)
|
log::error!("Failed to delete directory {}!", name)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,11 +63,11 @@ async fn main() -> std::io::Result<()> {
|
||||||
ARGS.port.to_string()
|
ARGS.port.to_string()
|
||||||
);
|
);
|
||||||
|
|
||||||
match fs::create_dir_all("./pasta_data") {
|
match fs::create_dir_all("./pasta_data/public") {
|
||||||
Ok(dir) => dir,
|
Ok(dir) => dir,
|
||||||
Err(error) => {
|
Err(error) => {
|
||||||
log::error!("Couldn't create data directory ./pasta_data: {:?}", error);
|
log::error!("Couldn't create data directory ./pasta_data/public/: {:?}", error);
|
||||||
panic!("Couldn't create data directory ./pasta_data: {:?}", error);
|
panic!("Couldn't create data directory ./pasta_data/public/: {:?}", error);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ async fn main() -> std::io::Result<()> {
|
||||||
.service(edit::get_edit)
|
.service(edit::get_edit)
|
||||||
.service(edit::post_edit)
|
.service(edit::post_edit)
|
||||||
.service(static_resources::static_resources)
|
.service(static_resources::static_resources)
|
||||||
.service(actix_files::Files::new("/file", "./pasta_data"))
|
.service(actix_files::Files::new("/file", "./pasta_data/public/"))
|
||||||
.service(web::resource("/upload").route(web::post().to(create::create)))
|
.service(web::resource("/upload").route(web::post().to(create::create)))
|
||||||
.default_service(web::route().to(errors::not_found))
|
.default_service(web::route().to(errors::not_found))
|
||||||
.wrap(middleware::Logger::default())
|
.wrap(middleware::Logger::default())
|
||||||
|
|
|
@ -24,7 +24,7 @@ pub fn remove_expired(pastas: &mut Vec<Pasta>) {
|
||||||
// remove the file itself
|
// remove the file itself
|
||||||
if let Some(file) = &p.file {
|
if let Some(file) = &p.file {
|
||||||
if fs::remove_file(format!(
|
if fs::remove_file(format!(
|
||||||
"./pasta_data/{}/{}",
|
"./pasta_data/public/{}/{}",
|
||||||
p.id_as_animals(),
|
p.id_as_animals(),
|
||||||
file.name()
|
file.name()
|
||||||
))
|
))
|
||||||
|
@ -34,7 +34,7 @@ pub fn remove_expired(pastas: &mut Vec<Pasta>) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// and remove the containing directory
|
// and remove the containing directory
|
||||||
if fs::remove_dir(format!("./pasta_data/{}/", p.id_as_animals())).is_err() {
|
if fs::remove_dir(format!("./pasta_data/public/{}/", p.id_as_animals())).is_err() {
|
||||||
log::error!("Failed to delete directory {}!", file.name())
|
log::error!("Failed to delete directory {}!", file.name())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue