Clean up old stuff & fix ui errors
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
import { afterEach, describe, expect, test, vi } from 'vitest';
|
||||
|
||||
const loadVolumeSpec = async () => {
|
||||
vi.resetModules();
|
||||
process.env.SPOON_WORKER_TOKEN = 'test-worker-token';
|
||||
process.env.GITHUB_APP_ID = '123';
|
||||
process.env.GITHUB_APP_PRIVATE_KEY =
|
||||
'-----BEGIN PRIVATE KEY-----\\ntest\\n-----END PRIVATE KEY-----';
|
||||
return await import('../../src/runtime/docker');
|
||||
};
|
||||
|
||||
describe('Docker runtime', () => {
|
||||
afterEach(() => {
|
||||
delete process.env.SPOON_AGENT_CONTAINER_RUNTIME;
|
||||
delete process.env.SPOON_AGENT_CONTAINER_VOLUME_OPTIONS;
|
||||
vi.resetModules();
|
||||
});
|
||||
|
||||
test('adds SELinux relabel option for Podman workspace mounts by default', async () => {
|
||||
process.env.SPOON_AGENT_CONTAINER_RUNTIME = 'podman';
|
||||
const { jobWorkspaceVolumeSpec } = await loadVolumeSpec();
|
||||
|
||||
expect(jobWorkspaceVolumeSpec('/tmp/spoon-job')).toBe(
|
||||
'/tmp/spoon-job:/workspace:Z',
|
||||
);
|
||||
});
|
||||
|
||||
test('does not add Podman volume options for Docker by default', async () => {
|
||||
process.env.SPOON_AGENT_CONTAINER_RUNTIME = 'docker';
|
||||
const { jobWorkspaceVolumeSpec } = await loadVolumeSpec();
|
||||
|
||||
expect(jobWorkspaceVolumeSpec('/tmp/spoon-job')).toBe(
|
||||
'/tmp/spoon-job:/workspace',
|
||||
);
|
||||
});
|
||||
|
||||
test('allows explicit workspace mount options', async () => {
|
||||
process.env.SPOON_AGENT_CONTAINER_RUNTIME = 'podman';
|
||||
process.env.SPOON_AGENT_CONTAINER_VOLUME_OPTIONS = 'z';
|
||||
const { jobWorkspaceVolumeSpec } = await loadVolumeSpec();
|
||||
|
||||
expect(jobWorkspaceVolumeSpec('/tmp/spoon-job')).toBe(
|
||||
'/tmp/spoon-job:/workspace:z',
|
||||
);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user