Comments (6)
@craxal for 1.34.0 please identify and propose existing blob container level actions that could/should support being done in batch. Good candidates are feasible if there is a supporting API or if the client logic needed to do the action in batch is fairly trivial. We can then discuss the proposed actions and how they would work, and come to a consensus if they are feasible.
from azurestorageexplorer.
Here's a breakdown of all available blob container commands and their suitability for operating on multiple containers:
Command | Good Candidate? | Notes |
---|---|---|
Acquire Lease | ✅ Yes | Should generate one activity per container. |
Break Lease | ✅ Yes | Should generate one activity per container. |
Clone | ❌ No | Dialog, not suitable for multiple selection. |
Copy | ⚪️ Maybe | Changes clipboard data format. |
Copy Direct Link | ❌ No | Odd UX, unlikely to be useful. |
Create | ❌ No | Dialog not suitable for multiple selection. |
Delete | ✅ Yes | Should generate one activity per container. |
Generate SAS | ❌ No | Dialog, not suitable for multiple selections |
Manage ACL | ❌ No | Dialog, not suitable for multiple selections. |
Manage SAP | ❌ No | Dialog, not suitable for multiple selections. |
Open | ✅ Yes | Should open a new tab for each container selected. |
Paste | ⚪️ Maybe | (see Copy) |
Propagate ACL | ❌ No | Not easy to backtrack even for single items. |
Properties | ❌ No | Dialog, not suitable for multiple selections. |
Refresh | N/A | Doesn't operate on selections. |
Rename | ❌ No | Dialog, not suitable for multiple selections. |
Set Public Access | ✅ Yes | Should generate one activity per container. |
- There are no REST APIs available that operate on more than one container.
- Multi-container operation candidates may involve more complex activity management, such as nesting activities in a parent activity, which will be more expensive if the original operations weren't designed to handle more than one activity.
from azurestorageexplorer.
Excelent list, well thought through. In response to properties of multiple blobs, may want to display their total size.
That’s great that there are no REST APIs that operate on multiple blobs. That would just complicate things unnecessarily.
You may want to launch the various API calls that target the selected blobs on independent threads, wait for all to finish and gather their results. If all completed successfully, the app just goes on. Otherwise perhaps report the operations that failed so the user can retry them later.
from azurestorageexplorer.
That’s great that there are no REST APIs that operate on multiple blobs. That would just complicate things unnecessarily.
The first note is merely mentioning that orchestrating multiple operations needs to be done client-side. The complexity is there regardless of where it is implemented. The primary concern here is that, without a REST API, it's up to the client to orchestrate everything instead of the server.
You may want to launch the various API calls that target the selected blobs on independent threads, wait for all to finish and gather their results. If all completed successfully, the app just goes on. Otherwise perhaps report the operations that failed so the user can retry them later.
The second note is more a question of presentation than orchestration. Some methods of presentation will take more time than others. It may be something we can refine over time.
from azurestorageexplorer.
For some fun, you may want try to delete one by one 50 containers. Then you’ll see why this feature request came about.
from azurestorageexplorer.
I've made issues for these 4:
@craxal, can you please make issues also for "Open" and put it into Future? We can see if people ask for it. And after that you can close this issue as completed.
from azurestorageexplorer.
Related Issues (20)
- Routine Tasks for 1.36.0
- Update bundled .NET installer for 1.36.0
- Check telemetry catalog for 1.36.0
- Check for GS crashes for 1.36.0
- Write release notes & update version numbers for 1.36.0
- Update ServiceHub & IdentityService for 1.36.0
- Reset release notes & version numbers for 1.36.0
- Update to Electron 32
- Integrate AzCopy Windows Arm64 native executable
- GA Windows ARM64
- Implement navigation for symlinks
- Import queue message from csv behavior fails for singular quote character
- Not able to download the ADLS Blob File with /T/ in its name HOT 6
- The cloned file share under one attached storage account doesn't auto display on the tree view HOT 3
- Resolve user-delegated SAS problems with test tenant HOT 1
- Unable to retrieve child resources HOT 1
- Unable to upload files or see files in container after signing in with Azure account HOT 3
- Succeed to select and upload one folder when using the action 'Upload Files...' on Linux HOT 2
- Fail to delete or promote ADLS Gen2 snapshots for specific storage accounts HOT 3
- SFI work - Disable anonymous access to blob storage HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from azurestorageexplorer.