manisin opened a new pull request, #15899:
URL: https://github.com/apache/iceberg/pull/15899

   ## Summary
   
   Implements client-side support for the `storage-refresh-token` credential 
refresh flow specified in #15280.
   
   **Core changes:**
   - `StorageCredential` / `ImmutableStorageCredential`: Add 
`storageRefreshToken()` accessor and 3-argument `create()` factory method
   - `Credential` (REST model): Add `storageRefreshToken` field with Immutables 
support
   - `CredentialParser`: Serialize/deserialize `storage-refresh-token` in JSON
   - `RESTSessionCatalog`: Propagate refresh token through both the 
`SupportsStorageCredentials` and `CatalogUtil.loadFileIO` credential paths
   - `RESTCatalogProperties`: Add `REST_STORAGE_REFRESH_TOKEN` constant
   
   **AWS changes:**
   - `S3FileIO`: Pass `storageRefreshToken` into per-prefix client properties 
and use the 3-arg `StorageCredential.create()` during credential refresh
   - `VendedCredentialsProvider`: Send `storageRefreshToken` as a query 
parameter on credential fetch requests (mutually exclusive with `planId`)
   
   **Tests:**
   - `TestStorageCredentialRefresh`: End-to-end credential refresh flow against 
an embedded REST catalog (core)
   - `TestStagedTableCredentialRefreshE2E`: Spark integration test for staged 
table credential refresh
   - Extended `TestCredentialParser`, `TestLoadCredentialsResponseParser`, 
`TestStorageCredential`, `TestVendedCredentialsProvider`, 
`TestS3FileIOCredentialRefresh`
   
   **Depends on:** #15280


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to