first commit
Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled

This commit is contained in:
2026-03-17 16:22:57 +03:30
commit 3d5eaf9445
15349 changed files with 2847338 additions and 0 deletions
@@ -0,0 +1,54 @@
{
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0],
"id": "99f866fa-f63c-477d-a0d0-48fbdb8a344a",
"name": "When clicking Execute workflow"
},
{
"parameters": {
"operation": "create",
"containerCreate": "mycontainer",
"options": {
"accessLevel": "blob",
"metadata": { "metadataValues": [{ "fieldName": "key1", "fieldValue": "value1" }] }
},
"requestOptions": {}
},
"type": "n8n-nodes-base.azureStorage",
"typeVersion": 1,
"position": [220, 0],
"id": "ab1b6258-5c75-4893-90bf-ef591264420c",
"name": "Azure Storage",
"credentials": {
"azureStorageSharedKeyApi": {
"id": "VPmcFM58eDDexWQL",
"name": "Azure Storage Shared Key account"
}
}
}
],
"connections": {
"When clicking Execute workflow": {
"main": [[{ "node": "Azure Storage", "type": "main", "index": 0 }]]
}
},
"pinData": {
"Azure Storage": [
{
"json": {
"etag": "\"0x22769D26D3F3740\"",
"lastModified": "Thu, 23 Jan 2025 17:53:23 GMT",
"requestId": "75b87ee3-a7f7-468d-b7d1-e7e7b3173dab",
"version": "2025-01-05",
"date": "Thu, 23 Jan 2025 17:53:23 GMT",
"clientRequestId": "client-request-id-123",
"requestServerEncrypted": true
}
}
]
}
}
@@ -0,0 +1,48 @@
{
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0],
"id": "99f866fa-f63c-477d-a0d0-48fbdb8a344a",
"name": "When clicking Execute workflow"
},
{
"parameters": {
"operation": "delete",
"container": { "__rl": true, "mode": "list", "value": "mycontainer" },
"requestOptions": {}
},
"type": "n8n-nodes-base.azureStorage",
"typeVersion": 1,
"position": [220, 0],
"id": "ab1b6258-5c75-4893-90bf-ef591264420c",
"name": "Azure Storage",
"credentials": {
"azureStorageSharedKeyApi": {
"id": "VPmcFM58eDDexWQL",
"name": "Azure Storage Shared Key account"
}
}
}
],
"connections": {
"When clicking Execute workflow": {
"main": [[{ "node": "Azure Storage", "type": "main", "index": 0 }]]
}
},
"pinData": {
"Azure Storage": [
{
"json": {
"contentLength": 0,
"requestId": "ca3a8907-601e-0050-1929-723410000000",
"server": "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0",
"version": "2020-10-02",
"date": "Wed, 29 Jan 2025 08:38:21 GMT"
}
}
]
}
}
@@ -0,0 +1,61 @@
{
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0],
"id": "99f866fa-f63c-477d-a0d0-48fbdb8a344a",
"name": "When clicking Execute workflow"
},
{
"parameters": {
"operation": "get",
"container": { "__rl": true, "mode": "list", "value": "mycontainer" },
"options": { "simplify": false },
"requestOptions": {}
},
"type": "n8n-nodes-base.azureStorage",
"typeVersion": 1,
"position": [220, 0],
"id": "ab1b6258-5c75-4893-90bf-ef591264420c",
"name": "Azure Storage",
"credentials": {
"azureStorageSharedKeyApi": {
"id": "VPmcFM58eDDexWQL",
"name": "Azure Storage Shared Key account"
}
}
}
],
"connections": {
"When clicking Execute workflow": {
"main": [[{ "node": "Azure Storage", "type": "main", "index": 0 }]]
}
},
"pinData": {
"Azure Storage": [
{
"json": {
"name": "mycontainer",
"properties": {
"lastModified": "Tue, 28 Jan 2025 16:40:21 GMT",
"etag": "\"0x8DD3FBA74CF3620\"",
"leaseStatus": "unlocked",
"leaseState": "available",
"hasImmutabilityPolicy": false,
"hasLegalHold": false,
"leaseDuration": "infinite",
"blobPublicAccess": "blob",
"contentLength": 0,
"date": "Wed, 29 Jan 2025 08:43:08 GMT",
"requestId": "49edb268-b01e-0053-6e29-72d574000000",
"server": "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0",
"version": "2020-10-02"
},
"metadata": { "key1": "field1" }
}
}
]
}
}
@@ -0,0 +1,73 @@
{
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0],
"id": "99f866fa-f63c-477d-a0d0-48fbdb8a344a",
"name": "When clicking Execute workflow"
},
{
"parameters": { "operation": "getAll", "returnAll": true, "requestOptions": {} },
"type": "n8n-nodes-base.azureStorage",
"typeVersion": 1,
"position": [220, 0],
"id": "ab1b6258-5c75-4893-90bf-ef591264420c",
"name": "Azure Storage",
"credentials": {
"azureStorageSharedKeyApi": {
"id": "VPmcFM58eDDexWQL",
"name": "Azure Storage Shared Key account"
}
}
}
],
"connections": {
"When clicking Execute workflow": {
"main": [[{ "node": "Azure Storage", "type": "main", "index": 0 }]]
}
},
"pinData": {
"Azure Storage": [
{
"json": {
"name": "mycontainer1",
"deleted": true,
"version": "01DB7228F6BEE6E7",
"properties": {
"lastModified": "Wed, 29 Jan 2025 08:37:00 GMT",
"etag": "\"0x8DD40401935032C\"",
"leaseStatus": "unlocked",
"leaseState": "expired",
"hasImmutabilityPolicy": false,
"hasLegalHold": false,
"immutableStorageWithVersioningEnabled": "false",
"deletedTime": "Wed, 29 Jan 2025 08:38:21 GMT",
"remainingRetentionDays": 7
},
"metadata": { "key1": "value1" }
}
},
{
"json": {
"name": "mycontainer1",
"deleted": true,
"version": "01DB7228F6BEE6E7",
"properties": {
"lastModified": "Wed, 29 Jan 2025 08:37:00 GMT",
"etag": "\"0x8DD40401935032C\"",
"leaseStatus": "unlocked",
"leaseState": "expired",
"hasImmutabilityPolicy": false,
"hasLegalHold": false,
"immutableStorageWithVersioningEnabled": "false",
"deletedTime": "Wed, 29 Jan 2025 08:38:21 GMT",
"remainingRetentionDays": 7
},
"metadata": { "key1": "value1" }
}
}
]
}
}
@@ -0,0 +1,59 @@
{
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0],
"id": "99f866fa-f63c-477d-a0d0-48fbdb8a344a",
"name": "When clicking Execute workflow"
},
{
"parameters": {
"operation": "getAll",
"limit": 1,
"options": { "fields": ["metadata", "deleted", "system"], "filter": "mycontainer" },
"requestOptions": {}
},
"type": "n8n-nodes-base.azureStorage",
"typeVersion": 1,
"position": [220, 0],
"id": "ab1b6258-5c75-4893-90bf-ef591264420c",
"name": "Azure Storage",
"credentials": {
"azureStorageSharedKeyApi": {
"id": "VPmcFM58eDDexWQL",
"name": "Azure Storage Shared Key account"
}
}
}
],
"connections": {
"When clicking Execute workflow": {
"main": [[{ "node": "Azure Storage", "type": "main", "index": 0 }]]
}
},
"pinData": {
"Azure Storage": [
{
"json": {
"name": "mycontainer1",
"deleted": true,
"version": "01DB7228F6BEE6E7",
"properties": {
"lastModified": "Wed, 29 Jan 2025 08:37:00 GMT",
"etag": "\"0x8DD40401935032C\"",
"leaseStatus": "unlocked",
"leaseState": "expired",
"hasImmutabilityPolicy": false,
"hasLegalHold": false,
"immutableStorageWithVersioningEnabled": "false",
"deletedTime": "Wed, 29 Jan 2025 08:38:21 GMT",
"remainingRetentionDays": 7
},
"metadata": { "key1": "value1" }
}
}
]
}
}
@@ -0,0 +1,32 @@
import { NodeTestHarness } from '@nodes-testing/node-test-harness';
import { credentials } from '../credentials';
describe('Azure Storage Node', () => {
const { baseUrl } = credentials.azureStorageOAuth2Api;
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['container_create.workflow.json'],
nock: {
baseUrl,
mocks: [
{
method: 'put',
path: '/mycontainer?restype=container',
statusCode: 201,
requestHeaders: { 'x-ms-blob-public-access': 'blob', 'x-ms-meta-key1': 'value1' },
responseBody: '',
responseHeaders: {
etag: '"0x22769D26D3F3740"',
'last-modified': 'Thu, 23 Jan 2025 17:53:23 GMT',
'x-ms-request-id': '75b87ee3-a7f7-468d-b7d1-e7e7b3173dab',
'x-ms-version': '2025-01-05',
date: 'Thu, 23 Jan 2025 17:53:23 GMT',
'x-ms-request-server-encrypted': 'true',
'x-ms-client-request-id': 'client-request-id-123',
},
},
],
},
});
});
@@ -0,0 +1,29 @@
import { NodeTestHarness } from '@nodes-testing/node-test-harness';
import { credentials } from '../credentials';
describe('Azure Storage Node', () => {
const { baseUrl } = credentials.azureStorageOAuth2Api;
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['container_delete.workflow.json'],
nock: {
baseUrl,
mocks: [
{
method: 'delete',
path: '/mycontainer?restype=container',
statusCode: 202,
responseBody: '',
responseHeaders: {
'content-length': '0',
server: 'Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0',
'x-ms-request-id': 'ca3a8907-601e-0050-1929-723410000000',
'x-ms-version': '2020-10-02',
date: 'Wed, 29 Jan 2025 08:38:21 GMT',
},
},
],
},
});
});
@@ -0,0 +1,38 @@
import { NodeTestHarness } from '@nodes-testing/node-test-harness';
import { credentials } from '../credentials';
describe('Azure Storage Node', () => {
const { baseUrl } = credentials.azureStorageOAuth2Api;
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['container_get.workflow.json'],
nock: {
baseUrl,
mocks: [
{
method: 'get',
path: '/mycontainer?restype=container',
statusCode: 200,
responseBody: '',
responseHeaders: {
'content-length': '0',
'last-modified': 'Tue, 28 Jan 2025 16:40:21 GMT',
etag: '"0x8DD3FBA74CF3620"',
server: 'Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0',
'x-ms-request-id': '49edb268-b01e-0053-6e29-72d574000000',
'x-ms-version': '2020-10-02',
'x-ms-lease-status': 'unlocked',
'x-ms-lease-state': 'available',
'x-ms-has-immutability-policy': 'false',
'x-ms-has-legal-hold': 'false',
date: 'Wed, 29 Jan 2025 08:43:08 GMT',
'x-ms-meta-key1': 'field1',
'x-ms-blob-public-access': 'blob',
'x-ms-lease-duration': 'infinite',
},
},
],
},
});
});
@@ -0,0 +1,28 @@
import { NodeTestHarness } from '@nodes-testing/node-test-harness';
import { credentials } from '../credentials';
describe('Azure Storage Node', () => {
const { baseUrl } = credentials.azureStorageOAuth2Api;
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['container_getAll.workflow.json'],
nock: {
baseUrl,
mocks: [
{
method: 'get',
path: '/?comp=list',
statusCode: 200,
responseBody: `<?xml version="1.0" encoding="utf-8"?><EnumerationResults ServiceEndpoint="${baseUrl}/"><Prefix>mycontainer</Prefix><MaxResults>1</MaxResults><Containers><Container><Name>mycontainer1</Name><Deleted>true</Deleted><Version>01DB7228F6BEE6E7</Version><Properties><Last-Modified>Wed, 29 Jan 2025 08:37:00 GMT</Last-Modified><Etag>"0x8DD40401935032C"</Etag><LeaseStatus>unlocked</LeaseStatus><LeaseState>expired</LeaseState><HasImmutabilityPolicy>false</HasImmutabilityPolicy><HasLegalHold>false</HasLegalHold><ImmutableStorageWithVersioningEnabled>false</ImmutableStorageWithVersioningEnabled><DeletedTime>Wed, 29 Jan 2025 08:38:21 GMT</DeletedTime><RemainingRetentionDays>7</RemainingRetentionDays></Properties><Metadata><key1>value1</key1></Metadata></Container></Containers><NextMarker>mycontainer2</NextMarker></EnumerationResults>`,
},
{
method: 'get',
path: '/?comp=list&marker=mycontainer2',
statusCode: 200,
responseBody: `<?xml version="1.0" encoding="utf-8"?><EnumerationResults ServiceEndpoint="${baseUrl}/"><Prefix>mycontainer</Prefix><MaxResults>1</MaxResults><Containers><Container><Name>mycontainer1</Name><Deleted>true</Deleted><Version>01DB7228F6BEE6E7</Version><Properties><Last-Modified>Wed, 29 Jan 2025 08:37:00 GMT</Last-Modified><Etag>"0x8DD40401935032C"</Etag><LeaseStatus>unlocked</LeaseStatus><LeaseState>expired</LeaseState><HasImmutabilityPolicy>false</HasImmutabilityPolicy><HasLegalHold>false</HasLegalHold><ImmutableStorageWithVersioningEnabled>false</ImmutableStorageWithVersioningEnabled><DeletedTime>Wed, 29 Jan 2025 08:38:21 GMT</DeletedTime><RemainingRetentionDays>7</RemainingRetentionDays></Properties><Metadata><key1>value1</key1></Metadata></Container></Containers><NextMarker></NextMarker></EnumerationResults>`,
},
],
},
});
});
@@ -0,0 +1,22 @@
import { NodeTestHarness } from '@nodes-testing/node-test-harness';
import { credentials } from '../credentials';
describe('Azure Storage Node', () => {
const { baseUrl } = credentials.azureStorageOAuth2Api;
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['container_getAllLimitOptions.workflow.json'],
nock: {
baseUrl,
mocks: [
{
method: 'get',
path: '/?comp=list&maxresults=1&include=metadata%2Cdeleted%2Csystem&prefix=mycontainer',
statusCode: 200,
responseBody: `<?xml version="1.0" encoding="utf-8"?><EnumerationResults ServiceEndpoint="${baseUrl}/"><Prefix>mycontainer</Prefix><MaxResults>1</MaxResults><Containers><Container><Name>mycontainer1</Name><Deleted>true</Deleted><Version>01DB7228F6BEE6E7</Version><Properties><Last-Modified>Wed, 29 Jan 2025 08:37:00 GMT</Last-Modified><Etag>"0x8DD40401935032C"</Etag><LeaseStatus>unlocked</LeaseStatus><LeaseState>expired</LeaseState><HasImmutabilityPolicy>false</HasImmutabilityPolicy><HasLegalHold>false</HasLegalHold><ImmutableStorageWithVersioningEnabled>false</ImmutableStorageWithVersioningEnabled><DeletedTime>Wed, 29 Jan 2025 08:38:21 GMT</DeletedTime><RemainingRetentionDays>7</RemainingRetentionDays></Properties><Metadata><key1>value1</key1></Metadata></Container></Containers><NextMarker>mycontainer2</NextMarker></EnumerationResults>`,
},
],
},
});
});