Hide deprecation warning if feature flag is not set

This commit is contained in:
Koen Vlaswinkel 2024-04-26 14:28:18 +02:00
parent 7c29971135
commit 80394dcc32
3 changed files with 15 additions and 7 deletions

9
lib/upload-lib.js generated
View file

@ -109,7 +109,10 @@ function areAllRunsUnique(sarifObjects) {
} }
return true; return true;
} }
function showCombineSarifFilesDeprecationWarning(sarifObjects) { async function showCombineSarifFilesDeprecationWarning(sarifObjects, features) {
if (!(await features.getValue(feature_flags_1.Feature.CombineSarifFilesDeprecationWarning))) {
return false;
}
// Only give a deprecation warning when not all runs are unique // Only give a deprecation warning when not all runs are unique
return (!areAllRunsUnique(sarifObjects) && return (!areAllRunsUnique(sarifObjects) &&
!process.env.CODEQL_MERGE_SARIF_DEPRECATION_WARNING); !process.env.CODEQL_MERGE_SARIF_DEPRECATION_WARNING);
@ -128,7 +131,7 @@ async function combineSarifFilesUsingCLI(sarifFiles, gitHubVersion, features, lo
}); });
if (!areAllRunsProducedByCodeQL(sarifObjects)) { if (!areAllRunsProducedByCodeQL(sarifObjects)) {
logger.debug("Not all SARIF files were produced by CodeQL. Merging files in the action."); logger.debug("Not all SARIF files were produced by CodeQL. Merging files in the action.");
if (showCombineSarifFilesDeprecationWarning(sarifObjects)) { if (await showCombineSarifFilesDeprecationWarning(sarifObjects, features)) {
logger.warning("Uploading multiple SARIF runs with the same category is deprecated and will be removed on June 4, 2025. Please update your workflow to upload a single run per category. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice"); logger.warning("Uploading multiple SARIF runs with the same category is deprecated and will be removed on June 4, 2025. Please update your workflow to upload a single run per category. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice");
core.exportVariable("CODEQL_MERGE_SARIF_DEPRECATION_WARNING", "true"); core.exportVariable("CODEQL_MERGE_SARIF_DEPRECATION_WARNING", "true");
} }
@ -159,7 +162,7 @@ async function combineSarifFilesUsingCLI(sarifFiles, gitHubVersion, features, lo
} }
if (!(await codeQL.supportsFeature(tools_features_1.ToolsFeature.SarifMergeRunsFromEqualCategory))) { if (!(await codeQL.supportsFeature(tools_features_1.ToolsFeature.SarifMergeRunsFromEqualCategory))) {
logger.warning("The CodeQL CLI does not support merging SARIF files. Merging files in the action."); logger.warning("The CodeQL CLI does not support merging SARIF files. Merging files in the action.");
if (showCombineSarifFilesDeprecationWarning(sarifObjects)) { if (await showCombineSarifFilesDeprecationWarning(sarifObjects, features)) {
logger.warning("Uploading multiple CodeQL runs with the same category is deprecated and will be removed on June 4, 2025. Please update your CodeQL CLI version or update your workflow to set a distinct category for each CodeQL run. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice"); logger.warning("Uploading multiple CodeQL runs with the same category is deprecated and will be removed on June 4, 2025. Please update your CodeQL CLI version or update your workflow to set a distinct category for each CodeQL run. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice");
core.exportVariable("CODEQL_MERGE_SARIF_DEPRECATION_WARNING", "true"); core.exportVariable("CODEQL_MERGE_SARIF_DEPRECATION_WARNING", "true");
} }

File diff suppressed because one or more lines are too long

View file

@ -120,9 +120,14 @@ function areAllRunsUnique(sarifObjects: SarifFile[]): boolean {
return true; return true;
} }
function showCombineSarifFilesDeprecationWarning( async function showCombineSarifFilesDeprecationWarning(
sarifObjects: util.SarifFile[], sarifObjects: util.SarifFile[],
features: Features,
) { ) {
if (!(await features.getValue(Feature.CombineSarifFilesDeprecationWarning))) {
return false;
}
// Only give a deprecation warning when not all runs are unique // Only give a deprecation warning when not all runs are unique
return ( return (
!areAllRunsUnique(sarifObjects) && !areAllRunsUnique(sarifObjects) &&
@ -154,7 +159,7 @@ async function combineSarifFilesUsingCLI(
"Not all SARIF files were produced by CodeQL. Merging files in the action.", "Not all SARIF files were produced by CodeQL. Merging files in the action.",
); );
if (showCombineSarifFilesDeprecationWarning(sarifObjects)) { if (await showCombineSarifFilesDeprecationWarning(sarifObjects, features)) {
logger.warning( logger.warning(
"Uploading multiple SARIF runs with the same category is deprecated and will be removed on June 4, 2025. Please update your workflow to upload a single run per category. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice", "Uploading multiple SARIF runs with the same category is deprecated and will be removed on June 4, 2025. Please update your workflow to upload a single run per category. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice",
); );
@ -211,7 +216,7 @@ async function combineSarifFilesUsingCLI(
"The CodeQL CLI does not support merging SARIF files. Merging files in the action.", "The CodeQL CLI does not support merging SARIF files. Merging files in the action.",
); );
if (showCombineSarifFilesDeprecationWarning(sarifObjects)) { if (await showCombineSarifFilesDeprecationWarning(sarifObjects, features)) {
logger.warning( logger.warning(
"Uploading multiple CodeQL runs with the same category is deprecated and will be removed on June 4, 2025. Please update your CodeQL CLI version or update your workflow to set a distinct category for each CodeQL run. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice", "Uploading multiple CodeQL runs with the same category is deprecated and will be removed on June 4, 2025. Please update your CodeQL CLI version or update your workflow to set a distinct category for each CodeQL run. For more information, see https://github.blog/changelog/2024-05-06-code-scanning-will-stop-combining-runs-deprecation-notice",
); );