in vsts/src/utils.ts [126:155]
export async function prepareAgent(
args: string[],
useNightly = false
): Promise<void> {
const arch = getProcessArchName()
const platform = getProcessPlatformName()
const temp = await tool.downloadTool(getQodanaUrl(arch, platform, useNightly))
if (!useNightly) {
const expectedChecksum = getQodanaSha256(arch, platform)
const actualChecksum = sha256sum(temp)
if (expectedChecksum !== actualChecksum) {
setFailed(
getQodanaSha256MismatchMessage(expectedChecksum, actualChecksum)
)
}
}
let extractRoot
if (process.platform === 'win32') {
extractRoot = await tool.extractZip(temp)
} else {
extractRoot = await tool.extractTar(temp)
}
tool.prependPath(await tool.cacheDir(extractRoot, EXECUTABLE, VERSION))
if (!isNativeMode(args)) {
const pull = await qodana(getQodanaPullArgs(args))
if (pull !== 0) {
setFailed("Unable to run 'qodana pull'")
}
}
}