Skip to content

Commit 0974b89

Browse files
committed
Update README
#13
1 parent 1095416 commit 0974b89

File tree

2 files changed

+244
-40
lines changed

2 files changed

+244
-40
lines changed

README.md

Lines changed: 122 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,144 @@
1-
# Azure Blobs plugin for FlowSynx engine
1+
# FlowSynx Azure Blobs plugin
22

3-
The **Azure Blobs Plugin** is a pre-packaged, plug-and-play integration component for the FlowSynx engine. It enables secure and configurable access to Azure Blobs storage as part of FlowSynx no-code/low-code automation workflows.
3+
The Azure Blob Plugin is a pre-packaged, plug-and-play integration component for the FlowSynx engine. It enables interacting with Azure Blob Storage to manage containers and blobs, supporting a variety of operations such as uploading, downloading, listing, and purging blob data. Designed for FlowSynx’s no-code/low-code automation workflows, this plugin simplifies cloud storage integration and file management.
44

5-
This plugin can be installed automatically by the FlowSynx engine when selected within the platform. It is not intended for manual installation or developer use outside the FlowSynx environment.
5+
This plugin is automatically installed by the FlowSynx engine when selected within the platform. It is not intended for manual installation or standalone developer use outside the FlowSynx environment.
66

77
---
88

99
## Purpose
1010

11-
This plugin allows FlowSynx users to interact with Azure Blobs for a variety of storage-related operations without writing code. Once installed, the plugin becomes available as a storage connector within the platform's workflow builder.
11+
The Azure Blob Plugin allows FlowSynx users to:
12+
13+
- Upload and download files to and from Azure Blob Storage.
14+
- Manage blobs and containers with create, delete, and purge operations.
15+
- List contents of containers with filtering and metadata support.
16+
- Perform existence checks for files or folders in workflows without writing code.
1217

1318
---
1419

1520
## Supported Operations
1621

