mirror of
https://github.com/tiennm99/ccs.git
synced 2026-07-16 12:15:57 +00:00
57 lines
2.1 KiB
TypeScript
57 lines
2.1 KiB
TypeScript
import { existsSync, readFileSync } from 'fs';
|
|
import { describe, expect, it } from 'bun:test';
|
|
import { getDockerAssetPaths } from '../../../src/docker/docker-assets';
|
|
|
|
describe('docker bundled assets', () => {
|
|
const assets = getDockerAssetPaths();
|
|
|
|
it('resolves all required asset paths', () => {
|
|
expect(assets.composeFile).toContain('docker-compose.integrated.yml');
|
|
expect(assets.dockerfile).toContain('Dockerfile.integrated');
|
|
expect(assets.supervisordConfig).toContain('supervisord.conf');
|
|
expect(assets.entrypoint).toContain('entrypoint-integrated.sh');
|
|
});
|
|
|
|
it('all bundled assets exist on disk', () => {
|
|
expect(existsSync(assets.composeFile)).toBe(true);
|
|
expect(existsSync(assets.dockerfile)).toBe(true);
|
|
expect(existsSync(assets.supervisordConfig)).toBe(true);
|
|
expect(existsSync(assets.entrypoint)).toBe(true);
|
|
});
|
|
|
|
it('binds integrated service ports to loopback by default', () => {
|
|
const compose = readFileSync(assets.composeFile, 'utf8');
|
|
|
|
expect(compose).toContain(
|
|
'"${CCS_DOCKER_BIND_HOST:-127.0.0.1}:${CCS_DASHBOARD_PORT:-3000}:3000"'
|
|
);
|
|
expect(compose).toContain(
|
|
'"${CCS_DOCKER_BIND_HOST:-127.0.0.1}:${CCS_CLIPROXY_PORT:-8317}:8317"'
|
|
);
|
|
expect(compose).not.toContain('"${CCS_DASHBOARD_PORT:-3000}:3000"');
|
|
expect(compose).not.toContain('"${CCS_CLIPROXY_PORT:-8317}:8317"');
|
|
});
|
|
|
|
it('passes Docker key rotation controls into the integrated container', () => {
|
|
const compose = readFileSync(assets.composeFile, 'utf8');
|
|
|
|
expect(compose).toContain(
|
|
'CCS_DOCKER_LEGACY_KEY_GRACE_DAYS: "${CCS_DOCKER_LEGACY_KEY_GRACE_DAYS:-}"'
|
|
);
|
|
expect(compose).toContain(
|
|
'CCS_DOCKER_RESTORE_LEGACY_API_KEY: "${CCS_DOCKER_RESTORE_LEGACY_API_KEY:-}"'
|
|
);
|
|
});
|
|
|
|
it('passes Docker key rotation controls into the public compose file', () => {
|
|
const compose = readFileSync('docker/compose.yaml', 'utf8');
|
|
|
|
expect(compose).toContain(
|
|
'CCS_DOCKER_LEGACY_KEY_GRACE_DAYS: "${CCS_DOCKER_LEGACY_KEY_GRACE_DAYS:-}"'
|
|
);
|
|
expect(compose).toContain(
|
|
'CCS_DOCKER_RESTORE_LEGACY_API_KEY: "${CCS_DOCKER_RESTORE_LEGACY_API_KEY:-}"'
|
|
);
|
|
});
|
|
});
|