switch to using runner instead of preload_tracer

This commit is contained in:
Robert 2021-01-12 10:43:06 +00:00
parent 5a03a14bfb
commit cd2eafc8e3
3 changed files with 16 additions and 20 deletions

12
lib/runner.js generated
View file

@ -126,13 +126,11 @@ program
if (process.platform === "win32") { if (process.platform === "win32") {
await init_1.injectWindowsTracer(parseTraceProcessName(), parseTraceProcessLevel(), config, codeql, tracerConfig); await init_1.injectWindowsTracer(parseTraceProcessName(), parseTraceProcessLevel(), config, codeql, tracerConfig);
} }
// On macos include the path to preload_tracer in the env as that // On macos it's necessary to prefix the build command with the runner exectuable
// executable is needed to trace when System Integrity Protection is enabled. // on order to trace when System Integrity Protection is enabled.
if (process.platform === "darwin") { // The exectuable also exists and works for other platforms so we output this env
const codeqlDist = tracerConfig.env["CODEQL_DIST"]; // var with a path to the runner regardless so it's always available.
const codeqlPlatform = tracerConfig.env["CODEQL_PLATFORM"]; tracerConfig.env["CODEQL_RUNNER"] = path.join(tracerConfig.env["CODEQL_DIST"], "tools", tracerConfig.env["CODEQL_PLATFORM"], "runner");
tracerConfig.env["CODEQL_PRELOAD_TRACER"] = path.join(codeqlDist, "tools", codeqlPlatform, "preload_tracer");
}
// Always output a json file of the env that can be consumed programmatically // Always output a json file of the env that can be consumed programmatically
const jsonEnvFile = path.join(config.tempDir, codeqlEnvJsonFilename); const jsonEnvFile = path.join(config.tempDir, codeqlEnvJsonFilename);
fs.writeFileSync(jsonEnvFile, JSON.stringify(tracerConfig.env)); fs.writeFileSync(jsonEnvFile, JSON.stringify(tracerConfig.env));

File diff suppressed because one or more lines are too long

View file

@ -203,18 +203,16 @@ program
); );
} }
// On macos include the path to preload_tracer in the env as that // On macos it's necessary to prefix the build command with the runner exectuable
// executable is needed to trace when System Integrity Protection is enabled. // on order to trace when System Integrity Protection is enabled.
if (process.platform === "darwin") { // The exectuable also exists and works for other platforms so we output this env
const codeqlDist = tracerConfig.env["CODEQL_DIST"]; // var with a path to the runner regardless so it's always available.
const codeqlPlatform = tracerConfig.env["CODEQL_PLATFORM"]; tracerConfig.env["CODEQL_RUNNER"] = path.join(
tracerConfig.env["CODEQL_PRELOAD_TRACER"] = path.join( tracerConfig.env["CODEQL_DIST"],
codeqlDist, "tools",
"tools", tracerConfig.env["CODEQL_PLATFORM"],
codeqlPlatform, "runner"
"preload_tracer" );
);
}
// Always output a json file of the env that can be consumed programmatically // Always output a json file of the env that can be consumed programmatically
const jsonEnvFile = path.join(config.tempDir, codeqlEnvJsonFilename); const jsonEnvFile = path.join(config.tempDir, codeqlEnvJsonFilename);