From 5fef9b9daaa0ac1e369313396dd3036af4290c97 Mon Sep 17 00:00:00 2001 From: Joshua Cannon Date: Fri, 19 May 2023 10:37:44 -0500 Subject: [PATCH 1/5] Update register.py --- src/python/pants/backend/url_handlers/s3/register.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/python/pants/backend/url_handlers/s3/register.py b/src/python/pants/backend/url_handlers/s3/register.py index 862418e1bc5..e00c2efde12 100644 --- a/src/python/pants/backend/url_handlers/s3/register.py +++ b/src/python/pants/backend/url_handlers/s3/register.py @@ -72,9 +72,14 @@ async def download_from_s3(request: S3DownloadFile, aws_credentials: AWSCredenti if request.query: path_style_url += f"?{request.query}" + headers = {} + if aws_credentials.creds.token: + # Workaround https://github.com/boto/botocore/pull/2948 + headers['x-amz-security-token'] = None + http_request = SimpleNamespace( url=path_style_url, - headers={}, + headers=headers, method="GET", auth_path=None, ) From 549940c21351eb615c707af6c1bc62c0c7ae1553 Mon Sep 17 00:00:00 2001 From: Joshua Cannon Date: Fri, 19 May 2023 10:53:53 -0500 Subject: [PATCH 2/5] Update src/python/pants/backend/url_handlers/s3/register.py --- src/python/pants/backend/url_handlers/s3/register.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/python/pants/backend/url_handlers/s3/register.py b/src/python/pants/backend/url_handlers/s3/register.py index e00c2efde12..bf41b1f09c5 100644 --- a/src/python/pants/backend/url_handlers/s3/register.py +++ b/src/python/pants/backend/url_handlers/s3/register.py @@ -75,7 +75,7 @@ async def download_from_s3(request: S3DownloadFile, aws_credentials: AWSCredenti headers = {} if aws_credentials.creds.token: # Workaround https://github.com/boto/botocore/pull/2948 - headers['x-amz-security-token'] = None + headers['X-Amz-Security-Token'] = None http_request = SimpleNamespace( url=path_style_url, From 6414b881523f145099b9ea2bf6a225fa2b1bee90 Mon Sep 17 00:00:00 2001 From: Joshua Cannon Date: Fri, 19 May 2023 12:04:44 -0500 Subject: [PATCH 3/5] Update src/python/pants/backend/url_handlers/s3/register.py --- src/python/pants/backend/url_handlers/s3/register.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/python/pants/backend/url_handlers/s3/register.py b/src/python/pants/backend/url_handlers/s3/register.py index bf41b1f09c5..eac72e162c4 100644 --- a/src/python/pants/backend/url_handlers/s3/register.py +++ b/src/python/pants/backend/url_handlers/s3/register.py @@ -75,7 +75,7 @@ async def download_from_s3(request: S3DownloadFile, aws_credentials: AWSCredenti headers = {} if aws_credentials.creds.token: # Workaround https://github.com/boto/botocore/pull/2948 - headers['X-Amz-Security-Token'] = None + headers["X-Amz-Security-Token"] = None http_request = SimpleNamespace( url=path_style_url, From 2b2eac3fe8fffe04609e99b2189f65652a26cd0d Mon Sep 17 00:00:00 2001 From: Joshua Cannon Date: Fri, 19 May 2023 12:56:33 -0500 Subject: [PATCH 4/5] Update integration_test.py --- src/python/pants/backend/url_handlers/s3/integration_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/python/pants/backend/url_handlers/s3/integration_test.py b/src/python/pants/backend/url_handlers/s3/integration_test.py index b1975f9f83d..325dde43956 100644 --- a/src/python/pants/backend/url_handlers/s3/integration_test.py +++ b/src/python/pants/backend/url_handlers/s3/integration_test.py @@ -45,7 +45,7 @@ def do_patching(expected_url): botocore = SimpleNamespace() botocore.exceptions = SimpleNamespace(NoCredentialsError=Exception) fake_session = object() - fake_creds = SimpleNamespace(access_key="ACCESS", secret_key="SECRET") + fake_creds = SimpleNamespace(access_key="ACCESS", secret_key="SECRET", token=None) botocore.session = SimpleNamespace(get_session=lambda: fake_session) def fake_resolver_creator(session): From 62c9517d0012921565bfc75d9ccf38825a1237fd Mon Sep 17 00:00:00 2001 From: Joshua Date: Fri, 19 May 2023 15:09:14 -0500 Subject: [PATCH 5/5] lookin good --- src/python/pants/backend/url_handlers/s3/register.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/python/pants/backend/url_handlers/s3/register.py b/src/python/pants/backend/url_handlers/s3/register.py index bf41b1f09c5..586c583bbae 100644 --- a/src/python/pants/backend/url_handlers/s3/register.py +++ b/src/python/pants/backend/url_handlers/s3/register.py @@ -1,5 +1,7 @@ # Copyright 2022 Pants project contributors (see CONTRIBUTORS.md). # Licensed under the Apache License, Version 2.0 (see LICENSE). +from __future__ import annotations + import logging from dataclasses import dataclass from types import SimpleNamespace @@ -72,10 +74,10 @@ async def download_from_s3(request: S3DownloadFile, aws_credentials: AWSCredenti if request.query: path_style_url += f"?{request.query}" - headers = {} + headers: dict[str, str] = {} if aws_credentials.creds.token: # Workaround https://github.com/boto/botocore/pull/2948 - headers['X-Amz-Security-Token'] = None + headers["X-Amz-Security-Token"] = "" http_request = SimpleNamespace( url=path_style_url,