From c3be36f5cb8905c3f6827b7aff7a2814fe195f13 Mon Sep 17 00:00:00 2001 From: Henry Mercer Date: Tue, 10 Jan 2023 13:16:22 +0000 Subject: [PATCH] Use new default version to set up CodeQL --- lib/codeql.js | 26 +---- lib/codeql.js.map | 2 +- lib/codeql.test.js | 115 +++++++++--------- lib/codeql.test.js.map | 2 +- lib/init-action.js | 3 +- lib/init-action.js.map | 2 +- lib/init.js | 4 +- lib/init.js.map | 2 +- lib/setup-codeql.js | 190 +++++++++++++++++++++++------- lib/setup-codeql.js.map | 2 +- src/codeql.test.ts | 184 +++++++++++++---------------- src/codeql.ts | 40 ++----- src/init-action.ts | 4 + src/init.ts | 4 +- src/setup-codeql.ts | 251 +++++++++++++++++++++++++++++++++------- 15 files changed, 519 insertions(+), 312 deletions(-) diff --git a/lib/codeql.js b/lib/codeql.js index 27544e9e4..aee30c3e1 100644 --- a/lib/codeql.js +++ b/lib/codeql.js @@ -23,16 +23,14 @@ exports.getExtraOptions = exports.getCodeQLForCmd = exports.getCodeQLForTesting const fs = __importStar(require("fs")); const path = __importStar(require("path")); const toolrunner = __importStar(require("@actions/exec/lib/toolrunner")); -const toolcache = __importStar(require("@actions/tool-cache")); const yaml = __importStar(require("js-yaml")); const actions_util_1 = require("./actions-util"); const error_matcher_1 = require("./error-matcher"); const languages_1 = require("./languages"); -const setup_codeql_1 = require("./setup-codeql"); +const setupCodeql = __importStar(require("./setup-codeql")); const toolrunner_error_catcher_1 = require("./toolrunner-error-catcher"); const trap_caching_1 = require("./trap-caching"); const util = __importStar(require("./util")); -const util_1 = require("./util"); class CommandInvocationError extends Error { constructor(cmd, args, exitCode, error, output) { super(`Failure invoking ${cmd} with arguments ${args}.\n @@ -100,29 +98,15 @@ exports.CODEQL_VERSION_BETTER_RESOLVE_LANGUAGES = "2.10.3"; * @param tempDir * @param variant * @param bypassToolcache + * @param defaultCliVersion * @param logger * @param checkVersion Whether to check that CodeQL CLI meets the minimum * version requirement. Must be set to true outside tests. * @returns a { CodeQL, toolsVersion } object. */ -async function setupCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolcache, logger, checkVersion) { +async function setupCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolcache, defaultCliVersion, logger, checkVersion) { try { - const source = await (0, setup_codeql_1.getCodeQLSource)(toolsInput, bypassToolcache, apiDetails, variant, logger); - let codeqlFolder; - switch (source.sourceType) { - case "local": - codeqlFolder = await toolcache.extractTar(source.codeqlTarPath); - break; - case "toolcache": - codeqlFolder = source.codeqlFolder; - logger.debug(`CodeQL found in cache ${codeqlFolder}`); - break; - case "download": - codeqlFolder = await (0, setup_codeql_1.downloadCodeQL)(source.codeqlURL, source.semanticVersion, apiDetails, tempDir, logger); - break; - default: - (0, util_1.assertNever)(source); - } + const { codeqlFolder, toolsVersion } = await setupCodeql.setupCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolcache, defaultCliVersion, logger); let codeqlCmd = path.join(codeqlFolder, "codeql", "codeql"); if (process.platform === "win32") { codeqlCmd += ".exe"; @@ -131,7 +115,7 @@ async function setupCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolc throw new Error(`Unsupported platform: ${process.platform}`); } cachedCodeQL = await getCodeQLForCmd(codeqlCmd, checkVersion); - return { codeql: cachedCodeQL, toolsVersion: source.toolsVersion }; + return { codeql: cachedCodeQL, toolsVersion }; } catch (e) { logger.error(e instanceof Error ? e : new Error(String(e))); diff --git a/lib/codeql.js.map b/lib/codeql.js.map index d82b29096..d0781bbe2 100644 --- a/lib/codeql.js.map +++ b/lib/codeql.js.map @@ -1 +1 @@ -{"version":3,"file":"codeql.js","sourceRoot":"","sources":["../src/codeql.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,yEAA2D;AAC3D,+DAAiD;AACjD,8CAAgC;AAEhC,iDAAkD;AAGlD,mDAAgD;AAEhD,2CAAyD;AAEzD,iDAAiE;AACjE,yEAAoE;AACpE,iDAGwB;AACxB,6CAA+B;AAC/B,iCAAqC;AAuBrC,MAAa,sBAAuB,SAAQ,KAAK;IAC/C,YACE,GAAW,EACX,IAAc,EACd,QAAgB,EAChB,KAAa,EACN,MAAc;QAErB,KAAK,CACH,oBAAoB,GAAG,mBAAmB,IAAI;kBAClC,QAAQ;QAClB,KAAK,EAAE,CACV,CAAC;QANK,WAAM,GAAN,MAAM,CAAQ;IAOvB,CAAC;CACF;AAdD,wDAcC;AAsKD;;;GAGG;AACH,IAAI,YAAY,GAAuB,SAAS,CAAC;AAEjD;;;;;;;GAOG;AACH,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAEvC;;;;GAIG;AACH,MAAM,gCAAgC,GAAG,OAAO,CAAC;AACjD,MAAM,gCAAgC,GAAG,QAAQ,CAAC;AAClD,MAAM,2CAA2C,GAAG,QAAQ,CAAC;AAChD,QAAA,iCAAiC,GAAG,QAAQ,CAAC;AAC1D,MAAM,wCAAwC,GAAG,QAAQ,CAAC;AAE1D;;;;;;;;GAQG;AACU,QAAA,0BAA0B,GAAG,OAAO,CAAC;AAElD;;;GAGG;AACU,QAAA,iCAAiC,GAAG,OAAO,CAAC;AAEzD;;;;GAIG;AACU,QAAA,yCAAyC,GAAG,OAAO,CAAC;AAEjE;;;GAGG;AACU,QAAA,uCAAuC,GAAG,QAAQ,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,WAAW,CAC/B,UAA8B,EAC9B,UAAgC,EAChC,OAAe,EACf,OAA2B,EAC3B,eAAwB,EACxB,MAAc,EACd,YAAqB;IAErB,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAe,EAClC,UAAU,EACV,eAAe,EACf,UAAU,EACV,OAAO,EACP,MAAM,CACP,CAAC;QAEF,IAAI,YAAoB,CAAC;QAEzB,QAAQ,MAAM,CAAC,UAAU,EAAE;YACzB,KAAK,OAAO;gBACV,YAAY,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBAChE,MAAM;YACR,KAAK,WAAW;gBACd,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,yBAAyB,YAAY,EAAE,CAAC,CAAC;gBACtD,MAAM;YACR,KAAK,UAAU;gBACb,YAAY,GAAG,MAAM,IAAA,6BAAc,EACjC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,UAAU,EACV,OAAO,EACP,MAAM,CACP,CAAC;gBACF,MAAM;YACR;gBACE,IAAA,kBAAW,EAAC,MAAM,CAAC,CAAC;SACvB;QAED,IAAI,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5D,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;YAChC,SAAS,IAAI,MAAM,CAAC;SACrB;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxE,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC9D;QAED,YAAY,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAC9D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC;KACpE;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,CAAC,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;KAC9D;AACH,CAAC;AAtDD,kCAsDC;AAED;;GAEG;AACI,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9B,YAAY,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;KACjD;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AALD,8BAKC;AAED,SAAS,eAAe,CACtB,aAA8B,EAC9B,UAAkB,EAClB,qBAAyB;IAEzB,IAAI,OAAO,aAAa,CAAC,UAAU,CAAC,KAAK,UAAU,EAAE;QACnD,IAAI,qBAAqB,KAAK,SAAS,EAAE;YACvC,OAAO,qBAAqB,CAAC;SAC9B;QACD,MAAM,WAAW,GAAG,GAAG,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,+BAA+B,CAAC,CAAC;QACvE,CAAC,CAAC;QACF,OAAO,WAAkB,CAAC;KAC3B;IACD,OAAO,aAAa,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,aAA8B;IACtD,YAAY,GAAG;QACb,OAAO,EAAE,eAAe,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC;QAC3E,UAAU,EAAE,eAAe,CACzB,aAAa,EACb,YAAY,EACZ,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACjD;QACD,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC;QAC5D,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC;QAC5D,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC;QAC5D,mBAAmB,EAAE,eAAe,CAAC,aAAa,EAAE,qBAAqB,CAAC;QAC1E,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC;QAC5D,sBAAsB,EAAE,eAAe,CACrC,aAAa,EACb,wBAAwB,CACzB;QACD,gBAAgB,EAAE,eAAe,CAAC,aAAa,EAAE,kBAAkB,CAAC;QACpE,gBAAgB,EAAE,eAAe,CAAC,aAAa,EAAE,kBAAkB,CAAC;QACpE,sBAAsB,EAAE,eAAe,CACrC,aAAa,EACb,wBAAwB,CACzB;QACD,cAAc,EAAE,eAAe,CAAC,aAAa,EAAE,gBAAgB,CAAC;QAChE,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC;QAC5D,eAAe,EAAE,eAAe,CAAC,aAAa,EAAE,iBAAiB,CAAC;QAClE,cAAc,EAAE,eAAe,CAAC,aAAa,EAAE,gBAAgB,CAAC;QAChE,kBAAkB,EAAE,eAAe,CAAC,aAAa,EAAE,oBAAoB,CAAC;QACxE,wBAAwB,EAAE,eAAe,CACvC,aAAa,EACb,0BAA0B,CAC3B;QACD,qBAAqB,EAAE,eAAe,CACpC,aAAa,EACb,uBAAuB,CACxB;QACD,iBAAiB,EAAE,eAAe,CAAC,aAAa,EAAE,mBAAmB,CAAC;KACvE,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC;AAvCD,8BAuCC;AAED;;;;;GAKG;AACH,SAAgB,eAAe;IAC7B,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9B,yEAAyE;QACzE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAND,0CAMC;AAED;;;;GAIG;AACI,KAAK,UAAU,mBAAmB,CACvC,GAAG,GAAG,oBAAoB;IAE1B,OAAO,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC;AAJD,kDAIC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,YAAqB;IAErB,MAAM,MAAM,GAAW;QACrB,OAAO;YACL,OAAO,GAAG,CAAC;QACb,CAAC;QACD,KAAK,CAAC,UAAU;YACd,IAAI,MAAM,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC3C,IAAI,MAAM,KAAK,SAAS,EAAE;gBACxB,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;aACjC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,KAAK,CAAC,YAAY;YAChB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,YAAoB;YACrC,0CAA0C;YAC1C,+EAA+E;YAC/E,4EAA4E;YAC5E,6DAA6D;YAC7D,qEAAqE;YACrE,wEAAwE;YACxE,yDAAyD;YACzD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,YAAY,EACZ,SAAS,EACT,eAAe,CAChB,CAAC;YAEF,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,EAAE,CAAC,aAAa,CACd,WAAW,EACX;;;;;;;;;;;yEAWiE,CAClE,CAAC;YAEF,+EAA+E;YAC/E,4EAA4E;YAC5E,6DAA6D;YAC7D,qEAAqE;YACrE,wEAAwE;YACxE,yDAAyD;YACzD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAEjE,IAAI;gBACF,MAAM,OAAO,CAAC,GAAG,EAAE;oBACjB,UAAU;oBACV,eAAe;oBACf,YAAY;oBACZ,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;oBACxD,OAAO,CAAC,QAAQ;oBAChB,WAAW;oBACX,OAAO;iBACR,CAAC,CAAC;aACJ;YAAC,OAAO,CAAC,EAAE;gBACV,IACE,CAAC,YAAY,sBAAsB;oBACnC,CAAC,CAAC,MAAM,CAAC,QAAQ,CACf,6DAA6D,CAC9D;oBACD,OAAO,CAAC,QAAQ,KAAK,OAAO;oBAC5B,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAC7B,IAAI,EACJ,yCAAiC,CAClC,CAAC,EACF;oBACA,MAAM,IAAI,IAAI,CAAC,SAAS,CACtB,2EAA2E;wBACzE,wCAAwC,yCAAiC,MAAM;wBAC/E,6EAA6E;wBAC7E,iFAAiF;wBACjF,2CAA2C,CAC9C,CAAC;iBACH;qBAAM;oBACL,MAAM,CAAC,CAAC;iBACT;aACF;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,CAAC,YAAY,CAChB,YAAoB,EACpB,QAAkB,EAClB,UAAkB;YAElB,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,UAAU;gBACV,MAAM;gBACN,YAAY;gBACZ,cAAc,QAAQ,EAAE;gBACxB,iBAAiB,UAAU,EAAE;gBAC7B,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aAChD,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,mBAAmB,CACvB,MAAc,EACd,UAAkB,EAClB,WAA+B,EAC/B,iBAAoC;YAEpC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CACpC,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAc,QAAQ,EAAE,CACvC,CAAC;YACF,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,4BAAgB,EAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClE,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAClC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAA,gDAAiC,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACrE,SAAS,CAAC,IAAI,CAAC,wBAAwB,WAAW,EAAE,CAAC,CAAC;gBACtD;gBACE,0EAA0E;gBAC1E,0EAA0E;gBAC1E,uDAAuD;gBACvD,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAC5B,IAAI,EACJ,gCAAgC,CACjC,CAAC;oBACF,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAQ,CAAC,EAAE,CAAC;oBACtC,IAAA,4BAAgB,EAAC,oBAAQ,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,QAAQ,KAAK,OAAO;oBAC5B,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAC7B,IAAI,EACJ,2CAA2C,CAC5C,CAAC,EACF;oBACA,SAAS,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;iBACjD;aACF;YAED,uFAAuF;YACvF,MAAM,cAAc,GAAG,MAAM,0BAA0B,CACrD,MAAM,EACN,MAAM,EACN,iBAAiB,CAClB,CAAC;YACF,yFAAyF;YACzF,IAAI,uBAA2C,CAAC;YAChD,IAAI,cAAc,EAAE;gBAClB,SAAS,CAAC,IAAI,CAAC,yBAAyB,cAAc,EAAE,CAAC,CAAC;gBAC1D,uBAAuB,GAAG,IAAA,+BAAgB,EAAC,2BAA2B,CAAC,CAAC;gBACxE,IAAI,uBAAuB,EAAE;oBAC3B,SAAS,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;iBACrD;aACF;YAED,MAAM,OAAO,CACX,GAAG,EACH;gBACE,UAAU;gBACV,MAAM;gBACN,cAAc;gBACd,MAAM,CAAC,UAAU;gBACjB,iBAAiB,UAAU,EAAE;gBAC7B,GAAG,SAAS;gBACZ,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aAChD,EACD,EAAE,KAAK,EAAE,uBAAuB,EAAE,CACnC,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,QAAkB;YACnC,MAAM,OAAO,GACX,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC;YAClE,uEAAuE;YACvE,MAAM,uBAAuB,GAC3B,QAAQ,KAAK,oBAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EACjB,uBAAuB,EACvB,QAAQ,EACR,OAAO,EACP,OAAO,CACR,CAAC;YAEF,+DAA+D;YAC/D,0FAA0F;YAC1F,qDAAqD;YACrD,8EAA8E;YAC9E,gHAAgH;YAChH,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG;gBACjC,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC/B,wBAAwB;gBACxB,+BAA+B;aAChC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEZ,wEAAwE;YACxE,8CAA8C;YAC9C,wEAAwE;YACxE,+EAA+E;YAC/E,kFAAkF;YAClF,mDAAmD;YAEnD,iDAAiD;YACjD,6EAA6E;YAC7E,uEAAuE;YACvE,oEAAoE;YACpE,qEAAqE;YACrE,4DAA4D;YAC5D,gDAAgD;YAChD,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,sBAAsB,CAAC,MAAc,EAAE,QAAkB;YAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAClE,yBAAyB;YACzB,IAAI,aAAa,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC,UAAU,CAC7B,GAAG,EACH;gBACE,SAAS;gBACT,WAAW;gBACX,eAAe;gBACf,cAAc,QAAQ,EAAE;gBACxB,GAAG,sBAAsB,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;aACpD,EACD;gBACE,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE;oBACT,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;wBACf,aAAa,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnC,CAAC;oBACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;wBACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;iBACF;aACF,CACF,CAAC,IAAI,EAAE,CAAC;YAET,oBAAoB;YACpB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;YAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAC/B,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EACzB,OAAO,EACP,YAAY,GAAG,EAAE,CAClB,CAAC;YACF,oBAAoB;YACpB,MAAM,IAAA,iDAAsB,EAC1B,GAAG,EACH;gBACE,UAAU;gBACV,eAAe;gBACf,GAAG,CAAC,MAAM,IAAA,uDAAwC,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACrE,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;gBACxD,YAAY;gBACZ,IAAI;gBACJ,YAAY;aACb,EACD,6BAAa,CACd,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,gBAAgB,CACpB,YAAoB,EACpB,WAAmB,EACnB,UAAkB;YAElB,MAAM,IAAI,GAAG;gBACX,UAAU;gBACV,UAAU;gBACV,oBAAoB;gBACpB,WAAW;gBACX,UAAU;gBACV,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;gBACnD,YAAY;aACb,CAAC;YACF,MAAM,IAAA,iDAAsB,EAAC,GAAG,EAAE,IAAI,EAAE,6BAAa,CAAC,CAAC;QACzD,CAAC;QACD,KAAK,CAAC,gBAAgB;YACpB,MAAM,UAAU,GAAG;gBACjB,SAAS;gBACT,WAAW;gBACX,eAAe;gBACf,GAAG,sBAAsB,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;aACpD,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE9C,IAAI;gBACF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC3B;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,IAAI,KAAK,CACb,oDAAoD,CAAC,EAAE,CACxD,CAAC;aACH;QACH,CAAC;QACD,KAAK,CAAC,sBAAsB;YAC1B,MAAM,UAAU,GAAG;gBACjB,SAAS;gBACT,WAAW;gBACX,qBAAqB;gBACrB,iCAAiC;gBACjC,GAAG,sBAAsB,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;aACpD,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE9C,IAAI;gBACF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC3B;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,IAAI,KAAK,CACb,6EAA6E,CAAC,EAAE,CACjF,CAAC;aACH;QACH,CAAC;QACD,KAAK,CAAC,cAAc,CAClB,OAAiB,EACjB,eAAmC;YAEnC,MAAM,UAAU,GAAG;gBACjB,SAAS;gBACT,SAAS;gBACT,GAAG,OAAO;gBACV,qBAAqB;gBACrB,GAAG,sBAAsB,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aAClD,CAAC;YACF,IAAI,eAAe,KAAK,SAAS,EAAE;gBACjC,UAAU,CAAC,IAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;aACxD;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE9C,IAAI;gBACF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC3B;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,EAAE,CAAC,CAAC;aACxE;QACH,CAAC;QACD,KAAK,CAAC,kBAAkB,CACtB,YAAoB,EACpB,eAAmC,EACnC,cAAkC,EAClC,UAAkB,EAClB,WAAmB;YAEnB,MAAM,UAAU,GAAG;gBACjB,UAAU;gBACV,aAAa;gBACb,UAAU;gBACV,WAAW;gBACX,YAAY;gBACZ,sBAAsB;gBACtB,IAAI;gBACJ,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;aACvD,CAAC;YACF,IAAI,eAAe,KAAK,SAAS,EAAE;gBACjC,UAAU,CAAC,IAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;aACxD;YACD,IAAI,cAAc,EAAE;gBAClB,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aACjC;YACD,MAAM,IAAA,iDAAsB,EAAC,GAAG,EAAE,UAAU,EAAE,6BAAa,CAAC,CAAC;QAC/D,CAAC;QACD,KAAK,CAAC,wBAAwB,CAC5B,YAAoB,EACpB,eAAqC,EACrC,SAAiB,EACjB,eAAuB,EACvB,WAAmB,EACnB,aAAqB,EACrB,mBAAuC;YAEvC,MAAM,UAAU,GAAG;gBACjB,UAAU;gBACV,mBAAmB;gBACnB,WAAW;gBACX,uBAAuB;gBACvB,aAAa;gBACb,YAAY,SAAS,EAAE;gBACvB,eAAe;gBACf,6BAA6B;gBAC7B,yBAAyB;gBACzB,6BAA6B;gBAC7B,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;aAC7D,CAAC;YACF,IAAI,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,gCAAgC,CAAC;gBACvE,UAAU,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC5C,IAAI,mBAAmB,KAAK,SAAS,EAAE;gBACrC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;aAC1D;YACD,IACE,MAAM,IAAI,CAAC,kBAAkB,CAC3B,IAAI,EACJ,wCAAwC,CACzC,EACD;gBACA,UAAU,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;aACnD;YACD,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9B,IAAI,eAAe,EAAE;gBACnB,UAAU,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;aACrC;YACD,oDAAoD;YACpD,MAAM,WAAW,GAAG,MAAM,IAAA,iDAAsB,EAC9C,GAAG,EACH,UAAU,EACV,6BAAa,CACd,CAAC;YACF,OAAO,WAAW,CAAC,MAAM,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,qBAAqB,CAAC,YAAoB;YAC9C,MAAM,UAAU,GAAG;gBACjB,UAAU;gBACV,gBAAgB;gBAChB,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;gBACzD,YAAY;aACb,CAAC;YACF,OAAO,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxC,CAAC;QAED;;;;;;;;;;;;WAYG;QACH,KAAK,CAAC,YAAY,CAChB,KAAe,EACf,YAAgC;YAEhC,MAAM,WAAW,GAAG,YAAY;gBAC9B,CAAC,CAAC,CAAC,mBAAmB,YAAY,EAAE,CAAC;gBACrC,CAAC,CAAE,EAAe,CAAC;YAErB,MAAM,UAAU,GAAG;gBACjB,MAAM;gBACN,UAAU;gBACV,GAAG,WAAW;gBACd,eAAe;gBACf,uBAAuB;gBACvB,GAAG,sBAAsB,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC/C,GAAG,KAAK;aACT,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE9C,IAAI;gBACF,MAAM,YAAY,GAAuB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC5D,IACE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;oBACjC,8EAA8E;oBAC9E,oEAAoE;oBACpE,mEAAmE;oBACnE,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAC1D;oBACA,OAAO,YAAY,CAAC;iBACrB;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;iBACzD;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,IAAI,KAAK,CACb,4DAA4D,MAAM,KAAK,CAAC,EAAE,CAC3E,CAAC;aACH;QACH,CAAC;QACD,KAAK,CAAC,eAAe,CACnB,YAAoB,EACpB,YAAoB;YAEpB,MAAM,UAAU,GAAG;gBACjB,UAAU;gBACV,SAAS;gBACT,YAAY;gBACZ,UAAU,YAAY,EAAE;gBACxB,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;aACnD,CAAC;YACF,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACjC,CAAC;QACD,KAAK,CAAC,cAAc,CAClB,YAAoB,EACpB,cAAsB,EACtB,YAAoB;YAEpB,MAAM,IAAI,GAAG;gBACX,UAAU;gBACV,QAAQ;gBACR,YAAY;gBACZ,YAAY,cAAc,EAAE;gBAC5B,UAAU,YAAY,EAAE;gBACxB,GAAG,sBAAsB,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;aAClD,CAAC;YACF,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACpD,CAAC;QACD,KAAK,CAAC,iBAAiB,CACrB,SAAiB,EACjB,mBAAuC;YAEvC,MAAM,IAAI,GAAG;gBACX,aAAa;gBACb,QAAQ;gBACR,uBAAuB;gBACvB,YAAY,SAAS,EAAE;gBACvB,GAAG,sBAAsB,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;aACrD,CAAC;YACF,IAAI,mBAAmB,KAAK,SAAS,EAAE;gBACrC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;aACpD;YACD,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACpD,CAAC;KACF,CAAC;IACF,wEAAwE;IACxE,4EAA4E;IAC5E,sEAAsE;IACtE,wEAAwE;IACxE,wEAAwE;IACxE,wEAAwE;IACxE,6EAA6E;IAC7E,4BAA4B;IAC5B,IACE,YAAY;QACZ,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,EAChE;QACA,MAAM,IAAI,KAAK,CACb,+CAA+C,sBAAsB,oBAAoB,MAAM,MAAM,CAAC,UAAU,EAAE,EAAE,CACrH,CAAC;KACH;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAjhBD,0CAihBC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,KAAe;IAC7C,MAAM,OAAO,GAAiB,IAAI,CAAC,uBAAuB,EAAE,CAAC;IAC7D,OAAO,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,OAAY,EAAE,QAAkB;IACtD,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO,EAAE,CAAC;KACX;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,GAAG,GAAG,0BAA0B,QAAQ,CAAC,IAAI,CACjD,GAAG,CACJ,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,yBAAyB,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;KACtB;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACvB,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC;QACnB,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,SAAS,EAAE;YACvD,MAAM,GAAG,GAAG,yBAAyB,QAAQ,CAAC,IAAI,CAChD,GAAG,CACJ,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;SACtB;QACD,OAAO,GAAG,CAAC,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,eAAe,CAC7B,OAAY,EACZ,KAAe,EACf,QAAkB;IAElB,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,MAAM,QAAQ,GACZ,KAAK,CAAC,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC;QACnC,CAAC,CAAC,eAAe,CACb,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EACnB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,CAAC,CAAC,EACf,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC1B,CAAC;IACR,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAfD,0CAeC;AAED;;;;;;;GAOG;AACH,MAAM,YAAY,GAAG,KAAM,CAAC;AAE5B,KAAK,UAAU,OAAO,CACpB,GAAW,EACX,OAAiB,EAAE,EACnB,OAA2B,EAAE;IAE7B,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,MAAM,QAAQ,GAAG,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE;QAC1D,SAAS,EAAE;YACT,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvB,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvB,IAAI,cAAc,GAAG,CAAC,CAAC;gBACvB,0EAA0E;gBAC1E,IAAI,IAAI,CAAC,MAAM,GAAG,YAAY,GAAG,CAAC,EAAE;oBAClC,qDAAqD;oBACrD,cAAc,GAAG,IAAI,CAAC,MAAM,GAAG,YAAY,GAAG,CAAC,CAAC;iBACjD;gBACD,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YACjD,CAAC;SACF;QACD,gBAAgB,EAAE,IAAI;QACtB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChE,CAAC,CAAC,IAAI,EAAE,CAAC;IACV,IAAI,QAAQ,KAAK,CAAC;QAChB,MAAM,IAAI,sBAAsB,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,0BAA0B,CACvC,MAAc,EACd,MAAc,EACd,iBAAoC;;IAEpC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,EAAE;QACvE,OAAO;KACR;IACD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IACxE,kCAAkC;IAClC,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAE9D,oCAAoC;IACpC,IAAI,MAAM,CAAC,sBAAsB,CAAC,YAAY,EAAE;QAC9C,IAAI,MAAM,CAAC,sBAAsB,CAAC,oBAAoB,EAAE;YACtD,eAAe,CAAC,OAAO,GAAG,CAAC,eAAe,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9D,MAAM,CAAC,sBAAsB,CAAC,YAAY,CAC3C,CAAC;SACH;aAAM;YACL,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC,sBAAsB,CAAC,YAAY,CAAC;SACtE;KACF;IACD,IAAI,CAAA,MAAA,eAAe,CAAC,OAAO,0CAAE,MAAM,MAAK,CAAC,EAAE;QACzC,OAAO,eAAe,CAAC,OAAO,CAAC;KAChC;IAED,kCAAkC;IAClC,IAAI,MAAM,CAAC,sBAAsB,CAAC,UAAU,EAAE;QAC5C,IAAI,MAAM,CAAC,sBAAsB,CAAC,kBAAkB,EAAE;YACpD,yEAAyE;YACzE,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,eAAe,CAAC,KAAK,GAAG,CAAC,eAAe,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAC1D,MAAM,CAAC,sBAAsB,CAAC,UAAU,CACzC,CAAC;aACH;iBAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;gBACjC,eAAe,CAAC,KAAK,GAAG,MAAM,CAAC,sBAAsB,CAAC,UAAU,CAAC;aAClE;iBAAM;gBACL,qDAAqD;gBACrD,iFAAiF;gBACjF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,KAAK,CACrD,QAAQ,CACT,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;aACpD;SACF;aAAM;YACL,eAAe,CAAC,KAAK,GAAG,MAAM,CAAC,sBAAsB,CAAC,UAAU,CAAC;SAClE;KACF;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE;QACzE,OAAO,eAAe,CAAC,KAAK,CAAC;KAC9B;IACD,IAAI,MAAM,CAAC,sBAAsB,CAAC,iBAAiB,EAAE;QACnD,uEAAuE;QACvE,0DAA0D;QAC1D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAEhE,IAAI,eAAe,CAAC,KAAK,KAAK,SAAS;YAAE,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC;QACpE,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;YACxC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACxC;aAAM;YACL,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU;gBACnC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;YAC3C,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACtD;KACF;IAED,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAC7D,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,SAAS,WAAW,CAAC,GAAQ;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AACzC,CAAC"} \ No newline at end of file +{"version":3,"file":"codeql.js","sourceRoot":"","sources":["../src/codeql.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/codeql.test.js b/lib/codeql.test.js index 65e69b4e4..9d14819d7 100644 --- a/lib/codeql.test.js +++ b/lib/codeql.test.js @@ -53,6 +53,10 @@ const sampleGHAEApiDetails = { url: "https://example.githubenterprise.com", apiURL: "https://example.githubenterprise.com/api/v3", }; +const SAMPLE_DEFAULT_CLI_VERSION = { + cliVersion: "2.0.0", + variant: util.GitHubVariant.DOTCOM, +}; let stubConfig; ava_1.default.beforeEach(() => { (0, util_1.initializeEnvironment)("1.2.3"); @@ -105,7 +109,7 @@ async function mockDownloadApi({ apiDetails = sampleApiDetails, isPinned, tagNam } async function installIntoToolcache({ apiDetails = sampleApiDetails, isPinned, tagName, tmpDir, }) { const url = await mockDownloadApi({ apiDetails, isPinned, tagName }); - await codeql.setupCodeQL(url, apiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); + await codeql.setupCodeQL(url, apiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, SAMPLE_DEFAULT_CLI_VERSION, (0, logging_1.getRunnerLogger)(true), false); } (0, ava_1.default)("downloads and caches explicitly requested bundles that aren't in the toolcache", async (t) => { await util.withTmpDir(async (tmpDir) => { @@ -117,9 +121,9 @@ async function installIntoToolcache({ apiDetails = sampleApiDetails, isPinned, t tagName: `codeql-bundle-${version}`, isPinned: false, }); - const result = await codeql.setupCodeQL(url, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); + const result = await codeql.setupCodeQL(url, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, SAMPLE_DEFAULT_CLI_VERSION, (0, logging_1.getRunnerLogger)(true), false); t.assert(toolcache.find("CodeQL", `0.0.0-${version}`)); - t.is(result.toolsVersion, version); + t.is(result.toolsVersion, `0.0.0-${version}`); } t.is(toolcache.findAllVersions("CodeQL").length, 2); }); @@ -135,42 +139,52 @@ async function installIntoToolcache({ apiDetails = sampleApiDetails, isPinned, t const url = await mockDownloadApi({ tagName: "codeql-bundle-20200610", }); - const result = await codeql.setupCodeQL(url, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); + const result = await codeql.setupCodeQL(url, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, SAMPLE_DEFAULT_CLI_VERSION, (0, logging_1.getRunnerLogger)(true), false); t.assert(toolcache.find("CodeQL", "0.0.0-20200610")); - t.deepEqual(result.toolsVersion, "20200610"); + t.deepEqual(result.toolsVersion, "0.0.0-20200610"); }); }); -(0, ava_1.default)("uses a cached bundle when no tools input is given", async (t) => { - await util.withTmpDir(async (tmpDir) => { - (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); - await installIntoToolcache({ - tagName: "codeql-bundle-20200601", - isPinned: true, - tmpDir, +for (const variant of [util.GitHubVariant.GHAE, util.GitHubVariant.GHES]) { + (0, ava_1.default)(`uses a cached bundle when no tools input is given on ${util.GitHubVariant[variant]}`, async (t) => { + await util.withTmpDir(async (tmpDir) => { + (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); + await installIntoToolcache({ + tagName: "codeql-bundle-20200601", + isPinned: true, + tmpDir, + }); + const result = await codeql.setupCodeQL(undefined, sampleApiDetails, tmpDir, variant, false, { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant, + }, (0, logging_1.getRunnerLogger)(true), false); + t.deepEqual(result.toolsVersion, "0.0.0-20200601"); + const cachedVersions = toolcache.findAllVersions("CodeQL"); + t.is(cachedVersions.length, 1); }); - const result = await codeql.setupCodeQL(undefined, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); - t.deepEqual(result.toolsVersion, "0.0.0-20200601"); - const cachedVersions = toolcache.findAllVersions("CodeQL"); - t.is(cachedVersions.length, 1); }); -}); -(0, ava_1.default)("downloads bundle if only an unpinned version is cached", async (t) => { - await util.withTmpDir(async (tmpDir) => { - (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); - await installIntoToolcache({ - tagName: "codeql-bundle-20200601", - isPinned: false, - tmpDir, - }); - await mockDownloadApi({ - tagName: defaults.bundleVersion, + (0, ava_1.default)(`downloads bundle if only an unpinned version is cached on ${util.GitHubVariant[variant]}`, async (t) => { + await util.withTmpDir(async (tmpDir) => { + (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); + await installIntoToolcache({ + tagName: "codeql-bundle-20200601", + isPinned: false, + tmpDir, + }); + await mockDownloadApi({ + tagName: defaults.bundleVersion, + }); + const result = await codeql.setupCodeQL(undefined, sampleApiDetails, tmpDir, variant, false, { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant, + }, (0, logging_1.getRunnerLogger)(true), false); + t.deepEqual(result.toolsVersion, defaults.cliVersion); + const cachedVersions = toolcache.findAllVersions("CodeQL"); + t.is(cachedVersions.length, 2); }); - const result = await codeql.setupCodeQL(undefined, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); - t.deepEqual(result.toolsVersion, defaults.bundleVersion.replace("codeql-bundle-", "")); - const cachedVersions = toolcache.findAllVersions("CodeQL"); - t.is(cachedVersions.length, 2); }); -}); +} (0, ava_1.default)('downloads bundle if "latest" tools specified but not cached', async (t) => { await util.withTmpDir(async (tmpDir) => { (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); @@ -182,39 +196,12 @@ async function installIntoToolcache({ apiDetails = sampleApiDetails, isPinned, t await mockDownloadApi({ tagName: defaults.bundleVersion, }); - const result = await codeql.setupCodeQL("latest", sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); - t.deepEqual(result.toolsVersion, defaults.bundleVersion.replace("codeql-bundle-", "")); + const result = await codeql.setupCodeQL("latest", sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, SAMPLE_DEFAULT_CLI_VERSION, (0, logging_1.getRunnerLogger)(true), false); + t.deepEqual(result.toolsVersion, defaults.cliVersion); const cachedVersions = toolcache.findAllVersions("CodeQL"); t.is(cachedVersions.length, 2); }); }); -const TOOLCACHE_BYPASS_TEST_CASES = [ - [true, undefined, true], - [false, undefined, false], - [ - true, - "https://github.com/github/codeql-action/releases/download/codeql-bundle-20200601/codeql-bundle.tar.gz", - false, - ], -]; -for (const [isFeatureEnabled, toolsInput, shouldToolcacheBeBypassed,] of TOOLCACHE_BYPASS_TEST_CASES) { - (0, ava_1.default)(`download codeql bundle ${shouldToolcacheBeBypassed ? "bypasses" : "does not bypass"} toolcache when feature ${isFeatureEnabled ? "enabled" : "disabled"} and tools: ${toolsInput} passed`, async (t) => { - await util.withTmpDir(async (tmpDir) => { - (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); - await installIntoToolcache({ - tagName: "codeql-bundle-20200601", - isPinned: true, - tmpDir, - }); - await mockDownloadApi({ - tagName: defaults.bundleVersion, - }); - await codeql.setupCodeQL(toolsInput, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, isFeatureEnabled, (0, logging_1.getRunnerLogger)(true), false); - const cachedVersions = toolcache.findAllVersions("CodeQL"); - t.is(cachedVersions.length, shouldToolcacheBeBypassed ? 2 : 1); - }); - }); -} (0, ava_1.default)("download codeql bundle from github ae endpoint", async (t) => { await util.withTmpDir(async (tmpDir) => { (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); @@ -255,7 +242,11 @@ for (const [isFeatureEnabled, toolsInput, shouldToolcacheBeBypassed,] of TOOLCAC .returns(sampleGHAEApiDetails.apiURL); sinon.stub(actionsUtil, "isRunningLocalAction").returns(false); process.env["GITHUB_ACTION_REPOSITORY"] = "github/codeql-action"; - await codeql.setupCodeQL(undefined, sampleGHAEApiDetails, tmpDir, util.GitHubVariant.GHAE, false, (0, logging_1.getRunnerLogger)(true), false); + await codeql.setupCodeQL(undefined, sampleGHAEApiDetails, tmpDir, util.GitHubVariant.GHAE, false, { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant: util.GitHubVariant.GHAE, + }, (0, logging_1.getRunnerLogger)(true), false); const cachedVersions = toolcache.findAllVersions("CodeQL"); t.is(cachedVersions.length, 1); }); diff --git a/lib/codeql.test.js.map b/lib/codeql.test.js.map index 12ef9c577..6989154a0 100644 --- a/lib/codeql.test.js.map +++ b/lib/codeql.test.js.map @@ -1 +1 @@ -{"version":3,"file":"codeql.test.js","sourceRoot":"","sources":["../src/codeql.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"codeql.test.js","sourceRoot":"","sources":["../src/codeql.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init-action.js b/lib/init-action.js index 9ae520354..d5db040a3 100644 --- a/lib/init-action.js +++ b/lib/init-action.js @@ -95,7 +95,8 @@ async function run() { if (!(await (0, actions_util_1.sendStatusReport)(await (0, actions_util_1.createStatusReportBase)("init", "starting", startedAt, workflowErrors)))) { return; } - const initCodeQLResult = await (0, init_1.initCodeQL)((0, actions_util_1.getOptionalInput)("tools"), apiDetails, (0, actions_util_1.getTemporaryDirectory)(), gitHubVersion.type, await (0, util_1.shouldBypassToolcache)(features, (0, actions_util_1.getOptionalInput)("tools"), (0, actions_util_1.getOptionalInput)("languages"), repositoryNwo, logger), logger); + const defaultCliVersion = await features.getDefaultCliVersion(gitHubVersion.type); + const initCodeQLResult = await (0, init_1.initCodeQL)((0, actions_util_1.getOptionalInput)("tools"), apiDetails, (0, actions_util_1.getTemporaryDirectory)(), gitHubVersion.type, await (0, util_1.shouldBypassToolcache)(features, (0, actions_util_1.getOptionalInput)("tools"), (0, actions_util_1.getOptionalInput)("languages"), repositoryNwo, logger), defaultCliVersion, logger); codeql = initCodeQLResult.codeql; toolsVersion = initCodeQLResult.toolsVersion; await (0, util_1.enrichEnvironment)(codeql); diff --git a/lib/init-action.js.map b/lib/init-action.js.map index ec6d838ff..1274200be 100644 --- a/lib/init-action.js.map +++ b/lib/init-action.js.map @@ -1 +1 @@ -{"version":3,"file":"init-action.js","sourceRoot":"","sources":["../src/init-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"init-action.js","sourceRoot":"","sources":["../src/init-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init.js b/lib/init.js index 9ae7b59dc..1e2d105f5 100644 --- a/lib/init.js +++ b/lib/init.js @@ -30,9 +30,9 @@ const configUtils = __importStar(require("./config-utils")); const tracer_config_1 = require("./tracer-config"); const util = __importStar(require("./util")); const util_1 = require("./util"); -async function initCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolcache, logger) { +async function initCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolcache, defaultCliVersion, logger) { logger.startGroup("Setup CodeQL tools"); - const { codeql, toolsVersion } = await (0, codeql_1.setupCodeQL)(toolsInput, apiDetails, tempDir, variant, bypassToolcache, logger, true); + const { codeql, toolsVersion } = await (0, codeql_1.setupCodeQL)(toolsInput, apiDetails, tempDir, variant, bypassToolcache, defaultCliVersion, logger, true); await codeql.printVersion(); logger.endGroup(); return { codeql, toolsVersion }; diff --git a/lib/init.js.map b/lib/init.js.map index 01427d90e..06b34dd7a 100644 --- a/lib/init.js.map +++ b/lib/init.js.map @@ -1 +1 @@ -{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/setup-codeql.js b/lib/setup-codeql.js index 6d32271e8..9ef6cf0d0 100644 --- a/lib/setup-codeql.js +++ b/lib/setup-codeql.js @@ -22,7 +22,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.convertToSemVer = exports.getCodeQLURLVersion = exports.downloadCodeQL = exports.getCodeQLSource = exports.findCodeQLBundleTagDotcomOnly = exports.getCodeQLActionRepository = exports.CODEQL_DEFAULT_ACTION_REPOSITORY = void 0; +exports.setupCodeQL = exports.getCodeQLURLVersion = exports.downloadCodeQL = exports.getCodeQLSource = exports.convertToSemVer = exports.getBundleTagNameFromUrl = exports.findCodeQLBundleTagDotcomOnly = exports.getCodeQLActionRepository = exports.CODEQL_DEFAULT_ACTION_REPOSITORY = void 0; const fs = __importStar(require("fs")); const path = __importStar(require("path")); const toolcache = __importStar(require("@actions/tool-cache")); @@ -34,7 +34,6 @@ const api = __importStar(require("./api-client")); const defaults = __importStar(require("./defaults.json")); // Referenced from codeql-action-sync-tool! const util = __importStar(require("./util")); const util_1 = require("./util"); -const CODEQL_BUNDLE_VERSION = defaults.bundleVersion; exports.CODEQL_DEFAULT_ACTION_REPOSITORY = "github/codeql-action"; function getCodeQLBundleName() { let platform; @@ -64,6 +63,7 @@ function getCodeQLActionRepository(logger) { } exports.getCodeQLActionRepository = getCodeQLActionRepository; async function findCodeQLBundleTagDotcomOnly(cliVersion, logger) { + logger.debug(`Trying to find the CodeQL bundle release for CLI version ${cliVersion}.`); const apiClient = api.getApiClient(); const codeQLActionRepository = getCodeQLActionRepository(logger); const releases = await apiClient.paginate(apiClient.repos.listReleases, { @@ -91,7 +91,7 @@ async function findCodeQLBundleTagDotcomOnly(cliVersion, logger) { throw new Error(`Failed to find a CodeQL bundle release for CLI version ${cliVersion}.`); } exports.findCodeQLBundleTagDotcomOnly = findCodeQLBundleTagDotcomOnly; -async function getCodeQLBundleDownloadURL(apiDetails, variant, logger) { +async function getCodeQLBundleDownloadURL(tagName, apiDetails, variant, logger) { const codeQLActionRepository = getCodeQLActionRepository(logger); const potentialDownloadSources = [ // This GitHub instance, and this Action. @@ -112,7 +112,7 @@ async function getCodeQLBundleDownloadURL(apiDetails, variant, logger) { const release = await api .getApiClient() .request("GET /enterprise/code-scanning/codeql-bundle/find/{tag}", { - tag: CODEQL_BUNDLE_VERSION, + tag: tagName, }); const assetID = release.data.assets[codeQLBundleName]; if (assetID !== undefined) { @@ -143,7 +143,7 @@ async function getCodeQLBundleDownloadURL(apiDetails, variant, logger) { const release = await api.getApiClient().repos.getReleaseByTag({ owner: repositoryOwner, repo: repositoryName, - tag: CODEQL_BUNDLE_VERSION, + tag: tagName, }); for (const asset of release.data.assets) { if (asset.name === codeQLBundleName) { @@ -156,10 +156,67 @@ async function getCodeQLBundleDownloadURL(apiDetails, variant, logger) { logger.info(`Looked for CodeQL bundle in ${downloadSource[1]} on ${downloadSource[0]} but got error ${e}.`); } } - return `https://github.com/${exports.CODEQL_DEFAULT_ACTION_REPOSITORY}/releases/download/${CODEQL_BUNDLE_VERSION}/${codeQLBundleName}`; + return `https://github.com/${exports.CODEQL_DEFAULT_ACTION_REPOSITORY}/releases/download/${tagName}/${codeQLBundleName}`; } -async function getCodeQLSource(toolsInput, bypassToolcache, apiDetails, variant, logger) { - var _a; +function getBundleTagNameFromUrl(url) { + const match = url.match(/\/codeql-bundle-(.*)\//); + if (match === null || match.length < 2) { + throw new Error(`Malformed tools url: ${url}. Tag name could not be inferred`); + } + return match[1]; +} +exports.getBundleTagNameFromUrl = getBundleTagNameFromUrl; +function convertToSemVer(version, logger) { + if (!semver.valid(version)) { + logger.debug(`Bundle version ${version} is not in SemVer format. Will treat it as pre-release 0.0.0-${version}.`); + version = `0.0.0-${version}`; + } + const s = semver.clean(version); + if (!s) { + throw new Error(`Bundle version ${version} is not in SemVer format.`); + } + return s; +} +exports.convertToSemVer = convertToSemVer; +async function getOrFindBundleTagName(version, logger) { + if (version.variant === util.GitHubVariant.DOTCOM) { + return await findCodeQLBundleTagDotcomOnly(version.cliVersion, logger); + } + else { + return version.tagName; + } +} +/** + * Look for a version of the CodeQL tools in the cache which could override the requested CLI version. + */ +async function findOverridingToolsInCache(requestedCliVersion, logger) { + const candidates = toolcache + .findAllVersions("CodeQL") + .filter(util_1.isGoodVersion) + .map((version) => ({ + folder: toolcache.find("CodeQL", version), + version, + })) + .filter(({ folder }) => fs.existsSync(path.join(folder, "pinned-version"))); + if (candidates.length === 1) { + const candidate = candidates[0]; + logger.debug(`CodeQL tools version ${candidate.version} in toolcache overriding version ${requestedCliVersion}.`); + return { + codeqlFolder: candidate.folder, + sourceType: "toolcache", + toolsVersion: candidate.version, + }; + } + else if (candidates.length === 0) { + logger.debug("Did not find any candidate pinned versions of the CodeQL tools in the toolcache."); + } + else { + logger.debug("Could not use CodeQL tools from the toolcache since more than one candidate pinned " + + "version was found in the toolcache."); + } + return undefined; +} +async function getCodeQLSource(toolsInput, bypassToolcache, defaultCliVersion, apiDetails, variant, logger) { if (toolsInput && toolsInput !== "latest" && !toolsInput.startsWith("http")) { return { codeqlTarPath: toolsInput, @@ -177,46 +234,77 @@ async function getCodeQLSource(toolsInput, bypassToolcache, apiDetails, variant, // allows us to quickly rollback a broken bundle that has made its way // into the toolcache. toolsInput === undefined && bypassToolcache - ? "a specific version of CodeQL was not requested and the bypass toolcache feature is enabled" + ? "a specific version of the CodeQL tools was not requested and the bypass toolcache feature is enabled" : undefined; const forceLatest = forceLatestReason !== undefined; if (forceLatest) { logger.debug(`Forcing the latest version of the CodeQL tools since ${forceLatestReason}.`); } - const codeqlURL = forceLatest ? undefined : toolsInput; - const requestedSemVer = convertToSemVer(getCodeQLURLVersion(codeqlURL || `/${CODEQL_BUNDLE_VERSION}/`), logger); + /** + * The requested version is: + * + * 1. The one in `defaults.json`, if forceLatest is true. + * 2. The version specified by the tools input URL, if one was provided. + * 3. The default CLI version, otherwise. + + * We include a `variant` property to let us verify using the type system that + * `tagName` is only undefined when the variant is Dotcom. This lets us ensure + * that we can always compute `tagName`, either by using the existing tag name + * on enterprise instances, or safely calling `findCodeQLBundleTagDotcomOnly` + * on Dotcom. + */ + const requestedVersion = forceLatest + ? // case 1 + { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant, + } + : toolsInput !== undefined + ? // case 2 + { + cliVersion: convertToSemVer(getBundleTagNameFromUrl(toolsInput), logger), + tagName: getBundleTagNameFromUrl(toolsInput), + url: toolsInput, + variant, + } + : // case 3 + defaultCliVersion; // If we find the specified version, we always use that. - const codeqlFolder = toolcache.find("CodeQL", requestedSemVer); + let codeqlFolder = toolcache.find("CodeQL", requestedVersion.cliVersion); + let tagName = requestedVersion["tagName"]; + if (!codeqlFolder && !requestedVersion.cliVersion.startsWith("0.0.0")) { + // Fall back to accepting a `0.0.0-` version if we didn't find the + // `x.y.z` version. This is to support old versions of the toolcache. + tagName = + tagName || (await getOrFindBundleTagName(requestedVersion, logger)); + const fallbackVersion = convertToSemVer(tagName, logger); + logger.debug(`Computed a fallback toolcache version number of ${fallbackVersion} for CodeQL tools version ${requestedVersion.cliVersion}.`); + codeqlFolder = toolcache.find("CodeQL", fallbackVersion); + } if (codeqlFolder) { return { codeqlFolder, sourceType: "toolcache", - toolsVersion: requestedSemVer, + toolsVersion: requestedVersion.cliVersion, }; } - // If we don't find the requested version, in some cases we may allow a + logger.debug(`Did not find CodeQL tools version ${requestedVersion.cliVersion} in the toolcache.`); + // If we don't find the requested version on Enterprise, we may allow a // different version to save download time if the version hasn't been // specified explicitly (in which case we always honor it). - if (!codeqlURL && !forceLatest) { - const codeqlVersions = toolcache.findAllVersions("CodeQL"); - if (codeqlVersions.length === 1 && (0, util_1.isGoodVersion)(codeqlVersions[0])) { - const tmpCodeqlFolder = toolcache.find("CodeQL", codeqlVersions[0]); - if (fs.existsSync(path.join(tmpCodeqlFolder, "pinned-version"))) { - logger.debug(`CodeQL in cache overriding the default ${CODEQL_BUNDLE_VERSION}`); - return { - codeqlFolder: tmpCodeqlFolder, - sourceType: "toolcache", - toolsVersion: codeqlVersions[0], - }; - } + if (variant !== util.GitHubVariant.DOTCOM && !forceLatest && !toolsInput) { + const result = await findOverridingToolsInCache(requestedVersion.cliVersion, logger); + if (result !== undefined) { + return result; } } return { - codeqlURL: codeqlURL || - (await getCodeQLBundleDownloadURL(apiDetails, variant, logger)), - semanticVersion: requestedSemVer, + codeqlURL: requestedVersion["url"] || + (await getCodeQLBundleDownloadURL(tagName || (await getOrFindBundleTagName(requestedVersion, logger)), apiDetails, variant, logger)), + semanticVersion: requestedVersion.cliVersion, sourceType: "download", - toolsVersion: ((_a = semver.prerelease(requestedSemVer)) === null || _a === void 0 ? void 0 : _a.join(".")) || requestedSemVer, + toolsVersion: requestedVersion.cliVersion, }; } exports.getCodeQLSource = getCodeQLSource; @@ -257,16 +345,38 @@ function getCodeQLURLVersion(url) { return match[1]; } exports.getCodeQLURLVersion = getCodeQLURLVersion; -function convertToSemVer(version, logger) { - if (!semver.valid(version)) { - logger.debug(`Bundle version ${version} is not in SemVer format. Will treat it as pre-release 0.0.0-${version}.`); - version = `0.0.0-${version}`; - } - const s = semver.clean(version); - if (!s) { - throw new Error(`Bundle version ${version} is not in SemVer format.`); +/** + * Set up CodeQL CLI access. + * + * @param toolsInput + * @param apiDetails + * @param tempDir + * @param variant + * @param bypassToolcache + * @param defaultCliVersion + * @param logger + * @param checkVersion Whether to check that CodeQL CLI meets the minimum + * version requirement. Must be set to true outside tests. + * @returns a { CodeQL, toolsVersion } object. + */ +async function setupCodeQL(toolsInput, apiDetails, tempDir, variant, bypassToolcache, defaultCliVersion, logger) { + const source = await getCodeQLSource(toolsInput, bypassToolcache, defaultCliVersion, apiDetails, variant, logger); + let codeqlFolder; + switch (source.sourceType) { + case "local": + codeqlFolder = await toolcache.extractTar(source.codeqlTarPath); + break; + case "toolcache": + codeqlFolder = source.codeqlFolder; + logger.debug(`CodeQL found in cache ${codeqlFolder}`); + break; + case "download": + codeqlFolder = await downloadCodeQL(source.codeqlURL, source.semanticVersion, apiDetails, tempDir, logger); + break; + default: + util.assertNever(source); } - return s; + return { codeqlFolder, toolsVersion: source.toolsVersion }; } -exports.convertToSemVer = convertToSemVer; +exports.setupCodeQL = setupCodeQL; //# sourceMappingURL=setup-codeql.js.map \ No newline at end of file diff --git a/lib/setup-codeql.js.map b/lib/setup-codeql.js.map index ee56c7e8c..df679c3b0 100644 --- a/lib/setup-codeql.js.map +++ b/lib/setup-codeql.js.map @@ -1 +1 @@ -{"version":3,"file":"setup-codeql.js","sourceRoot":"","sources":["../src/setup-codeql.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AAEzB,2CAA6B;AAE7B,+DAAiD;AACjD,sEAAuD;AACvD,+CAAiC;AACjC,+BAAoC;AAEpC,iDAAsD;AACtD,kDAAoC;AACpC,0DAA4C,CAAC,2CAA2C;AAExF,6CAA+B;AAC/B,iCAAuC;AAEvC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,aAAa,CAAC;AACxC,QAAA,gCAAgC,GAAG,sBAAsB,CAAC;AAEvE,SAAS,mBAAmB;IAC1B,IAAI,QAAgB,CAAC;IACrB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QAChC,QAAQ,GAAG,OAAO,CAAC;KACpB;SAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QACvC,QAAQ,GAAG,SAAS,CAAC;KACtB;SAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACxC,QAAQ,GAAG,OAAO,CAAC;KACpB;SAAM;QACL,OAAO,sBAAsB,CAAC;KAC/B;IACD,OAAO,iBAAiB,QAAQ,SAAS,CAAC;AAC5C,CAAC;AAED,SAAgB,yBAAyB,CAAC,MAAc;IACtD,IAAI,IAAA,mCAAoB,GAAE,EAAE;QAC1B,kFAAkF;QAClF,kFAAkF;QAClF,gFAAgF;QAChF,MAAM,CAAC,IAAI,CACT,uFAAuF,CACxF,CAAC;QACF,OAAO,wCAAgC,CAAC;KACzC;IAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;AAC9D,CAAC;AAZD,8DAYC;AAEM,KAAK,UAAU,6BAA6B,CACjD,UAAkB,EAClB,MAAc;IAEd,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IACrC,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,EAAE;QACtE,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,EAAE,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAC3C,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,SAAS,QAAQ,CAAC,MAAM,YAAY,CAAC,CAAC;IAEnD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,MAAM,sBAAsB,GAAG,OAAO,CAAC,MAAM;aAC1C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,0CAAG,CAAC,CAAC,CAAA,EAAA,CAAC;aAC9D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;aAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAW,CAAC,CAAC;QAE3B,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE;YACvC,MAAM,CAAC,KAAK,CACV,oBAAoB,OAAO,CAAC,QAAQ,mCAAmC,CACxE,CAAC;YACF,SAAS;SACV;QACD,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;YACrC,MAAM,CAAC,OAAO,CACZ,oBAAoB,OAAO,CAAC,QAAQ,0CAA0C,CAC/E,CAAC;YACF,SAAS;SACV;QACD,IAAI,sBAAsB,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE;YAC5C,OAAO,OAAO,CAAC,QAAQ,CAAC;SACzB;KACF;IACD,MAAM,IAAI,KAAK,CACb,0DAA0D,UAAU,GAAG,CACxE,CAAC;AACJ,CAAC;AArCD,sEAqCC;AAED,KAAK,UAAU,0BAA0B,CACvC,UAAgC,EAChC,OAA2B,EAC3B,MAAc;IAEd,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,wBAAwB,GAAG;QAC/B,yCAAyC;QACzC,CAAC,UAAU,CAAC,GAAG,EAAE,sBAAsB,CAAC;QACxC,kDAAkD;QAClD,CAAC,UAAU,CAAC,GAAG,EAAE,wCAAgC,CAAC;QAClD,wCAAwC;QACxC,CAAC,IAAI,CAAC,iBAAiB,EAAE,wCAAgC,CAAC;KAC3D,CAAC;IACF,oCAAoC;IACpC,gHAAgH;IAChH,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,MAAM,CAC3D,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,yBAAS,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC,CACF,CAAC;IACF,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,IAAI,OAAO,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;QACvC,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,GAAG;iBACtB,YAAY,EAAE;iBACd,OAAO,CAAC,wDAAwD,EAAE;gBACjE,GAAG,EAAE,qBAAqB;aAC3B,CAAC,CAAC;YACL,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACtD,IAAI,OAAO,KAAK,SAAS,EAAE;gBACzB,MAAM,QAAQ,GAAG,MAAM,GAAG;qBACvB,YAAY,EAAE;qBACd,OAAO,CACN,iEAAiE,EACjE,EAAE,QAAQ,EAAE,OAAO,EAAE,CACtB,CAAC;gBACJ,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;gBACtC,MAAM,CAAC,IAAI,CACT,sDAAsD,WAAW,GAAG,CACrE,CAAC;gBACF,OAAO,WAAW,CAAC;aACpB;iBAAM;gBACL,MAAM,CAAC,IAAI,CACT,oEAAoE,gBAAgB,gCAAgC,IAAI,CAAC,SAAS,CAChI,OAAO,CAAC,IAAI,CAAC,MAAM,CACpB,GAAG,CACL,CAAC;aACH;SACF;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,CAAC,IAAI,CACT,mEAAmE,CAAC,GAAG,CACxE,CAAC;SACH;KACF;IACD,KAAK,MAAM,cAAc,IAAI,qBAAqB,EAAE;QAClD,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,cAAc,CAAC;QAC5C,8GAA8G;QAC9G,IACE,MAAM,KAAK,IAAI,CAAC,iBAAiB;YACjC,UAAU,KAAK,wCAAgC,EAC/C;YACA,MAAM;SACP;QACD,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC;gBAC7D,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,cAAc;gBACpB,GAAG,EAAE,qBAAqB;aAC3B,CAAC,CAAC;YACH,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;gBACvC,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE;oBACnC,MAAM,CAAC,IAAI,CACT,0BAA0B,cAAc,CAAC,CAAC,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,GAAG,GAAG,CAC7F,CAAC;oBACF,OAAO,KAAK,CAAC,GAAG,CAAC;iBAClB;aACF;SACF;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,CAAC,IAAI,CACT,+BAA+B,cAAc,CAAC,CAAC,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAC/F,CAAC;SACH;KACF;IACD,OAAO,sBAAsB,wCAAgC,sBAAsB,qBAAqB,IAAI,gBAAgB,EAAE,CAAC;AACjI,CAAC;AAgBM,KAAK,UAAU,eAAe,CACnC,UAA8B,EAC9B,eAAwB,EACxB,UAAgC,EAChC,OAA2B,EAC3B,MAAc;;IAEd,IAAI,UAAU,IAAI,UAAU,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC3E,OAAO;YACL,aAAa,EAAE,UAAU;YACzB,UAAU,EAAE,OAAO;YACnB,YAAY,EAAE,OAAO;SACtB,CAAC;KACH;IAED,MAAM,iBAAiB;IACrB,wEAAwE;IACxE,2CAA2C;IAC3C,UAAU,KAAK,QAAQ;QACrB,CAAC,CAAC,+BAA+B;QACjC,CAAC,CAAC,wEAAwE;YAC1E,8DAA8D;YAC9D,sEAAsE;YACtE,sBAAsB;YACtB,UAAU,KAAK,SAAS,IAAI,eAAe;gBAC3C,CAAC,CAAC,4FAA4F;gBAC9F,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,WAAW,GAAG,iBAAiB,KAAK,SAAS,CAAC;IACpD,IAAI,WAAW,EAAE;QACf,MAAM,CAAC,KAAK,CACV,wDAAwD,iBAAiB,GAAG,CAC7E,CAAC;KACH;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;IACvD,MAAM,eAAe,GAAG,eAAe,CACrC,mBAAmB,CAAC,SAAS,IAAI,IAAI,qBAAqB,GAAG,CAAC,EAC9D,MAAM,CACP,CAAC;IAEF,wDAAwD;IACxD,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAC/D,IAAI,YAAY,EAAE;QAChB,OAAO;YACL,YAAY;YACZ,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,eAAe;SAC9B,CAAC;KACH;IAED,uEAAuE;IACvE,qEAAqE;IACrE,2DAA2D;IAC3D,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,EAAE;QAC9B,MAAM,cAAc,GAAG,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,IAAA,oBAAa,EAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;YACnE,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,EAAE;gBAC/D,MAAM,CAAC,KAAK,CACV,0CAA0C,qBAAqB,EAAE,CAClE,CAAC;gBACF,OAAO;oBACL,YAAY,EAAE,eAAe;oBAC7B,UAAU,EAAE,WAAW;oBACvB,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;iBAChC,CAAC;aACH;SACF;KACF;IAED,OAAO;QACL,SAAS,EACP,SAAS;YACT,CAAC,MAAM,0BAA0B,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACjE,eAAe,EAAE,eAAe;QAChC,UAAU,EAAE,UAAU;QACtB,YAAY,EACV,CAAA,MAAA,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,0CAAE,IAAI,CAAC,GAAG,CAAC,KAAI,eAAe;KACnE,CAAC;AACJ,CAAC;AA/ED,0CA+EC;AAEM,KAAK,UAAU,cAAc,CAClC,SAAiB,EACjB,eAAuB,EACvB,UAAgC,EAChC,OAAe,EACf,MAAc;IAEd,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,OAAO,GAAwB;QACnC,MAAM,EAAE,0BAA0B;KACnC,CAAC;IACF,wEAAwE;IACxE,0DAA0D;IAC1D,mDAAmD;IACnD,qGAAqG;IACrG,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC7B,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;KACnE;SAAM,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC,EAAE;QACrD,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC3E,OAAO,CAAC,aAAa,GAAG,SAAS,UAAU,CAAC,IAAI,EAAE,CAAC;KACpD;SAAM;QACL,MAAM,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;KAC1E;IACD,MAAM,CAAC,IAAI,CACT,iCAAiC,SAAS,0BAA0B,CACrE,CAAC;IAEF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAA,SAAM,GAAE,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAChC,EAAE,YAAY,EAAE,eAAe,EAAE,EACjC,OAAO,CACR,CAAC;IACF,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,YAAY,CAC7C,SAAS,EACT,IAAI,EACJ,SAAS,EACT,YAAY,CACb,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,6BAA6B,UAAU,YAAY,CAAC,CAAC;IAElE,MAAM,eAAe,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC/D,OAAO,MAAM,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;AAC9E,CAAC;AA3CD,wCA2CC;AAED,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAClD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CACb,wBAAwB,GAAG,iCAAiC,CAC7D,CAAC;KACH;IACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AARD,kDAQC;AAED,SAAgB,eAAe,CAAC,OAAe,EAAE,MAAc;IAC7D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QAC1B,MAAM,CAAC,KAAK,CACV,kBAAkB,OAAO,gEAAgE,OAAO,GAAG,CACpG,CAAC;QACF,OAAO,GAAG,SAAS,OAAO,EAAE,CAAC;KAC9B;IAED,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChC,IAAI,CAAC,CAAC,EAAE;QACN,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,2BAA2B,CAAC,CAAC;KACvE;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAdD,0CAcC"} \ No newline at end of file +{"version":3,"file":"setup-codeql.js","sourceRoot":"","sources":["../src/setup-codeql.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/codeql.test.ts b/src/codeql.test.ts index 735fa9c00..048bee1d5 100644 --- a/src/codeql.test.ts +++ b/src/codeql.test.ts @@ -15,7 +15,11 @@ import { GitHubApiDetails } from "./api-client"; import * as codeql from "./codeql"; import { AugmentationProperties, Config } from "./config-utils"; import * as defaults from "./defaults.json"; // Referenced from codeql-action-sync-tool! -import { Feature, featureConfig } from "./feature-flags"; +import { + CodeQLDefaultVersionInfo, + Feature, + featureConfig, +} from "./feature-flags"; import { Language } from "./languages"; import { getRunnerLogger } from "./logging"; import { setupTests, createFeatures, setupActionsVars } from "./testing-utils"; @@ -36,6 +40,11 @@ const sampleGHAEApiDetails = { apiURL: "https://example.githubenterprise.com/api/v3", }; +const SAMPLE_DEFAULT_CLI_VERSION: CodeQLDefaultVersionInfo = { + cliVersion: "2.0.0", + variant: util.GitHubVariant.DOTCOM, +}; + let stubConfig: Config; test.beforeEach(() => { @@ -125,6 +134,7 @@ async function installIntoToolcache({ tmpDir, util.GitHubVariant.DOTCOM, false, + SAMPLE_DEFAULT_CLI_VERSION, getRunnerLogger(true), false ); @@ -149,11 +159,12 @@ test("downloads and caches explicitly requested bundles that aren't in the toolc tmpDir, util.GitHubVariant.DOTCOM, false, + SAMPLE_DEFAULT_CLI_VERSION, getRunnerLogger(true), false ); t.assert(toolcache.find("CodeQL", `0.0.0-${version}`)); - t.is(result.toolsVersion, version); + t.is(result.toolsVersion, `0.0.0-${version}`); } t.is(toolcache.findAllVersions("CodeQL").length, 2); @@ -179,71 +190,81 @@ test("downloads an explicitly requested bundle even if a different version is ca tmpDir, util.GitHubVariant.DOTCOM, false, + SAMPLE_DEFAULT_CLI_VERSION, getRunnerLogger(true), false ); t.assert(toolcache.find("CodeQL", "0.0.0-20200610")); - t.deepEqual(result.toolsVersion, "20200610"); + t.deepEqual(result.toolsVersion, "0.0.0-20200610"); }); }); -test("uses a cached bundle when no tools input is given", async (t) => { - await util.withTmpDir(async (tmpDir) => { - setupActionsVars(tmpDir, tmpDir); +for (const variant of [util.GitHubVariant.GHAE, util.GitHubVariant.GHES]) { + test(`uses a cached bundle when no tools input is given on ${util.GitHubVariant[variant]}`, async (t) => { + await util.withTmpDir(async (tmpDir) => { + setupActionsVars(tmpDir, tmpDir); - await installIntoToolcache({ - tagName: "codeql-bundle-20200601", - isPinned: true, - tmpDir, - }); + await installIntoToolcache({ + tagName: "codeql-bundle-20200601", + isPinned: true, + tmpDir, + }); - const result = await codeql.setupCodeQL( - undefined, - sampleApiDetails, - tmpDir, - util.GitHubVariant.DOTCOM, - false, - getRunnerLogger(true), - false - ); - t.deepEqual(result.toolsVersion, "0.0.0-20200601"); + const result = await codeql.setupCodeQL( + undefined, + sampleApiDetails, + tmpDir, + variant, + false, + { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant, + }, + getRunnerLogger(true), + false + ); + t.deepEqual(result.toolsVersion, "0.0.0-20200601"); - const cachedVersions = toolcache.findAllVersions("CodeQL"); - t.is(cachedVersions.length, 1); + const cachedVersions = toolcache.findAllVersions("CodeQL"); + t.is(cachedVersions.length, 1); + }); }); -}); -test("downloads bundle if only an unpinned version is cached", async (t) => { - await util.withTmpDir(async (tmpDir) => { - setupActionsVars(tmpDir, tmpDir); + test(`downloads bundle if only an unpinned version is cached on ${util.GitHubVariant[variant]}`, async (t) => { + await util.withTmpDir(async (tmpDir) => { + setupActionsVars(tmpDir, tmpDir); - await installIntoToolcache({ - tagName: "codeql-bundle-20200601", - isPinned: false, - tmpDir, - }); + await installIntoToolcache({ + tagName: "codeql-bundle-20200601", + isPinned: false, + tmpDir, + }); - await mockDownloadApi({ - tagName: defaults.bundleVersion, - }); - const result = await codeql.setupCodeQL( - undefined, - sampleApiDetails, - tmpDir, - util.GitHubVariant.DOTCOM, - false, - getRunnerLogger(true), - false - ); - t.deepEqual( - result.toolsVersion, - defaults.bundleVersion.replace("codeql-bundle-", "") - ); + await mockDownloadApi({ + tagName: defaults.bundleVersion, + }); + const result = await codeql.setupCodeQL( + undefined, + sampleApiDetails, + tmpDir, + variant, + false, + { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant, + }, + getRunnerLogger(true), + false + ); + t.deepEqual(result.toolsVersion, defaults.cliVersion); - const cachedVersions = toolcache.findAllVersions("CodeQL"); - t.is(cachedVersions.length, 2); + const cachedVersions = toolcache.findAllVersions("CodeQL"); + t.is(cachedVersions.length, 2); + }); }); -}); +} test('downloads bundle if "latest" tools specified but not cached', async (t) => { await util.withTmpDir(async (tmpDir) => { @@ -264,69 +285,17 @@ test('downloads bundle if "latest" tools specified but not cached', async (t) => tmpDir, util.GitHubVariant.DOTCOM, false, + SAMPLE_DEFAULT_CLI_VERSION, getRunnerLogger(true), false ); - t.deepEqual( - result.toolsVersion, - defaults.bundleVersion.replace("codeql-bundle-", "") - ); + t.deepEqual(result.toolsVersion, defaults.cliVersion); const cachedVersions = toolcache.findAllVersions("CodeQL"); t.is(cachedVersions.length, 2); }); }); -const TOOLCACHE_BYPASS_TEST_CASES: Array< - [boolean, string | undefined, boolean] -> = [ - [true, undefined, true], - [false, undefined, false], - [ - true, - "https://github.com/github/codeql-action/releases/download/codeql-bundle-20200601/codeql-bundle.tar.gz", - false, - ], -]; - -for (const [ - isFeatureEnabled, - toolsInput, - shouldToolcacheBeBypassed, -] of TOOLCACHE_BYPASS_TEST_CASES) { - test(`download codeql bundle ${ - shouldToolcacheBeBypassed ? "bypasses" : "does not bypass" - } toolcache when feature ${ - isFeatureEnabled ? "enabled" : "disabled" - } and tools: ${toolsInput} passed`, async (t) => { - await util.withTmpDir(async (tmpDir) => { - setupActionsVars(tmpDir, tmpDir); - - await installIntoToolcache({ - tagName: "codeql-bundle-20200601", - isPinned: true, - tmpDir, - }); - - await mockDownloadApi({ - tagName: defaults.bundleVersion, - }); - await codeql.setupCodeQL( - toolsInput, - sampleApiDetails, - tmpDir, - util.GitHubVariant.DOTCOM, - isFeatureEnabled, - getRunnerLogger(true), - false - ); - - const cachedVersions = toolcache.findAllVersions("CodeQL"); - t.is(cachedVersions.length, shouldToolcacheBeBypassed ? 2 : 1); - }); - }); -} - test("download codeql bundle from github ae endpoint", async (t) => { await util.withTmpDir(async (tmpDir) => { setupActionsVars(tmpDir, tmpDir); @@ -391,6 +360,11 @@ test("download codeql bundle from github ae endpoint", async (t) => { tmpDir, util.GitHubVariant.GHAE, false, + { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant: util.GitHubVariant.GHAE, + }, getRunnerLogger(true), false ); diff --git a/src/codeql.ts b/src/codeql.ts index d9b30b253..e1f276017 100644 --- a/src/codeql.ts +++ b/src/codeql.ts @@ -2,24 +2,22 @@ import * as fs from "fs"; import * as path from "path"; import * as toolrunner from "@actions/exec/lib/toolrunner"; -import * as toolcache from "@actions/tool-cache"; import * as yaml from "js-yaml"; import { getOptionalInput } from "./actions-util"; import * as api from "./api-client"; import { Config } from "./config-utils"; import { errorMatchers } from "./error-matcher"; -import { FeatureEnablement } from "./feature-flags"; +import { CodeQLDefaultVersionInfo, FeatureEnablement } from "./feature-flags"; import { isTracedLanguage, Language } from "./languages"; import { Logger } from "./logging"; -import { downloadCodeQL, getCodeQLSource } from "./setup-codeql"; +import * as setupCodeql from "./setup-codeql"; import { toolrunnerErrorCatcher } from "./toolrunner-error-catcher"; import { getTrapCachingExtractorConfigArgs, getTrapCachingExtractorConfigArgsForLang, } from "./trap-caching"; import * as util from "./util"; -import { assertNever } from "./util"; type Options = Array; @@ -287,6 +285,7 @@ export const CODEQL_VERSION_BETTER_RESOLVE_LANGUAGES = "2.10.3"; * @param tempDir * @param variant * @param bypassToolcache + * @param defaultCliVersion * @param logger * @param checkVersion Whether to check that CodeQL CLI meets the minimum * version requirement. Must be set to true outside tests. @@ -298,41 +297,20 @@ export async function setupCodeQL( tempDir: string, variant: util.GitHubVariant, bypassToolcache: boolean, + defaultCliVersion: CodeQLDefaultVersionInfo, logger: Logger, checkVersion: boolean ): Promise<{ codeql: CodeQL; toolsVersion: string }> { try { - const source = await getCodeQLSource( + const { codeqlFolder, toolsVersion } = await setupCodeql.setupCodeQL( toolsInput, - bypassToolcache, apiDetails, + tempDir, variant, + bypassToolcache, + defaultCliVersion, logger ); - - let codeqlFolder: string; - - switch (source.sourceType) { - case "local": - codeqlFolder = await toolcache.extractTar(source.codeqlTarPath); - break; - case "toolcache": - codeqlFolder = source.codeqlFolder; - logger.debug(`CodeQL found in cache ${codeqlFolder}`); - break; - case "download": - codeqlFolder = await downloadCodeQL( - source.codeqlURL, - source.semanticVersion, - apiDetails, - tempDir, - logger - ); - break; - default: - assertNever(source); - } - let codeqlCmd = path.join(codeqlFolder, "codeql", "codeql"); if (process.platform === "win32") { codeqlCmd += ".exe"; @@ -341,7 +319,7 @@ export async function setupCodeQL( } cachedCodeQL = await getCodeQLForCmd(codeqlCmd, checkVersion); - return { codeql: cachedCodeQL, toolsVersion: source.toolsVersion }; + return { codeql: cachedCodeQL, toolsVersion }; } catch (e) { logger.error(e instanceof Error ? e : new Error(String(e))); throw new Error("Unable to download and extract CodeQL CLI"); diff --git a/src/init-action.ts b/src/init-action.ts index 424a1dc05..c550d717b 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -182,6 +182,9 @@ async function run() { return; } + const defaultCliVersion = await features.getDefaultCliVersion( + gitHubVersion.type + ); const initCodeQLResult = await initCodeQL( getOptionalInput("tools"), apiDetails, @@ -194,6 +197,7 @@ async function run() { repositoryNwo, logger ), + defaultCliVersion, logger ); codeql = initCodeQLResult.codeql; diff --git a/src/init.ts b/src/init.ts index b674bfadd..fbd842908 100644 --- a/src/init.ts +++ b/src/init.ts @@ -8,7 +8,7 @@ import * as analysisPaths from "./analysis-paths"; import { GitHubApiCombinedDetails, GitHubApiDetails } from "./api-client"; import { CodeQL, CODEQL_VERSION_NEW_TRACING, setupCodeQL } from "./codeql"; import * as configUtils from "./config-utils"; -import { FeatureEnablement } from "./feature-flags"; +import { CodeQLDefaultVersionInfo, FeatureEnablement } from "./feature-flags"; import { Logger } from "./logging"; import { RepositoryNwo } from "./repository"; import { TracerConfig, getCombinedTracerConfig } from "./tracer-config"; @@ -21,6 +21,7 @@ export async function initCodeQL( tempDir: string, variant: util.GitHubVariant, bypassToolcache: boolean, + defaultCliVersion: CodeQLDefaultVersionInfo, logger: Logger ): Promise<{ codeql: CodeQL; toolsVersion: string }> { logger.startGroup("Setup CodeQL tools"); @@ -30,6 +31,7 @@ export async function initCodeQL( tempDir, variant, bypassToolcache, + defaultCliVersion, logger, true ); diff --git a/src/setup-codeql.ts b/src/setup-codeql.ts index ed8d03e38..e0a2b61f5 100644 --- a/src/setup-codeql.ts +++ b/src/setup-codeql.ts @@ -10,11 +10,11 @@ import { v4 as uuidV4 } from "uuid"; import { isRunningLocalAction } from "./actions-util"; import * as api from "./api-client"; import * as defaults from "./defaults.json"; // Referenced from codeql-action-sync-tool! +import { CodeQLDefaultVersionInfo } from "./feature-flags"; import { Logger } from "./logging"; import * as util from "./util"; import { isGoodVersion } from "./util"; -const CODEQL_BUNDLE_VERSION = defaults.bundleVersion; export const CODEQL_DEFAULT_ACTION_REPOSITORY = "github/codeql-action"; function getCodeQLBundleName(): string { @@ -49,6 +49,9 @@ export async function findCodeQLBundleTagDotcomOnly( cliVersion: string, logger: Logger ): Promise { + logger.debug( + `Trying to find the CodeQL bundle release for CLI version ${cliVersion}.` + ); const apiClient = api.getApiClient(); const codeQLActionRepository = getCodeQLActionRepository(logger); const releases = await apiClient.paginate(apiClient.repos.listReleases, { @@ -85,6 +88,7 @@ export async function findCodeQLBundleTagDotcomOnly( } async function getCodeQLBundleDownloadURL( + tagName: string, apiDetails: api.GitHubApiDetails, variant: util.GitHubVariant, logger: Logger @@ -111,7 +115,7 @@ async function getCodeQLBundleDownloadURL( const release = await api .getApiClient() .request("GET /enterprise/code-scanning/codeql-bundle/find/{tag}", { - tag: CODEQL_BUNDLE_VERSION, + tag: tagName, }); const assetID = release.data.assets[codeQLBundleName]; if (assetID !== undefined) { @@ -153,7 +157,7 @@ async function getCodeQLBundleDownloadURL( const release = await api.getApiClient().repos.getReleaseByTag({ owner: repositoryOwner, repo: repositoryName, - tag: CODEQL_BUNDLE_VERSION, + tag: tagName, }); for (const asset of release.data.assets) { if (asset.name === codeQLBundleName) { @@ -169,7 +173,33 @@ async function getCodeQLBundleDownloadURL( ); } } - return `https://github.com/${CODEQL_DEFAULT_ACTION_REPOSITORY}/releases/download/${CODEQL_BUNDLE_VERSION}/${codeQLBundleName}`; + return `https://github.com/${CODEQL_DEFAULT_ACTION_REPOSITORY}/releases/download/${tagName}/${codeQLBundleName}`; +} + +export function getBundleTagNameFromUrl(url: string): string { + const match = url.match(/\/codeql-bundle-(.*)\//); + if (match === null || match.length < 2) { + throw new Error( + `Malformed tools url: ${url}. Tag name could not be inferred` + ); + } + return match[1]; +} + +export function convertToSemVer(version: string, logger: Logger): string { + if (!semver.valid(version)) { + logger.debug( + `Bundle version ${version} is not in SemVer format. Will treat it as pre-release 0.0.0-${version}.` + ); + version = `0.0.0-${version}`; + } + + const s = semver.clean(version); + if (!s) { + throw new Error(`Bundle version ${version} is not in SemVer format.`); + } + + return s; } type CodeQLToolsSource = @@ -186,9 +216,60 @@ type CodeQLToolsSource = toolsVersion: string; }; +async function getOrFindBundleTagName( + version: CodeQLDefaultVersionInfo, + logger: Logger +): Promise { + if (version.variant === util.GitHubVariant.DOTCOM) { + return await findCodeQLBundleTagDotcomOnly(version.cliVersion, logger); + } else { + return version.tagName; + } +} + +/** + * Look for a version of the CodeQL tools in the cache which could override the requested CLI version. + */ +async function findOverridingToolsInCache( + requestedCliVersion: string, + logger: Logger +): Promise { + const candidates = toolcache + .findAllVersions("CodeQL") + .filter(isGoodVersion) + .map((version) => ({ + folder: toolcache.find("CodeQL", version), + version, + })) + .filter(({ folder }) => fs.existsSync(path.join(folder, "pinned-version"))); + + if (candidates.length === 1) { + const candidate = candidates[0]; + logger.debug( + `CodeQL tools version ${candidate.version} in toolcache overriding version ${requestedCliVersion}.` + ); + return { + codeqlFolder: candidate.folder, + sourceType: "toolcache", + toolsVersion: candidate.version, + }; + } else if (candidates.length === 0) { + logger.debug( + "Did not find any candidate pinned versions of the CodeQL tools in the toolcache." + ); + } else { + logger.debug( + "Could not use CodeQL tools from the toolcache since more than one candidate pinned " + + "version was found in the toolcache." + ); + } + return undefined; +} + export async function getCodeQLSource( toolsInput: string | undefined, bypassToolcache: boolean, + defaultCliVersion: CodeQLDefaultVersionInfo, apiDetails: api.GitHubApiDetails, variant: util.GitHubVariant, logger: Logger @@ -211,7 +292,7 @@ export async function getCodeQLSource( // allows us to quickly rollback a broken bundle that has made its way // into the toolcache. toolsInput === undefined && bypassToolcache - ? "a specific version of CodeQL was not requested and the bypass toolcache feature is enabled" + ? "a specific version of the CodeQL tools was not requested and the bypass toolcache feature is enabled" : undefined; const forceLatest = forceLatestReason !== undefined; if (forceLatest) { @@ -220,50 +301,92 @@ export async function getCodeQLSource( ); } - const codeqlURL = forceLatest ? undefined : toolsInput; - const requestedSemVer = convertToSemVer( - getCodeQLURLVersion(codeqlURL || `/${CODEQL_BUNDLE_VERSION}/`), - logger - ); + /** + * The requested version is: + * + * 1. The one in `defaults.json`, if forceLatest is true. + * 2. The version specified by the tools input URL, if one was provided. + * 3. The default CLI version, otherwise. + + * We include a `variant` property to let us verify using the type system that + * `tagName` is only undefined when the variant is Dotcom. This lets us ensure + * that we can always compute `tagName`, either by using the existing tag name + * on enterprise instances, or safely calling `findCodeQLBundleTagDotcomOnly` + * on Dotcom. + */ + const requestedVersion = forceLatest + ? // case 1 + { + cliVersion: defaults.cliVersion, + tagName: defaults.bundleVersion, + variant, + } + : toolsInput !== undefined + ? // case 2 + { + cliVersion: convertToSemVer( + getBundleTagNameFromUrl(toolsInput), + logger + ), + tagName: getBundleTagNameFromUrl(toolsInput), + url: toolsInput, + variant, + } + : // case 3 + defaultCliVersion; // If we find the specified version, we always use that. - const codeqlFolder = toolcache.find("CodeQL", requestedSemVer); + let codeqlFolder = toolcache.find("CodeQL", requestedVersion.cliVersion); + let tagName: string | undefined = requestedVersion["tagName"]; + + if (!codeqlFolder && !requestedVersion.cliVersion.startsWith("0.0.0")) { + // Fall back to accepting a `0.0.0-` version if we didn't find the + // `x.y.z` version. This is to support old versions of the toolcache. + tagName = + tagName || (await getOrFindBundleTagName(requestedVersion, logger)); + const fallbackVersion = convertToSemVer(tagName, logger); + logger.debug( + `Computed a fallback toolcache version number of ${fallbackVersion} for CodeQL tools version ${requestedVersion.cliVersion}.` + ); + codeqlFolder = toolcache.find("CodeQL", fallbackVersion); + } + if (codeqlFolder) { return { codeqlFolder, sourceType: "toolcache", - toolsVersion: requestedSemVer, + toolsVersion: requestedVersion.cliVersion, }; } + logger.debug( + `Did not find CodeQL tools version ${requestedVersion.cliVersion} in the toolcache.` + ); - // If we don't find the requested version, in some cases we may allow a + // If we don't find the requested version on Enterprise, we may allow a // different version to save download time if the version hasn't been // specified explicitly (in which case we always honor it). - if (!codeqlURL && !forceLatest) { - const codeqlVersions = toolcache.findAllVersions("CodeQL"); - if (codeqlVersions.length === 1 && isGoodVersion(codeqlVersions[0])) { - const tmpCodeqlFolder = toolcache.find("CodeQL", codeqlVersions[0]); - if (fs.existsSync(path.join(tmpCodeqlFolder, "pinned-version"))) { - logger.debug( - `CodeQL in cache overriding the default ${CODEQL_BUNDLE_VERSION}` - ); - return { - codeqlFolder: tmpCodeqlFolder, - sourceType: "toolcache", - toolsVersion: codeqlVersions[0], - }; - } + if (variant !== util.GitHubVariant.DOTCOM && !forceLatest && !toolsInput) { + const result = await findOverridingToolsInCache( + requestedVersion.cliVersion, + logger + ); + if (result !== undefined) { + return result; } } return { codeqlURL: - codeqlURL || - (await getCodeQLBundleDownloadURL(apiDetails, variant, logger)), - semanticVersion: requestedSemVer, + requestedVersion["url"] || + (await getCodeQLBundleDownloadURL( + tagName || (await getOrFindBundleTagName(requestedVersion, logger)), + apiDetails, + variant, + logger + )), + semanticVersion: requestedVersion.cliVersion, sourceType: "download", - toolsVersion: - semver.prerelease(requestedSemVer)?.join(".") || requestedSemVer, + toolsVersion: requestedVersion.cliVersion, }; } @@ -322,18 +445,58 @@ export function getCodeQLURLVersion(url: string): string { return match[1]; } -export function convertToSemVer(version: string, logger: Logger): string { - if (!semver.valid(version)) { - logger.debug( - `Bundle version ${version} is not in SemVer format. Will treat it as pre-release 0.0.0-${version}.` - ); - version = `0.0.0-${version}`; - } +/** + * Set up CodeQL CLI access. + * + * @param toolsInput + * @param apiDetails + * @param tempDir + * @param variant + * @param bypassToolcache + * @param defaultCliVersion + * @param logger + * @param checkVersion Whether to check that CodeQL CLI meets the minimum + * version requirement. Must be set to true outside tests. + * @returns a { CodeQL, toolsVersion } object. + */ +export async function setupCodeQL( + toolsInput: string | undefined, + apiDetails: api.GitHubApiDetails, + tempDir: string, + variant: util.GitHubVariant, + bypassToolcache: boolean, + defaultCliVersion: CodeQLDefaultVersionInfo, + logger: Logger +): Promise<{ codeqlFolder: string; toolsVersion: string }> { + const source = await getCodeQLSource( + toolsInput, + bypassToolcache, + defaultCliVersion, + apiDetails, + variant, + logger + ); - const s = semver.clean(version); - if (!s) { - throw new Error(`Bundle version ${version} is not in SemVer format.`); + let codeqlFolder: string; + switch (source.sourceType) { + case "local": + codeqlFolder = await toolcache.extractTar(source.codeqlTarPath); + break; + case "toolcache": + codeqlFolder = source.codeqlFolder; + logger.debug(`CodeQL found in cache ${codeqlFolder}`); + break; + case "download": + codeqlFolder = await downloadCodeQL( + source.codeqlURL, + source.semanticVersion, + apiDetails, + tempDir, + logger + ); + break; + default: + util.assertNever(source); } - - return s; + return { codeqlFolder, toolsVersion: source.toolsVersion }; }