chore: fix test compatibility with AWS SDK JS v3.515.0 (#1006)

This commit is contained in:
George Fu
2024-02-16 13:01:15 -05:00
committed by GitHub
parent 2e34541e3b
commit 75a5a83a24
3 changed files with 224 additions and 184 deletions
+206 -151
View File
@@ -15,7 +15,7 @@
"https-proxy-agent": "^5.0.0"
},
"devDependencies": {
"@aws-sdk/credential-provider-env": "^3.186.0",
"@aws-sdk/credential-provider-env": "^3.515.0",
"@jest/globals": "^29.7.0",
"@smithy/property-provider": "^2.1.1",
"@types/jest": "^29.5.12",
@@ -176,24 +176,25 @@
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@aws-sdk/client-sso": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.496.0.tgz",
"integrity": "sha512-fuaMuxKg7CMUsP9l3kxYWCOxFsBjdA0xj5nlikaDm1661/gB4KkAiGqRY8LsQkpNXvXU8Nj+f7oCFADFyGYzyw==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.515.0.tgz",
"integrity": "sha512-4oGBLW476zmkdN98lAns3bObRNO+DLOfg4MDUSR6l6GYBV/zGAtoy2O/FhwYKgA2L5h2ZtElGopLlk/1Q0ePLw==",
"peer": true,
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/core": "3.496.0",
"@aws-sdk/middleware-host-header": "3.496.0",
"@aws-sdk/middleware-logger": "3.496.0",
"@aws-sdk/middleware-recursion-detection": "3.496.0",
"@aws-sdk/middleware-user-agent": "3.496.0",
"@aws-sdk/region-config-resolver": "3.496.0",
"@aws-sdk/types": "3.496.0",
"@aws-sdk/util-endpoints": "3.496.0",
"@aws-sdk/util-user-agent-browser": "3.496.0",
"@aws-sdk/util-user-agent-node": "3.496.0",
"@aws-sdk/core": "3.513.0",
"@aws-sdk/middleware-host-header": "3.515.0",
"@aws-sdk/middleware-logger": "3.515.0",
"@aws-sdk/middleware-recursion-detection": "3.515.0",
"@aws-sdk/middleware-user-agent": "3.515.0",
"@aws-sdk/region-config-resolver": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@aws-sdk/util-endpoints": "3.515.0",
"@aws-sdk/util-user-agent-browser": "3.515.0",
"@aws-sdk/util-user-agent-node": "3.515.0",
"@smithy/config-resolver": "^2.1.1",
"@smithy/core": "^1.3.1",
"@smithy/core": "^1.3.2",
"@smithy/fetch-http-handler": "^2.4.1",
"@smithy/hash-node": "^2.1.1",
"@smithy/invalid-dependency": "^2.1.1",
@@ -212,8 +213,9 @@
"@smithy/util-body-length-browser": "^2.1.1",
"@smithy/util-body-length-node": "^2.2.1",
"@smithy/util-defaults-mode-browser": "^2.1.1",
"@smithy/util-defaults-mode-node": "^2.1.1",
"@smithy/util-defaults-mode-node": "^2.2.0",
"@smithy/util-endpoints": "^1.1.1",
"@smithy/util-middleware": "^2.1.1",
"@smithy/util-retry": "^2.1.1",
"@smithy/util-utf8": "^2.1.1",
"tslib": "^2.5.0"
@@ -222,26 +224,27 @@
"node": ">=14.0.0"
}
},
"node_modules/@aws-sdk/client-sts": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.496.0.tgz",
"integrity": "sha512-3pSdqgegdwbK3CT1WvGHhA+Bf91R9cr8G1Ynp+iU2wZvy8ueJfMUk0NYfjo3EEv0YhSbMLKuduzZfvQHFHXYhw==",
"node_modules/@aws-sdk/client-sso-oidc": {
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.515.0.tgz",
"integrity": "sha512-zACa8LNlPUdlNUBqQRf5a3MfouLNtcBfm84v2c8M976DwJrMGONPe1QjyLLsD38uESQiXiVQRruj/b000iMXNw==",
"peer": true,
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/core": "3.496.0",
"@aws-sdk/credential-provider-node": "3.496.0",
"@aws-sdk/middleware-host-header": "3.496.0",
"@aws-sdk/middleware-logger": "3.496.0",
"@aws-sdk/middleware-recursion-detection": "3.496.0",
"@aws-sdk/middleware-user-agent": "3.496.0",
"@aws-sdk/region-config-resolver": "3.496.0",
"@aws-sdk/types": "3.496.0",
"@aws-sdk/util-endpoints": "3.496.0",
"@aws-sdk/util-user-agent-browser": "3.496.0",
"@aws-sdk/util-user-agent-node": "3.496.0",
"@aws-sdk/client-sts": "3.515.0",
"@aws-sdk/core": "3.513.0",
"@aws-sdk/middleware-host-header": "3.515.0",
"@aws-sdk/middleware-logger": "3.515.0",
"@aws-sdk/middleware-recursion-detection": "3.515.0",
"@aws-sdk/middleware-user-agent": "3.515.0",
"@aws-sdk/region-config-resolver": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@aws-sdk/util-endpoints": "3.515.0",
"@aws-sdk/util-user-agent-browser": "3.515.0",
"@aws-sdk/util-user-agent-node": "3.515.0",
"@smithy/config-resolver": "^2.1.1",
"@smithy/core": "^1.3.1",
"@smithy/core": "^1.3.2",
"@smithy/fetch-http-handler": "^2.4.1",
"@smithy/hash-node": "^2.1.1",
"@smithy/invalid-dependency": "^2.1.1",
@@ -260,7 +263,58 @@
"@smithy/util-body-length-browser": "^2.1.1",
"@smithy/util-body-length-node": "^2.2.1",
"@smithy/util-defaults-mode-browser": "^2.1.1",
"@smithy/util-defaults-mode-node": "^2.1.1",
"@smithy/util-defaults-mode-node": "^2.2.0",
"@smithy/util-endpoints": "^1.1.1",
"@smithy/util-middleware": "^2.1.1",
"@smithy/util-retry": "^2.1.1",
"@smithy/util-utf8": "^2.1.1",
"tslib": "^2.5.0"
},
"engines": {
"node": ">=14.0.0"
},
"peerDependencies": {
"@aws-sdk/credential-provider-node": "^3.515.0"
}
},
"node_modules/@aws-sdk/client-sts": {
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.515.0.tgz",
"integrity": "sha512-ScYuvaIDgip3atOJIA1FU2n0gJkEdveu1KrrCPathoUCV5zpK8qQmO/n+Fj/7hKFxeKdFbB+4W4CsJWYH94nlg==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/core": "3.513.0",
"@aws-sdk/middleware-host-header": "3.515.0",
"@aws-sdk/middleware-logger": "3.515.0",
"@aws-sdk/middleware-recursion-detection": "3.515.0",
"@aws-sdk/middleware-user-agent": "3.515.0",
"@aws-sdk/region-config-resolver": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@aws-sdk/util-endpoints": "3.515.0",
"@aws-sdk/util-user-agent-browser": "3.515.0",
"@aws-sdk/util-user-agent-node": "3.515.0",
"@smithy/config-resolver": "^2.1.1",
"@smithy/core": "^1.3.2",
"@smithy/fetch-http-handler": "^2.4.1",
"@smithy/hash-node": "^2.1.1",
"@smithy/invalid-dependency": "^2.1.1",
"@smithy/middleware-content-length": "^2.1.1",
"@smithy/middleware-endpoint": "^2.4.1",
"@smithy/middleware-retry": "^2.1.1",
"@smithy/middleware-serde": "^2.1.1",
"@smithy/middleware-stack": "^2.1.1",
"@smithy/node-config-provider": "^2.2.1",
"@smithy/node-http-handler": "^2.3.1",
"@smithy/protocol-http": "^3.1.1",
"@smithy/smithy-client": "^2.3.1",
"@smithy/types": "^2.9.1",
"@smithy/url-parser": "^2.1.1",
"@smithy/util-base64": "^2.1.1",
"@smithy/util-body-length-browser": "^2.1.1",
"@smithy/util-body-length-node": "^2.2.1",
"@smithy/util-defaults-mode-browser": "^2.1.1",
"@smithy/util-defaults-mode-node": "^2.2.0",
"@smithy/util-endpoints": "^1.1.1",
"@smithy/util-middleware": "^2.1.1",
"@smithy/util-retry": "^2.1.1",
@@ -270,14 +324,17 @@
},
"engines": {
"node": ">=14.0.0"
},
"peerDependencies": {
"@aws-sdk/credential-provider-node": "^3.515.0"
}
},
"node_modules/@aws-sdk/core": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.496.0.tgz",
"integrity": "sha512-yT+ug7Cw/3eJi7x2es0+46x12+cIJm5Xv+GPWsrTFD1TKgqO/VPEgfDtHFagDNbFmjNQA65Ygc/kEdIX9ICX/A==",
"version": "3.513.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.513.0.tgz",
"integrity": "sha512-L+9DL4apWuqNKVOMJ8siAuWoRM9rZf9w1iPv8S2o83WO2jVK7E/m+rNW1dFo9HsA5V1ccDl2H2qLXx24HiHmOw==",
"dependencies": {
"@smithy/core": "^1.3.1",
"@smithy/core": "^1.3.2",
"@smithy/protocol-http": "^3.1.1",
"@smithy/signature-v4": "^2.1.1",
"@smithy/smithy-client": "^2.3.1",
@@ -289,11 +346,11 @@
}
},
"node_modules/@aws-sdk/credential-provider-env": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.496.0.tgz",
"integrity": "sha512-lukQMJ8SWWP5RqkRNOHi/H+WMhRvSWa3Fc5Jf/VP6xHiPLfF1XafcvthtV91e0VwPCiseI+HqChrcGq8pvnxHw==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.515.0.tgz",
"integrity": "sha512-45vxdyqhTAaUMERYVWOziG3K8L2TV9G4ryQS/KZ84o7NAybE9GMdoZRVmGHAO7mJJ1wQiYCM/E+i5b3NW9JfNA==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/property-provider": "^2.1.1",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -302,16 +359,38 @@
"node": ">=14.0.0"
}
},
"node_modules/@aws-sdk/credential-provider-ini": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.496.0.tgz",
"integrity": "sha512-2nD1jp1sIwcQaWK1y/9ruQOkW16RUxZpzgjbW/gnK3iiUXwx+/FNQWxshud+GTSx3Q4x6eIhqsbjtP4VVPPuUA==",
"node_modules/@aws-sdk/credential-provider-http": {
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.515.0.tgz",
"integrity": "sha512-Ba6FXK77vU4WyheiamNjEuTFmir0eAXuJGPO27lBaA8g+V/seXGHScsbOG14aQGDOr2P02OPwKGZrWWA7BFpfQ==",
"peer": true,
"dependencies": {
"@aws-sdk/credential-provider-env": "3.496.0",
"@aws-sdk/credential-provider-process": "3.496.0",
"@aws-sdk/credential-provider-sso": "3.496.0",
"@aws-sdk/credential-provider-web-identity": "3.496.0",
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/fetch-http-handler": "^2.4.1",
"@smithy/node-http-handler": "^2.3.1",
"@smithy/property-provider": "^2.1.1",
"@smithy/protocol-http": "^3.1.1",
"@smithy/smithy-client": "^2.3.1",
"@smithy/types": "^2.9.1",
"@smithy/util-stream": "^2.1.1",
"tslib": "^2.5.0"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@aws-sdk/credential-provider-ini": {
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.515.0.tgz",
"integrity": "sha512-ouDlNZdv2TKeVEA/YZk2+XklTXyAAGdbWnl4IgN9ItaodWI+lZjdIoNC8BAooVH+atIV/cZgoGTGQL7j2TxJ9A==",
"peer": true,
"dependencies": {
"@aws-sdk/client-sts": "3.515.0",
"@aws-sdk/credential-provider-env": "3.515.0",
"@aws-sdk/credential-provider-process": "3.515.0",
"@aws-sdk/credential-provider-sso": "3.515.0",
"@aws-sdk/credential-provider-web-identity": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@smithy/credential-provider-imds": "^2.2.1",
"@smithy/property-provider": "^2.1.1",
"@smithy/shared-ini-file-loader": "^2.3.1",
@@ -323,16 +402,18 @@
}
},
"node_modules/@aws-sdk/credential-provider-node": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.496.0.tgz",
"integrity": "sha512-IVF9RvLePfRa5S5/eBIRChJCWOzQkGwM8P/L79Gl84u/cH2oSG4NtUI/YTDlrtmnYn7YsGhINSV0WnzfF2twfQ==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.515.0.tgz",
"integrity": "sha512-Y4kHSpbxksiCZZNcvsiKUd8Fb2XlyUuONEwqWFNL82ZH6TCCjBGS31wJQCSxBHqYcOL3tiORUEJkoO7uS30uQA==",
"peer": true,
"dependencies": {
"@aws-sdk/credential-provider-env": "3.496.0",
"@aws-sdk/credential-provider-ini": "3.496.0",
"@aws-sdk/credential-provider-process": "3.496.0",
"@aws-sdk/credential-provider-sso": "3.496.0",
"@aws-sdk/credential-provider-web-identity": "3.496.0",
"@aws-sdk/types": "3.496.0",
"@aws-sdk/credential-provider-env": "3.515.0",
"@aws-sdk/credential-provider-http": "3.515.0",
"@aws-sdk/credential-provider-ini": "3.515.0",
"@aws-sdk/credential-provider-process": "3.515.0",
"@aws-sdk/credential-provider-sso": "3.515.0",
"@aws-sdk/credential-provider-web-identity": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@smithy/credential-provider-imds": "^2.2.1",
"@smithy/property-provider": "^2.1.1",
"@smithy/shared-ini-file-loader": "^2.3.1",
@@ -344,11 +425,12 @@
}
},
"node_modules/@aws-sdk/credential-provider-process": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.496.0.tgz",
"integrity": "sha512-/YZscCTGOKVmGr916Th4XF8Sz6JDtZ/n2loHG9exok9iy/qIbACsTRNLP9zexPxhPoue/oZqecY5xbVljfY34A==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.515.0.tgz",
"integrity": "sha512-pSjiOA2FM63LHRKNDvEpBRp80FVGT0Mw/gzgbqFXP+sewk0WVonYbEcMDTJptH3VsLPGzqH/DQ1YL/aEIBuXFQ==",
"peer": true,
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/property-provider": "^2.1.1",
"@smithy/shared-ini-file-loader": "^2.3.1",
"@smithy/types": "^2.9.1",
@@ -359,13 +441,14 @@
}
},
"node_modules/@aws-sdk/credential-provider-sso": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.496.0.tgz",
"integrity": "sha512-eP7GxpT2QYubSDG7uk1GJW4eNymZCq65IxDyEFCXOP/kfqkxriCY+iVEFG6/Mo3LxvgrgHXU4jxrCAXMAWN43g==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.515.0.tgz",
"integrity": "sha512-j7vUkiSmuhpBvZYoPTRTI4ePnQbiZMFl6TNhg9b9DprC1zHkucsZnhRhqjOVlrw/H6J4jmcPGcHHTZ5WQNI5xQ==",
"peer": true,
"dependencies": {
"@aws-sdk/client-sso": "3.496.0",
"@aws-sdk/token-providers": "3.496.0",
"@aws-sdk/types": "3.496.0",
"@aws-sdk/client-sso": "3.515.0",
"@aws-sdk/token-providers": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@smithy/property-provider": "^2.1.1",
"@smithy/shared-ini-file-loader": "^2.3.1",
"@smithy/types": "^2.9.1",
@@ -376,11 +459,13 @@
}
},
"node_modules/@aws-sdk/credential-provider-web-identity": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.496.0.tgz",
"integrity": "sha512-IbP+qLlvJSpNPj+zW6TtFuLRTK5Tf0hW+2pom4vFyi5YSH4pn8UOC136UdewX8vhXGS9BJQ5zBDMasIyl5VeGQ==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.515.0.tgz",
"integrity": "sha512-66+2g4z3fWwdoGReY8aUHvm6JrKZMTRxjuizljVmMyOBttKPeBYXvUTop/g3ZGUx1f8j+C5qsGK52viYBvtjuQ==",
"peer": true,
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/client-sts": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@smithy/property-provider": "^2.1.1",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -390,11 +475,11 @@
}
},
"node_modules/@aws-sdk/middleware-host-header": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.496.0.tgz",
"integrity": "sha512-jUdPpSJeqCYXf6hSjfwsfHway7peIV8Vz51w/BN91bF4vB/bYwAC5o9/iJiK/EoByp5asxA8fg9wFOyGjzdbLg==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.515.0.tgz",
"integrity": "sha512-I1MwWPzdRKM1luvdDdjdGsDjNVPhj9zaIytEchjTY40NcKOg+p2evLD2y69ozzg8pyXK63r8DdvDGOo9QPuh0A==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/protocol-http": "^3.1.1",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -404,11 +489,11 @@
}
},
"node_modules/@aws-sdk/middleware-logger": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.496.0.tgz",
"integrity": "sha512-EwMVSY6iBMeGbVnvwdaFl/ClMS/YWtxCAo+bcEtgk8ltRuo7qgbJem8Km/fvWC1vdWvIbe4ArdJ8iGzq62ffAw==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.515.0.tgz",
"integrity": "sha512-qXomJzg2m/5seQOxHi/yOXOKfSjwrrJSmEmfwJKJyQgdMbBcjz3Cz0H/1LyC6c5hHm6a/SZgSTzDAbAoUmyL+Q==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
},
@@ -417,11 +502,11 @@
}
},
"node_modules/@aws-sdk/middleware-recursion-detection": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.496.0.tgz",
"integrity": "sha512-+IuOcFsfqg2WAnaEzH6KhVbicqCxtOq9w3DH2jwTpddRlCx2Kqf6wCzg8luhHRGyjBZdsbIS+OXwyMevoppawA==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.515.0.tgz",
"integrity": "sha512-dokHLbTV3IHRIBrw9mGoxcNTnQsjlm7TpkJhPdGT9T4Mq399EyQo51u6IsVMm07RXLl2Zw7u+u9p+qWBFzmFRA==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/protocol-http": "^3.1.1",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -431,12 +516,12 @@
}
},
"node_modules/@aws-sdk/middleware-user-agent": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.496.0.tgz",
"integrity": "sha512-+iMtRxFk0GmFWNUF4ilxylOQd9PZdR4ZC9jkcPIh1PZlvKtpCyFywKlk5RRZKklSoJ/CttcqwhMvOXTNbWm/0w==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.515.0.tgz",
"integrity": "sha512-nOqZjGA/GkjuJ5fUshec9Fv6HFd7ovOTxMJbw3MfAhqXuVZ6dKF41lpVJ4imNsgyFt3shUg9WDY8zGFjlYMB3g==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/util-endpoints": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@aws-sdk/util-endpoints": "3.515.0",
"@smithy/protocol-http": "^3.1.1",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -446,11 +531,11 @@
}
},
"node_modules/@aws-sdk/region-config-resolver": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.496.0.tgz",
"integrity": "sha512-URrNVOPHPgEDm6QFu6lDC2cUFs+Jx23mA3jEwCvoKlXiEY/ZoWjH8wlX3OMUlLrF1qoUTuD03jjrJzF6zoCgug==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.515.0.tgz",
"integrity": "sha512-RIRx9loxMgEAc/r1wPfnfShOuzn4RBi8pPPv6/jhhITEeMnJe6enAh2k5y9DdiVDDgCWZgVFSv0YkAIfzAFsnQ==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/node-config-provider": "^2.2.1",
"@smithy/types": "^2.9.1",
"@smithy/util-config-provider": "^2.2.1",
@@ -462,46 +547,16 @@
}
},
"node_modules/@aws-sdk/token-providers": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.496.0.tgz",
"integrity": "sha512-fyi8RcObEa1jNETJdc2H6q9VHrrdKCj/b6+fbLvymb7mUVRd0aWUn+24SNUImnSOnrwYnwaMfyyEC388X4MbFQ==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.515.0.tgz",
"integrity": "sha512-MQuf04rIcTXqwDzmyHSpFPF1fKEzRl64oXtCRUF3ddxTdK6wxXkePfK6wNCuL+GEbEcJAoCtIGIRpzGPJvQjHA==",
"peer": true,
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/middleware-host-header": "3.496.0",
"@aws-sdk/middleware-logger": "3.496.0",
"@aws-sdk/middleware-recursion-detection": "3.496.0",
"@aws-sdk/middleware-user-agent": "3.496.0",
"@aws-sdk/region-config-resolver": "3.496.0",
"@aws-sdk/types": "3.496.0",
"@aws-sdk/util-endpoints": "3.496.0",
"@aws-sdk/util-user-agent-browser": "3.496.0",
"@aws-sdk/util-user-agent-node": "3.496.0",
"@smithy/config-resolver": "^2.1.1",
"@smithy/fetch-http-handler": "^2.4.1",
"@smithy/hash-node": "^2.1.1",
"@smithy/invalid-dependency": "^2.1.1",
"@smithy/middleware-content-length": "^2.1.1",
"@smithy/middleware-endpoint": "^2.4.1",
"@smithy/middleware-retry": "^2.1.1",
"@smithy/middleware-serde": "^2.1.1",
"@smithy/middleware-stack": "^2.1.1",
"@smithy/node-config-provider": "^2.2.1",
"@smithy/node-http-handler": "^2.3.1",
"@aws-sdk/client-sso-oidc": "3.515.0",
"@aws-sdk/types": "3.515.0",
"@smithy/property-provider": "^2.1.1",
"@smithy/protocol-http": "^3.1.1",
"@smithy/shared-ini-file-loader": "^2.3.1",
"@smithy/smithy-client": "^2.3.1",
"@smithy/types": "^2.9.1",
"@smithy/url-parser": "^2.1.1",
"@smithy/util-base64": "^2.1.1",
"@smithy/util-body-length-browser": "^2.1.1",
"@smithy/util-body-length-node": "^2.2.1",
"@smithy/util-defaults-mode-browser": "^2.1.1",
"@smithy/util-defaults-mode-node": "^2.1.1",
"@smithy/util-endpoints": "^1.1.1",
"@smithy/util-retry": "^2.1.1",
"@smithy/util-utf8": "^2.1.1",
"tslib": "^2.5.0"
},
"engines": {
@@ -509,9 +564,9 @@
}
},
"node_modules/@aws-sdk/types": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.496.0.tgz",
"integrity": "sha512-umkGadK4QuNQaMoDICMm7NKRI/mYSXiyPjcn3d53BhsuArYU/52CebGQKdt4At7SwwsiVJZw9RNBHyN5Mm0HVw==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.515.0.tgz",
"integrity": "sha512-B3gUpiMlpT6ERaLvZZ61D0RyrQPsFYDkCncLPVkZOKkCOoFU46zi1o6T5JcYiz8vkx1q9RGloQ5exh79s5pU/w==",
"dependencies": {
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -521,11 +576,11 @@
}
},
"node_modules/@aws-sdk/util-endpoints": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.496.0.tgz",
"integrity": "sha512-1QzOiWHi383ZwqSi/R2KgKCd7M+6DxkxI5acqLPm8mvDRDP2jRjrnVaC0g9/tlttWousGEemDUWStwrD2mVYSw==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.515.0.tgz",
"integrity": "sha512-UJi+jdwcGFV/F7d3+e2aQn5yZOVpDiAgfgNhPnEtgV0WozJ5/ZUeZBgWvSc/K415N4A4D/9cbBc7+I+35qzcDQ==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/types": "^2.9.1",
"@smithy/util-endpoints": "^1.1.1",
"tslib": "^2.5.0"
@@ -546,22 +601,22 @@
}
},
"node_modules/@aws-sdk/util-user-agent-browser": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.496.0.tgz",
"integrity": "sha512-4j2spN+h0I0qfSMsGvJXTfQBu1e18rPdekKvzsGJxhaAE1tNgUfUT4nbvc5uVn0sNjZmirskmJ3kfbzVOrqIFg==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.515.0.tgz",
"integrity": "sha512-pTWQb0JCafTmLHLDv3Qqs/nAAJghcPdGQIBpsCStb0YEzg3At/dOi2AIQ683yYnXmeOxLXJDzmlsovfVObJScw==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/types": "^2.9.1",
"bowser": "^2.11.0",
"tslib": "^2.5.0"
}
},
"node_modules/@aws-sdk/util-user-agent-node": {
"version": "3.496.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.496.0.tgz",
"integrity": "sha512-h0Ax0jlDc7UIo3KoSI4C4tVLBFoiAdx3+DhTVfgLS7x93d41dMlziPoBX2RgdcFn37qnzw6AQKTVTMwDbRCGpg==",
"version": "3.515.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.515.0.tgz",
"integrity": "sha512-A/KJ+/HTohHyVXLH+t/bO0Z2mPrQgELbQO8tX+B2nElo8uklj70r5cT7F8ETsI9oOy+HDVpiL5/v45ZgpUOiPg==",
"dependencies": {
"@aws-sdk/types": "3.496.0",
"@aws-sdk/types": "3.515.0",
"@smithy/node-config-provider": "^2.2.1",
"@smithy/types": "^2.9.1",
"tslib": "^2.5.0"
@@ -1945,9 +2000,9 @@
}
},
"node_modules/@smithy/core": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/@smithy/core/-/core-1.3.1.tgz",
"integrity": "sha512-tf+NIu9FkOh312b6M9G4D68is4Xr7qptzaZGZUREELF8ysE1yLKphqt7nsomjKZVwW7WE5pDDex9idowNGRQ/Q==",
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/@smithy/core/-/core-1.3.2.tgz",
"integrity": "sha512-tYDmTp0f2TZVE18jAOH1PnmkngLQ+dOGUlMd1u67s87ieueNeyqhja6z/Z4MxhybEiXKOWFOmGjfTZWFxljwJw==",
"dependencies": {
"@smithy/middleware-endpoint": "^2.4.1",
"@smithy/middleware-retry": "^2.1.1",
@@ -2333,9 +2388,9 @@
}
},
"node_modules/@smithy/util-defaults-mode-node": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.1.1.tgz",
"integrity": "sha512-tYVrc+w+jSBfBd267KDnvSGOh4NMz+wVH7v4CClDbkdPfnjvImBZsOURncT5jsFwR9KCuDyPoSZq4Pa6+eCUrA==",
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.2.0.tgz",
"integrity": "sha512-iFJp/N4EtkanFpBUtSrrIbtOIBf69KNuve03ic1afhJ9/korDxdM0c6cCH4Ehj/smI9pDCfVv+bqT3xZjF2WaA==",
"dependencies": {
"@smithy/config-resolver": "^2.1.1",
"@smithy/credential-provider-imds": "^2.2.1",
+1 -1
View File
@@ -13,7 +13,7 @@
"organization": true
},
"devDependencies": {
"@aws-sdk/credential-provider-env": "^3.186.0",
"@aws-sdk/credential-provider-env": "^3.515.0",
"@smithy/property-provider": "^2.1.1",
"@jest/globals": "^29.7.0",
"@types/jest": "^29.5.12",
+17 -32
View File
@@ -5,7 +5,6 @@ import {
GetCallerIdentityCommand,
STSClient,
} from '@aws-sdk/client-sts';
import { fromEnv } from '@aws-sdk/credential-provider-env';
import { CredentialsProviderError } from '@smithy/property-provider';
import { mockClient } from 'aws-sdk-client-mock';
import { withsleep, reset } from '../src/helpers';
@@ -70,20 +69,11 @@ jest.mock('fs', () => ({
existsSync: jest.fn(() => true),
readFileSync: jest.fn(() => 'testpayload'),
}));
const fromEnvMock = jest.fn();
jest.mock('@aws-sdk/credential-provider-env', () => ({
// This is the actual implementation in the SDK ^_^
fromEnv: jest.fn().mockImplementation(() => () => {
const accessKeyId = process.env['AWS_ACCESS_KEY_ID'];
const secretAccessKey = process.env['AWS_SECRET_ACCESS_KEY'];
const sessionToken = process.env['AWS_SESSION_TOKEN'];
const expiration = process.env['AWS_CREDENTIAL_EXPIRATION'];
return {
accessKeyId,
secretAccessKey,
sessionToken,
expiration,
};
}),
fromEnv: fromEnvMock,
}));
describe('Configure AWS Credentials', () => {
@@ -94,7 +84,7 @@ describe('Configure AWS Credentials', () => {
process.env = { ...OLD_ENV, ...ENVIRONMENT_VARIABLE_OVERRIDES };
jest.clearAllMocks();
mockedSTS.reset();
(fromEnv as jest.Mock).mockReset();
fromEnvMock.mockReset();
jest.spyOn(core, 'getMultilineInput').mockImplementation(() => []);
jest.spyOn(core, 'getIDToken').mockImplementation(async () => Promise.resolve('testtoken'));
jest.spyOn(core, 'exportVariable').mockImplementation();
@@ -105,15 +95,12 @@ describe('Configure AWS Credentials', () => {
jest.spyOn(core, 'info').mockImplementation((string) => {
return string;
});
(fromEnv as jest.Mock)
.mockImplementationOnce(() => () => ({
fromEnvMock.mockImplementation(() => () => {
return {
accessKeyId: FAKE_ACCESS_KEY_ID,
secretAccessKey: FAKE_SECRET_ACCESS_KEY,
}))
.mockImplementationOnce(() => () => ({
accessKeyId: FAKE_STS_ACCESS_KEY_ID,
secretAccessKey: FAKE_STS_SECRET_ACCESS_KEY,
}));
};
});
mockedSTS
.on(GetCallerIdentityCommand)
.resolvesOnce({ Account: FAKE_ACCOUNT_ID })
@@ -194,8 +181,8 @@ describe('Configure AWS Credentials', () => {
test('action with no accessible credentials fails', async () => {
const mockInputs = { 'aws-region': FAKE_REGION };
jest.spyOn(core, 'getInput').mockImplementation(mockGetInput(mockInputs));
(fromEnv as jest.Mock).mockReset();
(fromEnv as jest.Mock).mockImplementation(() => () => {
fromEnvMock.mockReset();
fromEnvMock.mockImplementation(() => () => {
throw new CredentialsProviderError('test');
});
@@ -209,10 +196,8 @@ describe('Configure AWS Credentials', () => {
test('action with empty credentials fails', async () => {
const mockInputs = { 'aws-region': FAKE_REGION };
jest.spyOn(core, 'getInput').mockImplementation(mockGetInput(mockInputs));
(fromEnv as jest.Mock).mockReset();
(fromEnv as jest.Mock).mockImplementation(
() => async () => Promise.resolve({ accessKeyId: '', secretAccessKey: '' })
);
fromEnvMock.mockReset();
fromEnvMock.mockImplementation(() => async () => Promise.resolve({ accessKeyId: '', secretAccessKey: '' }));
await run();
@@ -223,8 +208,8 @@ describe('Configure AWS Credentials', () => {
test('action fails when credentials are not set in the SDK correctly', async () => {
jest.spyOn(core, 'getInput').mockImplementation(mockGetInput(DEFAULT_INPUTS));
(fromEnv as jest.Mock).mockReset();
(fromEnv as jest.Mock).mockImplementationOnce(() => async () => Promise.resolve({ accessKeyId: '123' }));
fromEnvMock.mockReset();
fromEnvMock.mockImplementationOnce(() => async () => Promise.resolve({ accessKeyId: '123' }));
await run();
@@ -508,7 +493,7 @@ describe('Configure AWS Credentials', () => {
});
test('GH OIDC check fails if token is not set', async () => {
(fromEnv as jest.Mock).mockReset();
fromEnvMock.mockReset();
process.env['ACTIONS_ID_TOKEN_REQUEST_TOKEN'] = undefined;
process.env['GITHUB_ACTIONS'] = 'true';
jest.spyOn(core, 'getInput').mockImplementation(
@@ -525,7 +510,7 @@ describe('Configure AWS Credentials', () => {
' If you are not trying to authenticate with OIDC and the action is working successfully, you can ignore this message.'
);
expect(core.setFailed).toHaveBeenCalledWith(
'Credentials could not be loaded, please check your action inputs: provider is not a function'
expect.stringMatching(/Credentials could not be loaded, please check your action inputs: (.*?) is not a function/)
);
});