MCPcopy Create free account
hub / github.com/METR/vivaria / startTaskEnvironment

Function startTaskEnvironment

server/src/docker/agents.ts:927–947  ·  view source on GitHub ↗
(
  taskEnvironmentIdentifier: string,
  driver: Driver,
  taskFamilyDirectory: string,
  taskSetupData: TaskSetupData,
  env: Env,
  buildVmImage: VmImageBuilder,
  saveAuxVmDetails?: (auxVmDetails: AuxVmDetails | null) => Promise<void>,
)

Source from the content-addressed store, hash-verified

925}
926
927export async function startTaskEnvironment(
928 taskEnvironmentIdentifier: string,
929 driver: Driver,
930 taskFamilyDirectory: string,
931 taskSetupData: TaskSetupData,
932 env: Env,
933 buildVmImage: VmImageBuilder,
934 saveAuxVmDetails?: (auxVmDetails: AuxVmDetails | null) => Promise<void>,
935): Promise<AuxVmDetails | null> {
936 const auxVMDetails = await driver.maybeCreateAuxVm(
937 taskEnvironmentIdentifier,
938 taskFamilyDirectory,
939 taskSetupData,
940 buildVmImage,
941 )
942 await saveAuxVmDetails?.(auxVMDetails)
943
944 await driver.startTask(taskSetupData, addAuxVmDetailsToEnv(env, auxVMDetails))
945
946 return auxVMDetails
947}
948
949export function addAuxVmDetailsToEnv(env: Env, auxVMDetails: AuxVmDetails | null): Env {
950 const result = { ...env }

Callers 2

startTaskEnvWithAuxVmMethod · 0.90
startTaskEnvWithAuxVmMethod · 0.85

Calls 3

addAuxVmDetailsToEnvFunction · 0.85
maybeCreateAuxVmMethod · 0.80
startTaskMethod · 0.80

Tested by

no test coverage detected