Include diagnostics in bundle

This commit is contained in:
Henry Mercer
2026-02-17 13:38:09 +00:00
parent 554b93127b
commit 5c583bbb19
13 changed files with 81 additions and 27 deletions

View File

@@ -160,6 +160,7 @@ export interface CodeQL {
databasePath: string,
outputFilePath: string,
dbName: string,
includeDiagnostics: boolean,
alsoIncludeRelativePaths: string[],
): Promise<void>;
/**
@@ -912,15 +913,22 @@ async function getCodeQLForCmd(
databasePath: string,
outputFilePath: string,
databaseName: string,
includeDiagnostics: boolean,
alsoIncludeRelativePaths: string[],
): Promise<void> {
const includeDiagnosticsArgs = includeDiagnostics
? ["--include-diagnostics"]
: [];
const args = [
"database",
"bundle",
databasePath,
`--output=${outputFilePath}`,
`--name=${databaseName}`,
...getExtraOptionsFromEnv(["database", "bundle"]),
...includeDiagnosticsArgs,
...getExtraOptionsFromEnv(["database", "bundle"], {
ignoringOptions: includeDiagnosticsArgs,
}),
];
if (
await this.supportsFeature(ToolsFeature.BundleSupportsIncludeOption)

View File

@@ -101,7 +101,9 @@ export async function cleanupAndUploadDatabases(
// Although we are uploading arbitrary file contents to the API, it's worth
// noting that it's the API's job to validate that the contents is acceptable.
// This API method is available to anyone with write access to the repo.
const bundledDb = await bundleDb(config, language, codeql, language);
const bundledDb = await bundleDb(config, language, codeql, language, {
includeDiagnostics: false,
});
bundledDbSize = fs.statSync(bundledDb).size;
const bundledDbReadStream = fs.createReadStream(bundledDb);
const commitOid = await gitUtils.getCommitOid(

View File

@@ -429,6 +429,7 @@ async function createDatabaseBundleCli(
language,
codeql,
`${config.debugDatabaseName}-${language}`,
{ includeDiagnostics: true },
);
return databaseBundlePath;
}

View File

@@ -744,6 +744,7 @@ export async function bundleDb(
language: Language,
codeql: CodeQL,
dbName: string,
{ includeDiagnostics }: { includeDiagnostics: boolean },
) {
const databasePath = getCodeQLDatabasePath(config, language);
const databaseBundlePath = path.resolve(config.dbLocation, `${dbName}.zip`);
@@ -774,6 +775,7 @@ export async function bundleDb(
databasePath,
databaseBundlePath,
dbName,
includeDiagnostics,
additionalFiles,
);
return databaseBundlePath;