Remove Komodo backend in favor of native hosts
This commit is contained in:
@@ -19,7 +19,7 @@ beforeEach(async () => {
|
||||
fixture = await newFixture([]);
|
||||
vi.stubEnv('GAME_FILES_ROOT', join(fixture.root, 'libraries'));
|
||||
vi.stubEnv('PLUTAINER_IMAGE', image); vi.stubEnv('RCON_PASSWORD', 'test-password');
|
||||
vi.stubEnv('KOMODO_ADDRESS', ''); vi.stubEnv('KOMODO_API_KEY', ''); vi.stubEnv('KOMODO_API_SECRET', '');
|
||||
|
||||
const { createHost, createEnrollment, enrollHost } = await import('../../src/lib/server/hosts/index.js');
|
||||
hostId = createHost({ name: 'Native Debian', portMin: 28960, portMax: 28970 }).id;
|
||||
enrollHost(createEnrollment(hostId).token, inventory());
|
||||
@@ -250,7 +250,6 @@ describe('native instance provisioning', () => {
|
||||
expect(result.progress?.checks[0].source).toBe('agent');
|
||||
const steps = provisioningGroups(result).flatMap(group => group.steps);
|
||||
expect(steps.every(step => step.state === 'done')).toBe(true);
|
||||
expect(steps.some(step => step.label.includes('Komodo'))).toBe(false);
|
||||
expect(result.agentOperation?.state).toBe('completed');
|
||||
});
|
||||
|
||||
@@ -410,7 +409,7 @@ describe('native instance provisioning', () => {
|
||||
expect(nativeInstance(job.name)?.library_id).toBe(acceptedId);
|
||||
});
|
||||
|
||||
it.each(['t5', 't6'] as const)('queues and verifies a %s deployment without Komodo', async game => {
|
||||
it.each(['t5', 't6'] as const)('queues and verifies a %s deployment through its host agent', async game => {
|
||||
const job = await queue(game); await advance();
|
||||
const operation = await operationFor(job.deploymentId);
|
||||
expect(job.port).toBeNull();
|
||||
@@ -498,8 +497,8 @@ describe('native instance provisioning', () => {
|
||||
const { db } = await import('../../src/lib/server/db/index.js');
|
||||
const { probeVersion } = await import('../../src/lib/server/integrations/plutonium.js');
|
||||
const actual = await vi.importActual<typeof import('../../src/lib/server/integrations/plutonium.js')>('../../src/lib/server/integrations/plutonium.js');
|
||||
const komodo = await import('../../src/lib/server/integrations/komodo.js');
|
||||
vi.spyOn(komodo, 'komodoInspectHealthy').mockResolvedValue({ ok: true, state: 'running' });
|
||||
const backend = await import('../../src/lib/server/backends/native.js');
|
||||
vi.spyOn(backend, 'nativeHealth').mockResolvedValue({ ok: true, state: 'running' });
|
||||
vi.mocked(probeVersion).mockImplementationOnce(actual.probeVersion);
|
||||
// Version evidence must follow the submitted command, even on a fast test host.
|
||||
db().prepare('UPDATE server_deployments SET submitted_at=? WHERE id=?').run(new Date(Date.now() - 1000).toISOString(), rebuild.deploymentId);
|
||||
@@ -526,8 +525,8 @@ describe('native instance provisioning', () => {
|
||||
const { probeVersion } = await import('../../src/lib/server/integrations/plutonium.js');
|
||||
const { rconPlutoniumVersion } = await import('../../src/lib/server/integrations/rcon.js');
|
||||
const actual = await vi.importActual<typeof import('../../src/lib/server/integrations/plutonium.js')>('../../src/lib/server/integrations/plutonium.js');
|
||||
const komodo = await import('../../src/lib/server/integrations/komodo.js');
|
||||
vi.spyOn(komodo, 'komodoInspectHealthy').mockResolvedValue({ ok: true, state: 'running' });
|
||||
const backend = await import('../../src/lib/server/backends/native.js');
|
||||
vi.spyOn(backend, 'nativeHealth').mockResolvedValue({ ok: true, state: 'running' });
|
||||
const submittedAt = new Date(Date.now() - 1000).toISOString();
|
||||
db().prepare('UPDATE server_deployments SET submitted_at=? WHERE id=?').run(submittedAt, rebuild.deploymentId);
|
||||
db().prepare('UPDATE restart_rollout SET requested_at=? WHERE operation_id=?').run(submittedAt, rebuild.deploymentId);
|
||||
|
||||
Reference in New Issue
Block a user