Fokko opened a new pull request, #5233: URL: https://github.com/apache/iceberg/pull/5233
While generating Python code from the open-api spec to bootstrap the Python rest catalog implementation I noticed that the URLs were constructed differently than expected. For our service the warehouse uuid is encoded as part of the path: ``` https://api.iceberg.io/ws/v1/oss/warehouses/8bcb0838-50fc-472d-9ddb-8feb89ef5f1e/namespaces ``` However, the open-api spec states that the `/v1/` comes after the base path: ``` /v1/namespaces/{namespace}/properties: ``` This would lead to: ``` https://api.iceberg.io/ws/oss/warehouses/8bcb0838-50fc-472d-9ddb-8feb89ef5f1e/v1/namespaces ``` where the base path is part of the server's definition: ```yaml servers: - url: "{scheme}://{host}/{basePath}" description: Server URL when the port can be inferred from the scheme variables: scheme: description: The scheme of the URI, either http or https. default: https host: description: The host address for the specified server default: localhost basePath: description: Optional prefix to be appended to all routes default: "" ``` This will never allow us to construct an url with a prefix (the warehouse identifier). Therefore I suggest adding the prefix for the metadata-related endpoints (all except token and config). This way we can add v2 endpoints in the future to the same spec, and we also keep backward compatibility (just leaving the prefix empty) -- 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]
