Files
alighasami 3d5eaf9445
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
first commit
2026-03-17 16:22:57 +03:30

46 lines
1.5 KiB
TypeScript

import { expect, test } from '../../../../fixtures/base';
test.use({ capability: 'external-secrets' });
test.setTimeout(180_000);
test.describe(
'AWS Secrets Manager with LocalStack @capability:external-secrets @licensed',
{
annotation: [{ type: 'owner', description: 'Lifecycle & Governance' }],
},
() => {
const PROVIDER_NAME = 'awsSecretsManager';
const PROVIDER_SETTINGS = {
region: 'us-east-1',
authMethod: 'iamUser',
accessKeyId: 'test',
secretAccessKey: 'test',
};
test.beforeEach(async ({ n8n, services }) => {
await services.localstack.secretsManager.clear();
await n8n.api.enableFeature('externalSecrets');
});
test('can configure, connect, and sync secrets from LocalStack', async ({ n8n, services }) => {
const { secretsManager } = services.localstack;
await secretsManager.createSecret('api-key', 'secret-123');
await n8n.api.externalSecrets.saveProviderSettings(PROVIDER_NAME, PROVIDER_SETTINGS);
await n8n.api.externalSecrets.testProvider(PROVIDER_NAME, PROVIDER_SETTINGS);
await n8n.api.externalSecrets.connectProvider(PROVIDER_NAME);
await n8n.api.externalSecrets.updateProvider(PROVIDER_NAME);
expect(await n8n.api.externalSecrets.getSecrets(PROVIDER_NAME)).toContain('api-key');
await secretsManager.createSecret('new-secret', 'value-2');
await n8n.api.externalSecrets.updateProvider(PROVIDER_NAME);
const secrets = await n8n.api.externalSecrets.getSecrets(PROVIDER_NAME);
expect(secrets).toContain('api-key');
expect(secrets).toContain('new-secret');
});
},
);