Revanth14 opened a new issue, #2548:
URL: https://github.com/apache/iceberg-go/issues/2548

   ### Feature Request / Improvement
   
   ### Problem
   
   The CLI's config file only accepts a fixed set of catalog fields 
(`credential`, `warehouse`, and a `rest:` block with the three SigV4 settings), 
and `cmd/iceberg` maps each one to a `rest.Option`. Any other catalog property 
can't be set from the CLI. That now includes `rest.auth.type` (#2502, #2538, 
#2547): a BigLake catalog (`rest.auth.type=google`) or one behind HTTP Basic 
authentication works from Go and through `catalog.Load`, but not from 
`iceberg`. Each new property would need its own YAML field and flag.
   
   ### Proposal
   
   Add a `properties` map to each catalog entry and pass it through with 
`rest.WithAdditionalProps`, the way PyIceberg's `.pyiceberg.yaml` passes 
catalog properties:
   
   ```yaml
   catalog:
     biglake:
       type: rest
       uri: https://biglake.googleapis.com/iceberg/v1/restcatalog
       warehouse: gs://my-bucket
       properties:
         rest.auth.type: google
         header.x-goog-user-project: my-project
   ```
   
   - The existing fields and flags keep working and take precedence over the 
same setting in `properties`.
   - `rest.auth.type` already reads additional properties, so `none`, `basic`, 
`sigv4` and `google` work with no further CLI changes. `google` also needs a 
blank import of `catalog/rest/googleauth` in `cmd/iceberg`, next to the 
existing `catalog/rest/sigv4` import.
   - For the non-REST catalogs, the map could also be merged into the 
properties they're built from, or left for later.
   
   A `--catalog-property key=value` flag reusing the `parseProperties` helper 
could follow if one-off overrides are useful.
   
   ### Context
   
   Follow-up to #2428. I'd like to work on this if the approach looks right.
   


-- 
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