17-
The plugin supports the following operations, which can be selected and configured within the FlowSynx UI:
22+
- **create**: Creates a new blob in the specified bucket and path.
23+
- **delete**: Deletes an blob at the specified path in the bucket.
24+
- **exist**: Checks if an blob exists at the specified path.
25+
- **list**: Lists blobs under a specified path (prefix), with filtering and optional metadata.
26+
- **purge**: Deletes all blobs under the specified path, optionally forcing deletion.
27+
- **read**: Reads and returns the contents of an blob at the specified path.
28+
- **write**: Writes data to a specified path in the bucket, with support for overwrite.
29+
30+
---
31+
32+
## Plugin Specifications
33+
34+
The plugin requires the following configuration:
35+
36+
- `AccountName` (string): **Required.** The Azure Storage account name.
37+
- `AccountKey` (string): **Required.** The access key for the Azure Storage account.
38+
- `ContainerName` (string): **Required.** The name of the blob container to use.
39+
40+
### Example Configuration
41+
42+
```json
43+
{
44+
"AccountName": "myazureaccount",
45+
"AccountKey": "abc123xyz456==",
46+
"ContainerName": "flowfiles"
47+
}
48+
```
49+
50+
---
51+
52+
## Input Parameters
53+
54+
Each operation accepts specific parameters:
55+
56+
### Create
57+
| Parameter | Type | Required | Description |
58+
|---------------|---------|----------|------------------------------------------|
59+
| `Path` | string | Yes | The path where the new blob is created.|
60+
61+
### Delete
62+
| Parameter | Type | Required | Description |
63+
|---------------|---------|----------|------------------------------------------|
64+
| `Path` | string | Yes | The path of the blob to delete. |
65+
66+
### Exist
67+
| Parameter | Type | Required | Description |
68+
|---------------|---------|----------|------------------------------------------|
69+
| `Path` | string | Yes | The path of the blob to check. |
70+
71+
### List
72+
| Parameter | Type | Required | Description |
73+
|--------------------|---------|----------|-----------------------------------------------------|
74+
| `Path` | string | Yes | The prefix path to list blob from. |
75+
| `Filter` | string | No | A filter pattern for blob names. |
76+
| `Recurse` | bool | No | Whether to list recursively. Default: `false`. |
77+
| `CaseSensitive` | bool | No | Whether the filter is case-sensitive. Default: `false`. |
78+
| `IncludeMetadata` | bool | No | Whether to include blob metadata. Default: `false`. |
79+
| `MaxResults` | int | No | Maximum number of blobs to list. Default: `2147483647`. |
80+
81+
### Purge
82+
| Parameter | Type | Required | Description |
83+
|---------------|---------|----------|------------------------------------------------|
84+
| `Path` | string | Yes | The path prefix to purge. |
85+
| `Force` | bool | No | Whether to force deletion without confirmation.|
86+
87+
### Read
88+
| Parameter | Type | Required | Description |
89+
|---------------|---------|----------|------------------------------------------|
90+
| `Path` | string | Yes | The path of the blob to read. |
91+
92+
### Write
93+
| Parameter | Type | Required | Description |
94+
|---------------|---------|----------|--------------------------------------------------------------|
95+
| `Path` | string | Yes | The path where data should be written. |
96+
| `Data` | object | Yes | The data to write to the Azure blob. |
97+
| `Overwrite` | bool | No | Whether to overwrite if the blob already exists. Default: `false`. |
98+
99+
### Example input (Write)
100+
101+
```json
102+
{
103+
"Operation": "write",
104+
"Path": "documents/report.json",
105+
"Data": {
106+
"title": "Monthly Report",
107+
"content": "This is the report content."
108+
},
109+
"Overwrite": true
110+
}
111+
```
112+
113+
---
114+
115+
## Debugging Tips
116+
117+
- Verify the `AccountName`, `AccountKey`, and `ContainerName` values are correct and have sufficient permissions.
118+
- Ensure the `Path` is valid and does not conflict with existing blobs (especially for create/write).
119+
- For write operations, confirm that `Data` is properly encoded or formatted for upload.
120+
- When using list, adjust filters carefully to match blob names (wildcards like `*.txt` are supported).
121+
- Purge will fail on non-empty folders unless `Force` is set to `true`.
122+
123+
---
124+
125+
## Azure Blob Storage Considerations
18126

19-
| Operation| Description |
20-
|----------|-------------------------------------------|
21-
| `create` | Upload a new object to the blob container.|
22-
| `delete` | Remove an object from the container. |
23-
| `exist` | Check if an object exists. |
24-
| `list` | List all objects in the container. |
25-
| `purge` | Remove all contents in the container. |
26-
| `read` | Read and return the contents of an object.|
27-
| `write` | Overwrite or write new data to an object. |
127+
- Case Sensitivity: Blob paths are case-sensitive; use the `CaseSensitive` flag in list if needed.
128+
- Hierarchy Simulation: Azure Blob Storage uses a flat namespace. "Folders" are simulated using blob path prefixes (e.g., `folder1/file.txt`).
129+
- Large File Uploads: For large files, uploads are automatically chunked by the plugin.
130+
- Metadata: When using `IncludeMetadata` in list, additional API calls may increase latency.
28131

29132
---
30133

31-
## Notes
134+
## Security Notes
32135

33-
- This plugin is only supported on the FlowSynx platform.
34-
- It is installed automatically by the FlowSynx engine.
35-
- All operational logic is encapsulated and executed under FlowSynx control.
36-
- Credentials are configured through platform-managed settings.
136+
- The plugin uses Azure Storage SDK authentication with the provided `AccountKey`.
137+
- No credentials or blob data are persisted outside the execution scope unless explicitly configured.
138+
- Only authorized FlowSynx platform users can view or modify plugin configurations.
37139

38140
---
39141

40142
## License
41143

