Gate zstd enablement on tar version

This commit is contained in:
Henry Mercer 2024-09-23 19:35:35 +01:00
parent b1ca017eae
commit db98c27941
6 changed files with 24 additions and 20 deletions

View file

@ -499,13 +499,3 @@ class GitHubFeatureFlags {
}
}
}
export async function useZstdBundle(
cliVersion: string,
features: FeatureEnablement,
): Promise<boolean> {
return (
semver.gte(cliVersion, "2.19.0") &&
!!(await features.getValue(Feature.ZstdBundle))
);
}

View file

@ -17,8 +17,8 @@ import * as api from "./api-client";
import * as defaults from "./defaults.json";
import {
CodeQLDefaultVersionInfo,
Feature,
FeatureEnablement,
useZstdBundle,
} from "./feature-flags";
import { Logger } from "./logging";
import * as tar from "./tar";
@ -439,7 +439,8 @@ export async function getCodeQLSource(
url = await getCodeQLBundleDownloadURL(
tagName!,
apiDetails,
cliVersion !== undefined && (await useZstdBundle(cliVersion, features)),
cliVersion !== undefined &&
(await useZstdBundle(cliVersion, features, logger)),
logger,
);
}
@ -741,3 +742,15 @@ function sanitizeUrlForStatusReport(url: string): string {
? url
: "sanitized-value";
}
async function useZstdBundle(
cliVersion: string,
features: FeatureEnablement,
logger: Logger,
): Promise<boolean> {
return (
semver.gte(cliVersion, "2.19.0") &&
!!(await features.getValue(Feature.ZstdBundle)) &&
(await tar.isZstdAvailable(logger)).available
);
}