Skip to content

Commit

Permalink
Use an actor to manage state and refresh credentials on demand if req…
Browse files Browse the repository at this point in the history
…uired.
  • Loading branch information
Simon Pilkington committed Dec 5, 2023
1 parent 1321ba9 commit 2450da8
Show file tree
Hide file tree
Showing 4 changed files with 795 additions and 275 deletions.
323 changes: 165 additions & 158 deletions Package.resolved
Original file line number Diff line number Diff line change
@@ -1,160 +1,167 @@
{
"object": {
"pins": [
{
"package": "async-http-client",
"repositoryURL": "https://github.com/swift-server/async-http-client.git",
"state": {
"branch": null,
"revision": "16f7e62c08c6969899ce6cc277041e868364e5cf",
"version": "1.19.0"
}
},
{
"package": "smoke-aws",
"repositoryURL": "https://github.com/amzn/smoke-aws.git",
"state": {
"branch": null,
"revision": "35edcb634ac6f6cb25e2bb449acf5f60201c8338",
"version": "2.44.298"
}
},
{
"package": "smoke-aws-support",
"repositoryURL": "https://github.com/amzn/smoke-aws-support.git",
"state": {
"branch": null,
"revision": "4f77513b76d28694dc51dffd0dfd6de6602724a6",
"version": "1.3.1"
}
},
{
"package": "smoke-http",
"repositoryURL": "https://github.com/amzn/smoke-http.git",
"state": {
"branch": null,
"revision": "84e6805ca07f9e4d7c39fbf61b7feff0484ee67f",
"version": "2.21.0"
}
},
{
"package": "swift-atomics",
"repositoryURL": "https://github.com/apple/swift-atomics.git",
"state": {
"branch": null,
"revision": "6c89474e62719ddcc1e9614989fff2f68208fe10",
"version": "1.1.0"
}
},
{
"package": "swift-collections",
"repositoryURL": "https://github.com/apple/swift-collections.git",
"state": {
"branch": null,
"revision": "937e904258d22af6e447a0b72c0bc67583ef64a2",
"version": "1.0.4"
}
},
{
"package": "swift-crypto",
"repositoryURL": "https://github.com/apple/swift-crypto.git",
"state": {
"branch": null,
"revision": "ddb07e896a2a8af79512543b1c7eb9797f8898a5",
"version": "1.1.7"
}
},
{
"package": "swift-distributed-tracing",
"repositoryURL": "https://github.com/apple/swift-distributed-tracing.git",
"state": {
"branch": null,
"revision": "49b7617717a09f6b781c9a11e1628e3315d8d4fe",
"version": "1.0.1"
}
},
{
"package": "swift-log",
"repositoryURL": "https://github.com/apple/swift-log.git",
"state": {
"branch": null,
"revision": "532d8b529501fb73a2455b179e0bbb6d49b652ed",
"version": "1.5.3"
}
},
{
"package": "swift-metrics",
"repositoryURL": "https://github.com/apple/swift-metrics.git",
"state": {
"branch": null,
"revision": "971ba26378ab69c43737ee7ba967a896cb74c0d1",
"version": "2.4.1"
}
},
{
"package": "swift-nio",
"repositoryURL": "https://github.com/apple/swift-nio.git",
"state": {
"branch": null,
"revision": "cf281631ff10ec6111f2761052aa81896a83a007",
"version": "2.58.0"
}
},
{
"package": "swift-nio-extras",
"repositoryURL": "https://github.com/apple/swift-nio-extras.git",
"state": {
"branch": null,
"revision": "0e0d0aab665ff1a0659ce75ac003081f2b1c8997",
"version": "1.19.0"
}
},
{
"package": "swift-nio-http2",
"repositoryURL": "https://github.com/apple/swift-nio-http2.git",
"state": {
"branch": null,
"revision": "a8ccf13fa62775277a5d56844878c828bbb3be1a",
"version": "1.27.0"
}
},
{
"package": "swift-nio-ssl",
"repositoryURL": "https://github.com/apple/swift-nio-ssl.git",
"state": {
"branch": null,
"revision": "320bd978cceb8e88c125dcbb774943a92f6286e9",
"version": "2.25.0"
}
},
{
"package": "swift-nio-transport-services",
"repositoryURL": "https://github.com/apple/swift-nio-transport-services.git",
"state": {
"branch": null,
"revision": "e7403c35ca6bb539a7ca353b91cc2d8ec0362d58",
"version": "1.19.0"
}
},
{
"package": "swift-service-context",
"repositoryURL": "https://github.com/apple/swift-service-context.git",
"state": {
"branch": null,
"revision": "ce0141c8f123132dbd02fd45fea448018762df1b",
"version": "1.0.0"
}
},
{
"package": "XMLCoding",
"repositoryURL": "https://github.com/LiveUI/XMLCoding.git",
"state": {
"branch": null,
"revision": "f0fbfe17e73f329e13a6133ff5437f7b174049fd",
"version": "0.4.1"
}
}
]
},
"version": 1
"pins" : [
{
"identity" : "async-http-client",
"kind" : "remoteSourceControl",
"location" : "https://github.com/swift-server/async-http-client.git",
"state" : {
"revision" : "16f7e62c08c6969899ce6cc277041e868364e5cf",
"version" : "1.19.0"
}
},
{
"identity" : "smoke-aws",
"kind" : "remoteSourceControl",
"location" : "https://github.com/amzn/smoke-aws.git",
"state" : {
"revision" : "07e658e0fdc8a46923156c30a76fdd5d7427465e",
"version" : "2.46.5"
}
},
{
"identity" : "smoke-aws-support",
"kind" : "remoteSourceControl",
"location" : "https://github.com/amzn/smoke-aws-support.git",
"state" : {
"revision" : "141efadb31e399736b23cfd2478af3dbdc170259",
"version" : "1.5.0"
}
},
{
"identity" : "smoke-http",
"kind" : "remoteSourceControl",
"location" : "https://github.com/amzn/smoke-http.git",
"state" : {
"revision" : "2f27d29b863c797f74318f87579bac77935df2eb",
"version" : "2.22.2"
}
},
{
"identity" : "swift-atomics",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-atomics.git",
"state" : {
"revision" : "cd142fd2f64be2100422d658e7411e39489da985",
"version" : "1.2.0"
}
},
{
"identity" : "swift-collections",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-collections.git",
"state" : {
"revision" : "a902f1823a7ff3c9ab2fba0f992396b948eda307",
"version" : "1.0.5"
}
},
{
"identity" : "swift-crypto",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-crypto.git",
"state" : {
"revision" : "ddb07e896a2a8af79512543b1c7eb9797f8898a5",
"version" : "1.1.7"
}
},
{
"identity" : "swift-distributed-tracing",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-distributed-tracing.git",
"state" : {
"revision" : "49b7617717a09f6b781c9a11e1628e3315d8d4fe",
"version" : "1.0.1"
}
},
{
"identity" : "swift-http-types",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-http-types",
"state" : {
"revision" : "99d066e29effa8845e4761dd3f2f831edfdf8925",
"version" : "1.0.0"
}
},
{
"identity" : "swift-log",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-log.git",
"state" : {
"revision" : "532d8b529501fb73a2455b179e0bbb6d49b652ed",
"version" : "1.5.3"
}
},
{
"identity" : "swift-metrics",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-metrics.git",
"state" : {
"revision" : "971ba26378ab69c43737ee7ba967a896cb74c0d1",
"version" : "2.4.1"
}
},
{
"identity" : "swift-nio",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-nio.git",
"state" : {
"revision" : "702cd7c56d5d44eeba73fdf83918339b26dc855c",
"version" : "2.62.0"
}
},
{
"identity" : "swift-nio-extras",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-nio-extras.git",
"state" : {
"revision" : "798c962495593a23fdea0c0c63fd55571d8dff51",
"version" : "1.20.0"
}
},
{
"identity" : "swift-nio-http2",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-nio-http2.git",
"state" : {
"revision" : "3bd9004b9d685ed6b629760fc84903e48efec806",
"version" : "1.29.0"
}
},
{
"identity" : "swift-nio-ssl",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-nio-ssl.git",
"state" : {
"revision" : "320bd978cceb8e88c125dcbb774943a92f6286e9",
"version" : "2.25.0"
}
},
{
"identity" : "swift-nio-transport-services",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-nio-transport-services.git",
"state" : {
"revision" : "ebf8b9c365a6ce043bf6e6326a04b15589bd285e",
"version" : "1.20.0"
}
},
{
"identity" : "swift-service-context",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-service-context.git",
"state" : {
"revision" : "ce0141c8f123132dbd02fd45fea448018762df1b",
"version" : "1.0.0"
}
},
{
"identity" : "xmlcoding",
"kind" : "remoteSourceControl",
"location" : "https://github.com/LiveUI/XMLCoding.git",
"state" : {
"revision" : "f0fbfe17e73f329e13a6133ff5437f7b174049fd",
"version" : "0.4.1"
}
}
],
"version" : 2
}
2 changes: 2 additions & 0 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,14 @@ let package = Package(
dependencies: [
.package(url: "https://github.com/swift-server/async-http-client.git", from: "1.19.0"),
.package(url: "https://github.com/amzn/smoke-aws.git", from: "2.44.174"),
.package(url: "https://github.com/amzn/smoke-aws-support.git", from: "1.5.0"),
.package(url: "https://github.com/apple/swift-nio.git", from: "2.0.0"),
.package(url: "https://github.com/apple/swift-log.git", from: "1.0.0"),
],
targets: [
.target(
name: "SmokeAWSCredentials", dependencies: [
.product(name: "AWSCore", package: "smoke-aws-support"),
.product(name: "SecurityTokenClient", package: "smoke-aws"),
.product(name: "Logging", package: "swift-log"),
.product(name: "NIO", package: "swift-nio"),
Expand Down
Loading

0 comments on commit 2450da8

Please sign in to comment.