Propagate --working-dir argument

This commit is contained in:
Michael B. Gale 2023-06-02 19:36:07 +01:00
parent fce65da29a
commit 6f07b504a5
No known key found for this signature in database
GPG key ID: FF5E2765BD00628F
9 changed files with 25 additions and 22 deletions

View file

@ -122,6 +122,7 @@ export interface CodeQL {
* Run 'codeql resolve build-environment'
*/
resolveBuildEnvironment(
workingDir: string | undefined,
language: Language
): Promise<ResolveBuildEnvironmentOutput>;
@ -700,13 +701,19 @@ export async function getCodeQLForCmd(
throw new Error(`Unexpected output from codeql resolve queries: ${e}`);
}
},
async resolveBuildEnvironment(language: Language) {
async resolveBuildEnvironment(
workingDir: string | undefined,
language: Language
) {
const codeqlArgs = [
"resolve",
"build-environment",
`--language=${language}`,
...getExtraOptionsFromEnv(["resolve", "build-environment"]),
];
if (workingDir !== undefined) {
codeqlArgs.push("--working-dir", workingDir);
}
const output = await runTool(cmd, codeqlArgs);
try {

View file

@ -80,16 +80,10 @@ async function run() {
);
const workingDirectory = getOptionalInput("working-directory");
if (workingDirectory) {
logger.info(
`Changing autobuilder working directory to ${workingDirectory}`
);
process.chdir(workingDirectory);
}
const result = await runResolveBuildEnvironment(
initCodeQLResult.codeql.getPath(),
logger,
workingDirectory,
language
);
core.setOutput("environment", result);

View file

@ -5,11 +5,14 @@ import { Logger } from "./logging";
export async function runResolveBuildEnvironment(
cmd: string,
logger: Logger,
workingDir: string | undefined,
language: Language
) {
logger.startGroup(`Attempting to resolve build environment for ${language}`);
logger.startGroup(
`Attempting to resolve build environment for ${language} in ${workingDir}`
);
const codeQL = await getCodeQL(cmd);
const result = await codeQL.resolveBuildEnvironment(language);
const result = await codeQL.resolveBuildEnvironment(workingDir, language);
logger.endGroup();
return result;
}