diff --git a/src/matches/match-assistant/match-assistant.on-demand-teardown.spec.ts b/src/matches/match-assistant/match-assistant.on-demand-teardown.spec.ts index b8ace931..82e4ebdd 100644 --- a/src/matches/match-assistant/match-assistant.on-demand-teardown.spec.ts +++ b/src/matches/match-assistant/match-assistant.on-demand-teardown.spec.ts @@ -645,6 +645,18 @@ describe("MatchAssistantService — on-demand server teardown", () => { }); }); + it("tells the game server which match it runs, for its crash reports", async () => { + await (service as any).assignOnDemandServer("match-1"); + + const [container] = + createNamespacedJob.mock.calls[0][0].body.spec.template.spec.containers; + + expect(container.env).toContainEqual({ + name: "MATCH_ID", + value: "match-1", + }); + }); + it("holds the pool lock past a teardown but not past the retries", async () => { await (service as any).assignOnDemandServer("match-1"); diff --git a/src/matches/match-assistant/match-assistant.service.ts b/src/matches/match-assistant/match-assistant.service.ts index c7e4d4d1..51c57261 100644 --- a/src/matches/match-assistant/match-assistant.service.ts +++ b/src/matches/match-assistant/match-assistant.service.ts @@ -1260,6 +1260,7 @@ export class MatchAssistantService { value: `-maxplayers ${match.max_players_per_lineup * 2 + 3} ${map.workshop_map_id ? `+map de_inferno` : `+map ${map.name}`} +game_type 0 +game_mode ${MatchAssistantService.getGameMode(match.options?.type)} +sv_password ${match.password}${gameMode?.extraGameParams ? ` ${gameMode.extraGameParams}` : ""}`, }, { name: "SERVER_ID", value: server.id }, + { name: "MATCH_ID", value: matchId }, { name: "SERVER_API_PASSWORD", value: server.api_password,