flyrain commented on code in PR #10722:
URL: https://github.com/apache/iceberg/pull/10722#discussion_r1759207112


##########
open-api/rest-catalog-open-api.yaml:
##########
@@ -3103,6 +3103,81 @@ components:
         uuid:
           type: string
 
+    ADLSCredentials:
+      type: object
+      allOf:
+        - $ref: '#/components/schemas/Credentials'
+      required:
+        - type
+      properties:
+        type:
+          type: string
+          enum: [ "adls" ]
+        account-name:
+          type: string
+        account-key:
+          type: string
+        sas-token:
+          type: string
+        expires-at-ms:
+          type: integer
+          format: int64
+
+    GCSCredentials:
+      type: object
+      allOf:
+        - $ref: '#/components/schemas/Credentials'
+      required:
+        - type
+        - token
+        - expires-at-ms
+      properties:
+        type:
+          type: string
+          enum: [ "gcs" ]
+        token:
+          type: string
+        expires-at-ms:
+          type: integer
+          format: int64
+
+    S3Credentials:
+      type: object
+      allOf:
+        - $ref: '#/components/schemas/Credentials'
+      required:

Review Comment:
   Thanks for clarification, @nastra ! 
   Does it make sense to introduce a `storage` property within LoadTableResult? 
By doing that, you can group all storage-related settings—such as type, config 
(e.g., region), and credentials—into a cohesive structure. This approach is 
especially beneficial if we plan to support multiple storage types or need to 
extend configurations in the future.
   
   Here's how the updated schema might look:
   ```
   LoadTableResult:
     properties:
       storage:
         $ref: '#/components/schemas/Storage'
   
   Storage:
     type: object
     required:
       - type
       - config
       - credentials
     properties:
       type:
         type: string
         description: The type of storage service (e.g., ADLS, S3, GCS)
       config:
         type: object
         description: Configuration settings specific to the storage type
         properties:
           region:
             type: string
             description: The region where the storage is located
           # Add other config properties as needed
       credentials:
         $ref: '#/components/schemas/Credentials'
   
   ```
   



-- 
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: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to