42-
Copyright FlowSynx. All rights reserved.
144+
© FlowSynx. All rights reserved.

src/README.md

Lines changed: 122 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,144 @@
1-
## Azure Blobs plugin for FlowSynx engine
1+
## FlowSynx Azure Blobs plugin
22

3-
The **Azure Blobs Plugin** is a pre-packaged, plug-and-play integration component for the FlowSynx engine. It enables secure and configurable access to Azure Blobs storage as part of FlowSynx no-code/low-code automation workflows.
3+
The Azure Blob Plugin is a pre-packaged, plug-and-play integration component for the FlowSynx engine. It enables interacting with Azure Blob Storage to manage containers and blobs, supporting a variety of operations such as uploading, downloading, listing, and purging blob data. Designed for FlowSynx’s no-code/low-code automation workflows, this plugin simplifies cloud storage integration and file management.
44

5-
This plugin can be installed automatically by the FlowSynx engine when selected within the platform. It is not intended for manual installation or developer use outside the FlowSynx environment.
5+
This plugin is automatically installed by the FlowSynx engine when selected within the platform. It is not intended for manual installation or standalone developer use outside the FlowSynx environment.
66

77
---
88

99
## Purpose
1010

11-
This plugin allows FlowSynx users to interact with Azure Blobs for a variety of storage-related operations without writing code. Once installed, the plugin becomes available as a storage connector within the platform's workflow builder.
11+
The Azure Blob Plugin allows FlowSynx users to:
12+
13+
- Upload and download files to and from Azure Blob Storage.
14+
- Manage blobs and containers with create, delete, and purge operations.
15+
- List contents of containers with filtering and metadata support.
16+
- Perform existence checks for files or folders in workflows without writing code.
1217

1318
---
1419

1520
## Supported Operations
1621

