feat(channels): add line and zalo minio override config
This commit is contained in:
@@ -790,6 +790,44 @@ describe('configSchema — line', () => {
|
||||
expect(result.line.allowed_source_ids).toEqual([]);
|
||||
expect(result.line.require_mention).toBe(true);
|
||||
expect(result.line.mention_name).toBe('flynn');
|
||||
expect(result.line.minio.enabled).toBe(false);
|
||||
expect(result.line.minio.prefix).toBe('flynn/channels/line');
|
||||
expect(result.line.minio.secure).toBe(true);
|
||||
expect(result.line.minio.expires).toBe('24h');
|
||||
});
|
||||
|
||||
it('accepts line-specific minio overrides', () => {
|
||||
const result = configSchema.parse({
|
||||
...minimalConfig,
|
||||
line: {
|
||||
channel_access_token: 'line-token',
|
||||
channel_secret: 'line-secret',
|
||||
minio: {
|
||||
enabled: true,
|
||||
endpoint: 'localhost:9000',
|
||||
access_key: 'line-key',
|
||||
secret_key: 'line-secret',
|
||||
bucket: 'line-attachments',
|
||||
prefix: 'line/files',
|
||||
secure: false,
|
||||
expires: '12h',
|
||||
mc_path: '/usr/local/bin/mc',
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
if (!result.line) {
|
||||
throw new Error('Expected line config');
|
||||
}
|
||||
expect(result.line.minio.enabled).toBe(true);
|
||||
expect(result.line.minio.endpoint).toBe('localhost:9000');
|
||||
expect(result.line.minio.access_key).toBe('line-key');
|
||||
expect(result.line.minio.secret_key).toBe('line-secret');
|
||||
expect(result.line.minio.bucket).toBe('line-attachments');
|
||||
expect(result.line.minio.prefix).toBe('line/files');
|
||||
expect(result.line.minio.secure).toBe(false);
|
||||
expect(result.line.minio.expires).toBe('12h');
|
||||
expect(result.line.minio.mc_path).toBe('/usr/local/bin/mc');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -842,6 +880,43 @@ describe('configSchema — zalo', () => {
|
||||
expect(result.zalo.allowed_user_ids).toEqual([]);
|
||||
expect(result.zalo.require_mention).toBe(true);
|
||||
expect(result.zalo.mention_name).toBe('flynn');
|
||||
expect(result.zalo.minio.enabled).toBe(false);
|
||||
expect(result.zalo.minio.prefix).toBe('flynn/channels/zalo');
|
||||
expect(result.zalo.minio.secure).toBe(true);
|
||||
expect(result.zalo.minio.expires).toBe('24h');
|
||||
});
|
||||
|
||||
it('accepts zalo-specific minio overrides', () => {
|
||||
const result = configSchema.parse({
|
||||
...minimalConfig,
|
||||
zalo: {
|
||||
oa_access_token: 'oa-token',
|
||||
minio: {
|
||||
enabled: true,
|
||||
endpoint: 'localhost:9000',
|
||||
access_key: 'zalo-key',
|
||||
secret_key: 'zalo-secret',
|
||||
bucket: 'zalo-attachments',
|
||||
prefix: 'zalo/files',
|
||||
secure: false,
|
||||
expires: '8h',
|
||||
mc_path: '/usr/local/bin/mc',
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
if (!result.zalo) {
|
||||
throw new Error('Expected zalo config');
|
||||
}
|
||||
expect(result.zalo.minio.enabled).toBe(true);
|
||||
expect(result.zalo.minio.endpoint).toBe('localhost:9000');
|
||||
expect(result.zalo.minio.access_key).toBe('zalo-key');
|
||||
expect(result.zalo.minio.secret_key).toBe('zalo-secret');
|
||||
expect(result.zalo.minio.bucket).toBe('zalo-attachments');
|
||||
expect(result.zalo.minio.prefix).toBe('zalo/files');
|
||||
expect(result.zalo.minio.secure).toBe(false);
|
||||
expect(result.zalo.minio.expires).toBe('8h');
|
||||
expect(result.zalo.minio.mc_path).toBe('/usr/local/bin/mc');
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user