yasithdev opened a new pull request, #190: URL: https://github.com/apache/airavata-portals/pull/190
## Summary Track D (D4.3): repoint the storage path views and the create-user-storage-dir signal from the legacy `airavata_django_portal_sdk` `user_storage` helpers to the gRPC `storage` facade. - **`UserStoragePathView`** get/post/put/delete + **`ExperimentStoragePathView`** → `storage.dir_exists` / `list_dir` / `get_file_metadata` / `create_dir` / `delete_dir` / `delete_file` (+ the `_storage_upload_and_register` helper for uploads). A new `_user_storage_path` resolves a request path to the absolute `~/`-prefixed path the facade expects, including experiment-relative paths (via the experiment data dir). - New **`grpc_adapters.user_storage_file` / `user_storage_directory`** map the gRPC `FileMetadataResponse` (name/path/size/modified_time/content_type/data_product_uri — populated server-side by apache/airavata#652) to the dicts the storage serializers read. - **`UserStorageFileSerializer.downloadURL`** now builds the portal `download-file` URL directly from the file's data product URI; **`UserHasWriteAccessToPathSerializer`** drops the remote-API `user_storage.listdir` branch (the gRPC path talks to the backend directly, not a remote portal proxy). - **`signals.create_user_storage_dir`** → `storage.create_dir` / `create_symlink`. - The deprecated `download_file` view redirects to the gRPC `download-file` endpoint. - Drop the now-unused `user_storage` (and `queue_settings_calculators`) imports from `views.py` / `serializers.py`. ## Depends on apache/airavata#652 — adds per-file `modified_time` / `content_type` / `data_product_uri` to the gRPC listing and fixes SFTP file delete. Without it, listings would lose those fields and `delete_file` would fail. Merge #652 first. ## Validation REST/JSON contract unchanged. `manage.py check` clean. **Live against the running backend:** `UserStoragePathView` GET lists `~/tmp` (200) with each file rendering `name`/`size`/`createdTime`/`modifiedTime`/`mimeType`/`dataProductURI`/`downloadURL`/`userHasWriteAccess`; upload (creates the dir + registers a data product), content overwrite, and DELETE (204, file actually removed) all round-trip. -- 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]