17-
The plugin supports the following operations, which can be selected and configured within the FlowSynx UI:
22+
- **create**: Creates a new blob in the specified bucket and path.
23+
- **delete**: Deletes an blob at the specified path in the bucket.
24+
- **exist**: Checks if an blob exists at the specified path.
25+
- **list**: Lists blobs under a specified path (prefix), with filtering and optional metadata.
26+
- **purge**: Deletes all blobs under the specified path, optionally forcing deletion.
27+
- **read**: Reads and returns the contents of an blob at the specified path.
28+
- **write**: Writes data to a specified path in the bucket, with support for overwrite.
29+
30+
---
31+
32+
## Plugin Specifications
33+
34+
The plugin requires the following configuration:
35+
36+
- `AccountName` (string): **Required.** The Azure Storage account name.
37+
- `AccountKey` (string): **Required.** The access key for the Azure Storage account.
38+
- `ContainerName` (string): **Required.** The name of the blob container to use.
39+
40+
### Example Configuration
41+
42+
```json
43+
{
44+
"AccountName": "myazureaccount",
45+
"AccountKey": "abc123xyz456==",
46+
"ContainerName": "flowfiles"
47+
}
48+
```
49+
50+
---
51+
52+
## Input Parameters
53+
54+
Each operation accepts specific parameters:
55+
56+
### Create
57+
| Parameter | Type | Required | Description |
58+
|---------------|---------|----------|------------------------------------------|
59+
| `Path` | string | Yes | The path where the new blob is created.|
60+
61+
### Delete
62+
| Parameter | Type | Required | Description |
63+
|---------------|---------|----------|------------------------------------------|
64+
| `Path` | string | Yes | The path of the blob to delete. |
65+
66+
### Exist
67+
| Parameter | Type | Required | Description |
68+
|---------------|---------|----------|------------------------------------------|
69+
| `Path` | string | Yes | The path of the blob to check. |
70+
71+
### List
72+
| Parameter | Type | Required | Description |
73+
|--------------------|---------|----------|-----------------------------------------------------|
74+
| `Path` | string | Yes | The prefix path to list blob from. |
75+
| `Filter` | string | No | A filter pattern for blob names. |
76+
| `Recurse` | bool | No | Whether to list recursively. Default: `false`. |
77+
| `CaseSensitive` | bool | No | Whether the filter is case-sensitive. Default: `false`. |
78+
| `IncludeMetadata` | bool | No | Whether to include blob metadata. Default: `false`. |
79+
| `MaxResults` | int | No | Maximum number of blobs to list. Default: `2147483647`. |
80+
81+
### Purge
82+
| Parameter | Type | Required | Description |
83+
|---------------|---------|----------|------------------------------------------------|
84+
| `Path` | string | Yes | The path prefix to purge. |
85+
| `Force` | bool | No | Whether to force deletion without confirmation.|
86+
87+
### Read
88+
| Parameter | Type | Required | Description |
89+
|---------------|---------|----------|------------------------------------------|
90+
| `Path` | string | Yes | The path of the blob to read. |
91+
92+
### Write
93+
| Parameter | Type | Required | Description |
94+
|---------------|---------|----------|--------------------------------------------------------------|
95+
| `Path` | string | Yes | The path where data should be written. |
96+
| `Data` | object | Yes | The data to write to the Azure blob. |
97+
| `Overwrite` | bool | No | Whether to overwrite if the blob already exists. Default: `false`. |
98+
99+
### Example input (Write)
100+
101+
```json
102+
{
103+
"Operation": "write",
104+
"Path": "documents/report.json",
105+
"Data": {
106+
"title": "Monthly Report",
107+
"content": "This is the report content."
108+
},
109+
"Overwrite": true
110+
}
111+
```
112+
113+
---
114+
115+
## Debugging Tips
116+
117+
- Verify the `AccountName`, `AccountKey`, and `ContainerName` values are correct and have sufficient permissions.
118+
- Ensure the `Path` is valid and does not conflict with existing blobs (especially for create/write).
119+
- For write operations, confirm that `Data` is properly encoded or formatted for upload.
120+
- When using list, adjust filters carefully to match blob names (wildcards like `*.txt` are supported).
121+
- Purge will fail on non-empty folders unless `Force` is set to `true`.
122+
123+
---
124+
125+
## Azure Blob Storage Considerations
18126

19-
| Operation| Description |
20-
|----------|-------------------------------------------|
21-
| `create` | Upload a new object to the blob container.|
22-
| `delete` | Remove an object from the container. |
23-
| `exist` | Check if an object exists. |
24-
| `list` | List all objects in the container. |
25-
| `purge` | Remove all contents in the container. |
26-
| `read` | Read and return the contents of an object.|
27-
| `write` | Overwrite or write new data to an object. |
127+
- Case Sensitivity: Blob paths are case-sensitive; use the `CaseSensitive` flag in list if needed.
128+
- Hierarchy Simulation: Azure Blob Storage uses a flat namespace. "Folders" are simulated using blob path prefixes (e.g., `folder1/file.txt`).
129+
- Large File Uploads: For large files, uploads are automatically chunked by the plugin.
130+
- Metadata: When using `IncludeMetadata` in list, additional API calls may increase latency.
28131

29132
---
30133

31-
## Notes
134+
## Security Notes
32135

33-
- This plugin is only supported on the FlowSynx platform.
34-
- It is installed automatically by the FlowSynx engine.
35-
- All operational logic is encapsulated and executed under FlowSynx control.
36-
- Credentials are configured through platform-managed settings.
136+
- The plugin uses Azure Storage SDK authentication with the provided `AccountKey`.
137+
- No credentials or blob data are persisted outside the execution scope unless explicitly configured.
138+
- Only authorized FlowSynx platform users can view or modify plugin configurations.
37139

38140
---
39141

40142
## License
41143

42-
Copyright FlowSynx. All rights reserved.
144+
© FlowSynx. All rights reserved.

0 commit comments

Comments
 (0)