From 2e9fb2a830fb7932147825eba1831dfd7a51dfde Mon Sep 17 00:00:00 2001 From: asonix Date: Tue, 5 Jan 2021 00:28:17 -0600 Subject: [PATCH] Update download route to return 'details' --- Cargo.lock | 2 +- Cargo.toml | 2 +- docker/prod/Dockerfile.amd64 | 2 +- docker/prod/Dockerfile.arm32v7 | 2 +- docker/prod/Dockerfile.arm64v8 | 2 +- src/main.rs | 19 ++++++++++++++++++- 6 files changed, 23 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e51f718..5a1115d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1449,7 +1449,7 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" [[package]] name = "pict-rs" -version = "0.3.0-alpha.2" +version = "0.3.0-alpha.3" dependencies = [ "actix-form-data", "actix-fs", diff --git a/Cargo.toml b/Cargo.toml index 935d69b..06cf9db 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "pict-rs" description = "A simple image hosting service" -version = "0.3.0-alpha.2" +version = "0.3.0-alpha.3" authors = ["asonix "] license = "AGPL-3.0" readme = "README.md" diff --git a/docker/prod/Dockerfile.amd64 b/docker/prod/Dockerfile.amd64 index 2e89682..f42223a 100644 --- a/docker/prod/Dockerfile.amd64 +++ b/docker/prod/Dockerfile.amd64 @@ -190,7 +190,7 @@ RUN \ pictrs && \ apt-get update && \ apt-get upgrade -y && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ libgexiv2-2 \ libpng16-16 \ libjpeg8 \ diff --git a/docker/prod/Dockerfile.arm32v7 b/docker/prod/Dockerfile.arm32v7 index 5c143cc..a286d2d 100644 --- a/docker/prod/Dockerfile.arm32v7 +++ b/docker/prod/Dockerfile.arm32v7 @@ -191,7 +191,7 @@ RUN \ pictrs && \ apt-get update && \ apt-get upgrade -y && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ libgexiv2-2 \ libpng16-16 \ libjpeg8 \ diff --git a/docker/prod/Dockerfile.arm64v8 b/docker/prod/Dockerfile.arm64v8 index 0dcb760..ca13625 100644 --- a/docker/prod/Dockerfile.arm64v8 +++ b/docker/prod/Dockerfile.arm64v8 @@ -191,7 +191,7 @@ RUN \ pictrs && \ apt-get update && \ apt-get upgrade -y && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ libgexiv2-2 \ libpng16-16 \ libjpeg8 \ diff --git a/src/main.rs b/src/main.rs index e8fa477..b002b52 100644 --- a/src/main.rs +++ b/src/main.rs @@ -214,11 +214,28 @@ async fn download( let alias = manager.upload(stream).await?; let delete_token = manager.delete_token(alias.clone()).await?; + let name = manager.from_alias(alias.to_owned()).await?; + let mut path = manager.image_dir(); + path.push(name.clone()); + + let details = manager.variant_details(path.clone(), name.clone()).await?; + + let details = if let Some(details) = details { + details + } else { + let new_details = Details::from_path(path.clone()).await?; + manager + .store_variant_details(path, name, &new_details) + .await?; + new_details + }; + Ok(HttpResponse::Created().json(serde_json::json!({ "msg": "ok", "files": [{ "file": alias, - "delete_token": delete_token + "delete_token": delete_token, + "details": details, }] }))) }