Skip to content

Commit

Permalink
aws: switch to aws-sdk (tikv#13814) (tikv#17833)
Browse files Browse the repository at this point in the history
close tikv#12371

* switch kms to aws_sdk lib
* switch s3 to aws_sdk lib

Signed-off-by: ti-chi-bot <[email protected]>
Signed-off-by: 3pointer <[email protected]>

Co-authored-by: Andrey Koshchiy <[email protected]>
Co-authored-by: 3pointer <[email protected]>
Co-authored-by: ti-chi-bot[bot] <108142056+ti-chi-bot[bot]@users.noreply.github.com>
  • Loading branch information
4 people authored Nov 27, 2024
1 parent 7a168a5 commit 9df0e73
Show file tree
Hide file tree
Showing 10 changed files with 1,922 additions and 1,020 deletions.
1,174 changes: 944 additions & 230 deletions Cargo.lock

Large diffs are not rendered by default.

11 changes: 1 addition & 10 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -204,19 +204,10 @@ raft-proto = { git = "https://github.com/tikv/raft-rs", branch = "master" }
protobuf = { git = "https://github.com/pingcap/rust-protobuf", branch = "v2.8" }
protobuf-codegen = { git = "https://github.com/pingcap/rust-protobuf", branch = "v2.8" }

# TODO: remove this replacement after rusoto_s3 truly supports virtual-host style (https://github.com/rusoto/rusoto/pull/1823).
# UPDATE: use openssl for signature to support fips 140
rusoto_core = { git = "https://github.com/tikv/rusoto", branch = "gh1482-s3-addr-styles" }
rusoto_credential = { git = "https://github.com/tikv/rusoto", branch = "gh1482-s3-addr-styles" }
rusoto_kms = { git = "https://github.com/tikv/rusoto", branch = "gh1482-s3-addr-styles" }
rusoto_mock = { git = "https://github.com/tikv/rusoto", branch = "gh1482-s3-addr-styles" }
rusoto_s3 = { git = "https://github.com/tikv/rusoto", branch = "gh1482-s3-addr-styles" }
rusoto_sts = { git = "https://github.com/tikv/rusoto", branch = "gh1482-s3-addr-styles" }
snappy-sys = { git = "https://github.com/tikv/rust-snappy.git", branch = "static-link" }
# NOTICE: use openssl for signature to support fips 140
tame-oauth = { git = "https://github.com/tikv/tame-oauth", branch = "fips-0.9" }

snappy-sys = { git = "https://github.com/tikv/rust-snappy.git", branch = "static-link" }

# remove this when https://github.com/danburkert/fs2-rs/pull/42 is merged.
fs2 = { git = "https://github.com/tikv/fs2-rs", branch = "tikv" }

Expand Down
27 changes: 21 additions & 6 deletions components/cloud/aws/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,18 @@ failpoints = ["fail/failpoints"]

[dependencies]
async-trait = "0.1"

aws-config = { version = "1", features = [], default-features = false }
aws-credential-types = { version = "1", features = ["hardcoded-credentials"] }
# Note: [email protected], [email protected] and [email protected] is the latest version that supports rustc 1.77...
# We may update this after we update our rustc.
aws-sdk-kms = { version = "=1.40.0", features = [], default-features = false }
aws-sdk-s3 = { version = "=1.40.0", features = ["rt-tokio"], default-features = false }

aws-smithy-runtime = { version = "1", features = [ "client", "connector-hyper-0-14-x" ], default-features = false }
aws-smithy-runtime-api = { version = "1", features = [], default-features = false }
aws-smithy-types = { version = "1", features = ["byte-stream-poll-next"] }

base64 = "0.13.0"
bytes = "1.0"
cloud = { workspace = true }
Expand All @@ -19,22 +31,25 @@ futures-util = { version = "0.3", default-features = false, features = ["io"] }
# This is only a dependency to vendor openssl for rusoto. It's not clear exactly
# how openssl is built for tikv, but it seems to be controlled by grpcio. This
# makes `cargo test -p aws` link correctly.
grpcio = { workspace = true }
http = "0.2.0"
hyper = "0.14"
hyper-tls = { version = "0.5" }
kvproto = { workspace = true }
md5 = "0.7.0"
rusoto_core = "0.46.0"
rusoto_credential = "0.46.0"
rusoto_kms = { version = "0.46.0", features = ["serialize_structs"] }
rusoto_s3 = { version = "0.46.0", features = ["serialize_structs"] }
rusoto_sts = "0.46.0"
prometheus = { version = "0.13", default-features = false, features = ["nightly"] }
slog = { workspace = true }
slog-global = { workspace = true }
thiserror = "1.0"
tikv_util = { workspace = true }
# better to not use slog-global, but pass in the logger
tokio = { version = "1.5", features = ["time"] }
tokio-util = { version = "0.7" }
url = "2.0"
uuid = { version = "0.8", features = ["v4"] }

[dev-dependencies]
aws-smithy-runtime = { version = "1.4.0", features = ["test-util", "client"] }
base64 = "0.13"
futures = "0.3"
rusoto_mock = "0.46.0"
tokio = { version = "1.5", features = ["macros"] }
Loading

0 comments on commit 9df0e73

Please sign in to comment.