From dcf8bfd54b8a7e3dd54fc877712692a2b0419aab Mon Sep 17 00:00:00 2001 From: AlphaJack Date: Tue, 10 Jun 2025 00:09:25 +0200 Subject: [PATCH] also add 's3_url_style' as env_var under DUCKDB_S3_URL_STYLE --- extension/httpfs/include/s3fs.hpp | 1 + extension/httpfs/s3fs.cpp | 2 ++ test/sql/secret/secret_aws.test | 5 +++++ test/sql/secret/secret_refresh.test | 5 +++++ test/sql/secret/secret_refresh_attach.test | 6 ++++++ 5 files changed, 19 insertions(+) diff --git a/extension/httpfs/include/s3fs.hpp b/extension/httpfs/include/s3fs.hpp index 8363429..148a07a 100644 --- a/extension/httpfs/include/s3fs.hpp +++ b/extension/httpfs/include/s3fs.hpp @@ -43,6 +43,7 @@ struct AWSEnvironmentCredentialsProvider { static constexpr const char *DUCKDB_ENDPOINT_ENV_VAR = "DUCKDB_S3_ENDPOINT"; static constexpr const char *DUCKDB_USE_SSL_ENV_VAR = "DUCKDB_S3_USE_SSL"; static constexpr const char *DUCKDB_KMS_KEY_ID_ENV_VAR = "DUCKDB_S3_KMS_KEY_ID"; + static constexpr const char *DUCKDB_URL_STYLE_ENV_VAR = "DUCKDB_S3_URL_STYLE"; explicit AWSEnvironmentCredentialsProvider(DBConfig &config) : config(config) {}; diff --git a/extension/httpfs/s3fs.cpp b/extension/httpfs/s3fs.cpp index 55f396a..9d0d506 100644 --- a/extension/httpfs/s3fs.cpp +++ b/extension/httpfs/s3fs.cpp @@ -143,6 +143,7 @@ void AWSEnvironmentCredentialsProvider::SetAll() { this->SetExtensionOptionValue("s3_endpoint", DUCKDB_ENDPOINT_ENV_VAR); this->SetExtensionOptionValue("s3_use_ssl", DUCKDB_USE_SSL_ENV_VAR); this->SetExtensionOptionValue("s3_kms_key_id", DUCKDB_KMS_KEY_ID_ENV_VAR); + this->SetExtensionOptionValue("s3_url_style", DUCKDB_URL_STYLE_ENV_VAR); } S3AuthParams AWSEnvironmentCredentialsProvider::CreateParams() { @@ -156,6 +157,7 @@ S3AuthParams AWSEnvironmentCredentialsProvider::CreateParams() { params.endpoint = DUCKDB_ENDPOINT_ENV_VAR; params.kms_key_id = DUCKDB_KMS_KEY_ID_ENV_VAR; params.use_ssl = DUCKDB_USE_SSL_ENV_VAR; + params.url_style = DUCKDB_URL_STYLE_ENV_VAR; return params; } diff --git a/test/sql/secret/secret_aws.test b/test/sql/secret/secret_aws.test index 529c4bc..96cc46d 100644 --- a/test/sql/secret/secret_aws.test +++ b/test/sql/secret/secret_aws.test @@ -14,6 +14,8 @@ require-env DUCKDB_S3_ENDPOINT require-env DUCKDB_S3_USE_SSL +require-env DUCKDB_S3_URL_STYLE + require httpfs require parquet @@ -21,6 +23,9 @@ require parquet statement ok SET enable_logging=true +statement ok +set s3_url_style='${DUCKDB_S3_URL_STYLE}' + statement ok set s3_use_ssl='${DUCKDB_S3_USE_SSL}' diff --git a/test/sql/secret/secret_refresh.test b/test/sql/secret/secret_refresh.test index 85c8738..e77870b 100644 --- a/test/sql/secret/secret_refresh.test +++ b/test/sql/secret/secret_refresh.test @@ -14,6 +14,8 @@ require-env DUCKDB_S3_ENDPOINT require-env DUCKDB_S3_USE_SSL +require-env DUCKDB_S3_URL_STYLE + require httpfs require parquet @@ -21,6 +23,9 @@ require parquet statement ok SET enable_logging=true +statement ok +set s3_url_style='${DUCKDB_S3_URL_STYLE}' + statement ok set s3_use_ssl='${DUCKDB_S3_USE_SSL}' diff --git a/test/sql/secret/secret_refresh_attach.test b/test/sql/secret/secret_refresh_attach.test index c20881d..e8c0740 100644 --- a/test/sql/secret/secret_refresh_attach.test +++ b/test/sql/secret/secret_refresh_attach.test @@ -14,6 +14,8 @@ require-env DUCKDB_S3_ENDPOINT require-env DUCKDB_S3_USE_SSL +require-env DUCKDB_S3_URL_STYLE + require-env S3_ATTACH_DB require httpfs @@ -23,6 +25,9 @@ require parquet statement ok SET enable_logging=true +statement ok +set s3_url_style='${DUCKDB_S3_URL_STYLE}' + statement ok set s3_use_ssl='${DUCKDB_S3_USE_SSL}' @@ -36,6 +41,7 @@ CREATE SECRET uhuh_this_mah_sh ( REGION '${AWS_DEFAULT_REGION}', ENDPOINT '${DUCKDB_S3_ENDPOINT}', USE_SSL '${DUCKDB_S3_USE_SSL}', + URL_STYLE '${DUCKDB_S3_URL_STYLE}', REFRESH 'auto' )