Merge pull request 'Fix S3 SSL certificate validation and boto3 checksum compatibility' (#2) from benvin/boto3_fixes into master
Reviewed-on: #2
This commit is contained in:
commit
79a8553e9c
@ -22,16 +22,25 @@ class S3Storage:
|
|||||||
self.bucket = bucket
|
self.bucket = bucket
|
||||||
self.secure = secure
|
self.secure = secure
|
||||||
|
|
||||||
self.client = boto3.client(
|
ca_bundle = os.environ.get('REQUESTS_CA_BUNDLE') or os.environ.get('SSL_CERT_FILE')
|
||||||
"s3",
|
config_kwargs = {
|
||||||
endpoint_url=f"http{'s' if self.secure else ''}://{self.endpoint}",
|
"request_checksum_calculation": "when_required",
|
||||||
aws_access_key_id=self.access_key,
|
"response_checksum_validation": "when_required"
|
||||||
aws_secret_access_key=self.secret_key,
|
}
|
||||||
config=Config(
|
client_kwargs = {
|
||||||
request_checksum_calculation="when_required",
|
"endpoint_url": f"http{'s' if self.secure else ''}://{self.endpoint}",
|
||||||
response_checksum_validation="when_required"
|
"aws_access_key_id": self.access_key,
|
||||||
)
|
"aws_secret_access_key": self.secret_key,
|
||||||
)
|
"config": Config(**config_kwargs)
|
||||||
|
}
|
||||||
|
|
||||||
|
if ca_bundle and os.path.exists(ca_bundle):
|
||||||
|
client_kwargs["verify"] = ca_bundle
|
||||||
|
print(f"Debug: Using CA bundle: {ca_bundle}")
|
||||||
|
else:
|
||||||
|
print(f"Debug: No CA bundle found. REQUESTS_CA_BUNDLE={os.environ.get('REQUESTS_CA_BUNDLE')}, SSL_CERT_FILE={os.environ.get('SSL_CERT_FILE')}")
|
||||||
|
|
||||||
|
self.client = boto3.client("s3", **client_kwargs)
|
||||||
|
|
||||||
# Try to ensure bucket exists, but don't fail if MinIO isn't ready yet
|
# Try to ensure bucket exists, but don't fail if MinIO isn't ready yet
|
||||||
try:
|
try:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user