server: Upgrade aws-sdk-rust

This commit is contained in:
Zhaofeng Li 2023-05-28 15:21:59 -06:00
parent 6489d775ae
commit 1a0116fee8
3 changed files with 52 additions and 141 deletions

178
Cargo.lock generated
View file

@ -136,17 +136,6 @@ version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6"
[[package]]
name = "assert-json-diff"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4259cbe96513d2f1073027a259fc2ca917feb3026a5a8d984e3628e490255cc0"
dependencies = [
"extend",
"serde",
"serde_json",
]
[[package]]
name = "async-channel"
version = "1.8.0"
@ -364,9 +353,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
[[package]]
name = "aws-config"
version = "0.54.1"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c3d1e2a1f1ab3ac6c4b884e37413eaa03eb9d901e4fc68ee8f5c1d49721680e"
checksum = "bcdcf0d683fe9c23d32cf5b53c9918ea0a500375a9fb20109802552658e576c9"
dependencies = [
"aws-credential-types",
"aws-http",
@ -380,6 +369,7 @@ dependencies = [
"aws-smithy-types",
"aws-types",
"bytes",
"fastrand",
"hex",
"http",
"hyper",
@ -393,12 +383,13 @@ dependencies = [
[[package]]
name = "aws-credential-types"
version = "0.54.1"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bb0696a0523a39a19087747e4dafda0362dc867531e3d72a3f195564c84e5e08"
checksum = "1fcdb2f7acbc076ff5ad05e7864bdb191ca70a6fd07668dc3a1a8bcd051de5ae"
dependencies = [
"aws-smithy-async",
"aws-smithy-types",
"fastrand",
"tokio",
"tracing",
"zeroize",
@ -406,9 +397,9 @@ dependencies = [
[[package]]
name = "aws-endpoint"
version = "0.54.1"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "80a4f935ab6a1919fbfd6102a80c4fccd9ff5f47f94ba154074afe1051903261"
checksum = "8cce1c41a6cfaa726adee9ebb9a56fcd2bbfd8be49fd8a04c5e20fd968330b04"
dependencies = [
"aws-smithy-http",
"aws-smithy-types",
@ -420,9 +411,9 @@ dependencies = [
[[package]]
name = "aws-http"
version = "0.54.1"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "82976ca4e426ee9ca3ffcf919d9b2c8d14d0cd80d43cc02173737a8f07f28d4d"
checksum = "aadbc44e7a8f3e71c8b374e03ecd972869eb91dd2bc89ed018954a52ba84bc44"
dependencies = [
"aws-credential-types",
"aws-smithy-http",
@ -439,9 +430,9 @@ dependencies = [
[[package]]
name = "aws-sdk-s3"
version = "0.24.0"
version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1533be023eeac69668eb718b1c48af7bd5e26305ed770553d2877ab1f7507b68"
checksum = "fba197193cbb4bcb6aad8d99796b2291f36fa89562ded5d4501363055b0de89f"
dependencies = [
"aws-credential-types",
"aws-endpoint",
@ -459,8 +450,6 @@ dependencies = [
"aws-smithy-xml",
"aws-types",
"bytes",
"bytes-utils",
"fastrand",
"http",
"http-body",
"once_cell",
@ -474,9 +463,9 @@ dependencies = [
[[package]]
name = "aws-sdk-sso"
version = "0.24.0"
version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca0119bacf0c42f587506769390983223ba834e605f049babe514b2bd646dbb2"
checksum = "c8b812340d86d4a766b2ca73f740dfd47a97c2dff0c06c8517a16d88241957e4"
dependencies = [
"aws-credential-types",
"aws-endpoint",
@ -494,13 +483,14 @@ dependencies = [
"regex",
"tokio-stream",
"tower",
"tracing",
]
[[package]]
name = "aws-sdk-sts"
version = "0.24.0"
version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "270b6a33969ebfcb193512fbd5e8ee5306888ad6c6d5d775cdbfb2d50d94de26"
checksum = "265fac131fbfc188e5c3d96652ea90ecc676a934e3174eaaee523c6cec040b3b"
dependencies = [
"aws-credential-types",
"aws-endpoint",
@ -524,9 +514,9 @@ dependencies = [
[[package]]
name = "aws-sig-auth"
version = "0.54.1"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "660a02a98ab1af83bd8d714afbab2d502ba9b18c49e7e4cddd6bf8837ff778cb"
checksum = "3b94acb10af0c879ecd5c7bdf51cda6679a0a4f4643ce630905a77673bfa3c61"
dependencies = [
"aws-credential-types",
"aws-sigv4",
@ -539,9 +529,9 @@ dependencies = [
[[package]]
name = "aws-sigv4"
version = "0.54.2"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "86529e7b64d902efea8fff52c1b2529368d04f90305cf632729e3713f6b57dc0"
checksum = "9d2ce6f507be68e968a33485ced670111d1cbad161ddbbab1e313c03d37d8f4c"
dependencies = [
"aws-smithy-eventstream",
"aws-smithy-http",
@ -560,9 +550,9 @@ dependencies = [
[[package]]
name = "aws-smithy-async"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "63c712a28a4f2f2139759235c08bf98aca99d4fdf1b13c78c5f95613df0a5db9"
checksum = "13bda3996044c202d75b91afeb11a9afae9db9a721c6a7a427410018e286b880"
dependencies = [
"futures-util",
"pin-project-lite",
@ -572,9 +562,9 @@ dependencies = [
[[package]]
name = "aws-smithy-checksums"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a3875fb4b28606a5368a048016a28c15707f2b21238d5b2e4a23198f590e92c4"
checksum = "07ed8b96d95402f3f6b8b57eb4e0e45ee365f78b1a924faf20ff6e97abf1eae6"
dependencies = [
"aws-smithy-http",
"aws-smithy-types",
@ -593,14 +583,13 @@ dependencies = [
[[package]]
name = "aws-smithy-client"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "104ca17f56cde00a10207169697dfe9c6810db339d52fb352707e64875b30a44"
checksum = "0a86aa6e21e86c4252ad6a0e3e74da9617295d8d6e374d552be7d3059c41cedd"
dependencies = [
"aws-smithy-async",
"aws-smithy-http",
"aws-smithy-http-tower",
"aws-smithy-protocol-test",
"aws-smithy-types",
"bytes",
"fastrand",
@ -610,7 +599,7 @@ dependencies = [
"hyper-rustls 0.23.2",
"lazy_static",
"pin-project-lite",
"serde",
"rustls 0.20.8",
"tokio",
"tower",
"tracing",
@ -618,9 +607,9 @@ dependencies = [
[[package]]
name = "aws-smithy-eventstream"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ac250d8c0e42af0097a6837ffc5a6fb9f8ba4107bb53124c047c91bc2a58878f"
checksum = "460c8da5110835e3d9a717c61f5556b20d03c32a1dec57f8fc559b360f733bb8"
dependencies = [
"aws-smithy-types",
"bytes",
@ -629,9 +618,9 @@ dependencies = [
[[package]]
name = "aws-smithy-http"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "873f316f1833add0d3aa54ed1b0cd252ddd88c792a0cf839886400099971e844"
checksum = "2b3b693869133551f135e1f2c77cb0b8277d9e3e17feaf2213f735857c4f0d28"
dependencies = [
"aws-smithy-eventstream",
"aws-smithy-types",
@ -652,9 +641,9 @@ dependencies = [
[[package]]
name = "aws-smithy-http-tower"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4f38231d3f5dac9ac7976f44e12803add1385119ffca9e5f050d8e980733d164"
checksum = "3ae4f6c5798a247fac98a867698197d9ac22643596dc3777f0c76b91917616b9"
dependencies = [
"aws-smithy-http",
"aws-smithy-types",
@ -668,33 +657,18 @@ dependencies = [
[[package]]
name = "aws-smithy-json"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4bd83ff2b79e9f729746fcc8ad798676b68fe6ea72986571569a5306a277a182"
checksum = "23f9f42fbfa96d095194a632fbac19f60077748eba536eb0b9fecc28659807f8"
dependencies = [
"aws-smithy-types",
]
[[package]]
name = "aws-smithy-protocol-test"
version = "0.54.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d4d1c9bcb35ce11055ec128dab2c66a7ed47e2dfff99883e32c21a1ab6d6bee6"
dependencies = [
"assert-json-diff",
"http",
"pretty_assertions",
"regex",
"roxmltree",
"serde_json",
"thiserror",
]
[[package]]
name = "aws-smithy-query"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a2f0445dafe9d2cd50b44339ae3c3ed46549aad8ac696c52ad660b3e7ae8682b"
checksum = "98819eb0b04020a1c791903533b638534ae6c12e2aceda3e6e6fba015608d51d"
dependencies = [
"aws-smithy-types",
"urlencoding",
@ -702,9 +676,9 @@ dependencies = [
[[package]]
name = "aws-smithy-types"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8161232eda10290f5136610a1eb9de56aceaccd70c963a26a260af20ac24794f"
checksum = "16a3d0bf4f324f4ef9793b86a1701d9700fbcdbd12a846da45eed104c634c6e8"
dependencies = [
"base64-simd",
"itoa",
@ -715,18 +689,18 @@ dependencies = [
[[package]]
name = "aws-smithy-xml"
version = "0.54.4"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "343ffe9a9bb3f542675f4df0e0d5933513d6ad038ca3907ad1767ba690a99684"
checksum = "b1b9d12875731bd07e767be7baad95700c3137b56730ec9ddeedb52a5e5ca63b"
dependencies = [
"xmlparser",
]
[[package]]
name = "aws-types"
version = "0.54.1"
version = "0.55.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8f15b34253b68cde08e39b0627cc6101bcca64351229484b4743392c035d057"
checksum = "6dd209616cc8d7bfb82f87811a5c655dc97537f592689b18743bddf5dc5c4829"
dependencies = [
"aws-credential-types",
"aws-smithy-async",
@ -1385,16 +1359,6 @@ version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f3b7eb4404b8195a9abb6356f4ac07d8ba267045c8d6d220ac4dc992e6cc75df"
[[package]]
name = "ctor"
version = "0.1.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"
dependencies = [
"quote",
"syn 1.0.109",
]
[[package]]
name = "cxx"
version = "1.0.95"
@ -1519,12 +1483,6 @@ dependencies = [
"zeroize",
]
[[package]]
name = "diff"
version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8"
[[package]]
name = "digest"
version = "0.10.7"
@ -1679,18 +1637,6 @@ version = "2.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
[[package]]
name = "extend"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f47da3a72ec598d9c8937a7ebca8962a5c7a1f28444e38c2b33c771ba3f55f05"
dependencies = [
"proc-macro-error",
"proc-macro2",
"quote",
"syn 1.0.109",
]
[[package]]
name = "fastcdc"
version = "3.0.3"
@ -2717,15 +2663,6 @@ dependencies = [
"syn 1.0.109",
]
[[package]]
name = "output_vt100"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "628223faebab4e3e40667ee0b2336d34a5b960ff60ea743ddfdbcf7770bcfb66"
dependencies = [
"winapi",
]
[[package]]
name = "outref"
version = "0.5.1"
@ -2914,18 +2851,6 @@ version = "0.2.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
[[package]]
name = "pretty_assertions"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a25e9bcb20aa780fd0bb16b72403a9064d6b3f22f026946029acb941a50af755"
dependencies = [
"ctor",
"diff",
"output_vt100",
"yansi",
]
[[package]]
name = "primeorder"
version = "0.13.1"
@ -3239,15 +3164,6 @@ dependencies = [
"syn 1.0.109",
]
[[package]]
name = "roxmltree"
version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "921904a62e410e37e215c40381b7117f830d9d89ba60ab5236170541dd25646b"
dependencies = [
"xmlparser",
]
[[package]]
name = "rsa"
version = "0.7.2"
@ -4996,12 +4912,6 @@ dependencies = [
"lzma-sys",
]
[[package]]
name = "yansi"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec"
[[package]]
name = "zeroize"
version = "1.6.0"

View file

@ -25,8 +25,8 @@ attic-token = { path = "../token" }
anyhow = "1.0.71"
async-stream = "0.3.5"
async-trait = "0.1.68"
aws-config = "0.54.1"
aws-sdk-s3 = "0.24.0"
aws-config = "0.55.3"
aws-sdk-s3 = "0.28.0"
axum = "0.6.18"
axum-macros = "0.3.7"
base64 = "0.21.2"

View file

@ -5,11 +5,12 @@ use std::time::Duration;
use async_trait::async_trait;
use aws_sdk_s3::{
client::fluent_builders::GetObject,
operation::get_object::builders::GetObjectFluentBuilder,
config::Builder as S3ConfigBuilder,
model::{CompletedMultipartUpload, CompletedPart},
presigning::config::PresigningConfig,
Client, Credentials, Region,
types::{CompletedMultipartUpload, CompletedPart},
presigning::PresigningConfig,
config::{Credentials, Region},
Client,
};
use bytes::BytesMut;
use futures::future::join_all;
@ -140,7 +141,7 @@ impl S3Backend {
Ok((client, file))
}
async fn get_download(&self, req: GetObject, prefer_stream: bool) -> ServerResult<Download> {
async fn get_download(&self, req: GetObjectFluentBuilder, prefer_stream: bool) -> ServerResult<Download> {
if prefer_stream {
let output = req.send().await.map_err(ServerError::storage_error)?;