Aws profile support#3169
Draft
phoebusm wants to merge 3 commits into
Draft
Conversation
Bump the AWS SDK and its CRT dependency stack to the latest versions
resolvable from vcpkg. This advances the vcpkg submodule and
builtin-baseline together (bb14c5ab24 -> cea592f477) because vcpkg
resolves dependency versions against the commit named by
builtin-baseline, not the submodule working tree; the override versions
for aws-crt-cpp and the aws-c-* libraries only exist in the newer
version database.
Overrides updated to the CRT set that aws-sdk-cpp 1.11.820 bundles as
submodules (crt-cpp 0.39.1, aws-c-common 0.13.1, aws-c-io 0.26.3,
aws-c-s3 0.12.4, aws-c-http 0.11.0, aws-c-auth 0.10.3, aws-c-cal
0.9.14, aws-c-mqtt 0.15.2, aws-c-event-stream 0.7.1, aws-c-sdkutils
0.2.4, aws-checksums 0.2.10), keeping our pins aligned with the
versions AWS tested together.
The overlay vcpkg.json was regenerated from the 1.11.820 source
(435 service features, up from 414) and the portfile SHA512 updated to
the 1.11.820 tarball (verified against the upstream vcpkg port hash and
a direct download).
Patch changes
-------------
Removed fix-refresh.patch. It changed RefreshIfExpired() in
STSProfileCredentialsProvider.cpp from "||" to "&&" so a non-expired
credential would not be refreshed merely because the reload interval had
elapsed. Upstream has since adopted exactly this logic and gone further:
1.11.820 reads "!IsTimeToRefresh(...) && !m_credentials.IsEmpty() &&
!m_credentials.ExpiresSoon(...)". The fix is upstream, and the patch's
context lines no longer exist, so it would fail to apply.
Removed fix-win-https-conn.patch (Windows only). It dropped the
"&& m_verifySSL" guard in WinHttpSyncHttpClient::OpenRequest so HTTPS
requests always set WINHTTP_FLAG_SECURE regardless of verifySSL.
1.11.820 already sets the flag unconditionally for HTTPS
("if (scheme == HTTPS) requestFlags |= WINHTTP_FLAG_SECURE;"), so the
patch is redundant and, again, no longer applies to the refactored code.
Added configure-binary-dir.patch (symlinked from the upstream vcpkg
port, aws/aws-sdk-cpp#3459). 1.11.820 generates VersionConfig.h and
SDKConfig.h into the source tree during configure; the patch redirects
them to the binary dir and reads the version from the VERSION file. This
is part of upstream's own patch list for 1.11.820 and is required to
build against a read-only source tree.
The >=1.11.486 default data-integrity (checksum) behaviour change that
previously blocked this upgrade is already neutralised in
s3_storage.hpp::configure_s3_checksum_validation, which forces
when_required unless the user opts in; the override note is updated to
record this.
Other dependencies without explicit overrides move to the new baseline
(e.g. boost 1.91.0, curl 8.20.0). vcpkg dry-run confirms the full plan
resolves and selects aws-sdk-cpp 1.11.820 with [s3, identity-management,
sts, cognito-identity, core].
The aws-sdk-cpp baseline bump floated thrift (a transitive dependency of the pinned arrow) from 0.22.0 to 0.23.0. thrift 0.23.0 builds locally but fails to compile in the manylinux CI wheel-build container. Pin it back to 0.22.0#2, the version arrow 21.0.0#2 was tested against, which is still present in the new baseline version database.
| config_dir = os.path.dirname(config_file_path) | ||
| os.makedirs(config_dir, exist_ok=True) | ||
| with open(config_file_path, "w") as config_file: | ||
| config_file.write(aws_config) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Reference Issues/PRs
What does this implement or fix?
Any other comments?
Depends on #3153
Checklist
Checklist for code changes...