diff --git a/lib/analyze.js b/lib/analyze.js index 6af2d4145..5cf8ea996 100644 --- a/lib/analyze.js +++ b/lib/analyze.js @@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.validateQueryFilters = exports.runCleanup = exports.runFinalize = exports.createQuerySuiteContents = exports.convertPackToQuerySuiteEntry = exports.runQueries = exports.dbIsFinalized = exports.createdDBForScannedLanguages = exports.CodeQLAnalysisError = void 0; +exports.runCleanup = exports.runFinalize = exports.runQueries = exports.dbIsFinalized = exports.createdDBForScannedLanguages = exports.CodeQLAnalysisError = void 0; const fs = __importStar(require("fs")); const path = __importStar(require("path")); const perf_hooks_1 = require("perf_hooks"); @@ -34,13 +34,11 @@ const toolrunner = __importStar(require("@actions/exec/lib/toolrunner")); const del_1 = __importDefault(require("del")); const yaml = __importStar(require("js-yaml")); const codeql_1 = require("./codeql"); -const configUtils = __importStar(require("./config-utils")); const feature_flags_1 = require("./feature-flags"); const languages_1 = require("./languages"); const tracer_config_1 = require("./tracer-config"); const upload_lib_1 = require("./upload-lib"); const util = __importStar(require("./util")); -const util_1 = require("./util"); class CodeQLAnalysisError extends Error { constructor(queriesStatusReport, message) { super(message); @@ -224,24 +222,6 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, } } exports.runQueries = runQueries; -function convertPackToQuerySuiteEntry(packStr) { - const pack = configUtils.parsePacksSpecification(packStr); - return { - qlpack: !pack.path ? pack.name : undefined, - from: pack.path ? pack.name : undefined, - version: pack.version, - query: pack.path?.endsWith(".ql") ? pack.path : undefined, - queries: !pack.path?.endsWith(".ql") && !pack.path?.endsWith(".qls") - ? pack.path - : undefined, - apply: pack.path?.endsWith(".qls") ? pack.path : undefined, - }; -} -exports.convertPackToQuerySuiteEntry = convertPackToQuerySuiteEntry; -function createQuerySuiteContents(queries, queryFilters) { - return yaml.dump(queries.map((q) => ({ query: q })).concat(queryFilters)); -} -exports.createQuerySuiteContents = createQuerySuiteContents; async function runFinalize(outputDir, threadsFlag, memoryFlag, config, logger, features) { try { await (0, del_1.default)(outputDir, { force: true }); @@ -273,28 +253,4 @@ async function runCleanup(config, cleanupLevel, logger) { logger.endGroup(); } exports.runCleanup = runCleanup; -// exported for testing -function validateQueryFilters(queryFilters) { - if (!queryFilters) { - return []; - } - if (!Array.isArray(queryFilters)) { - throw new util_1.UserError(`Query filters must be an array of "include" or "exclude" entries. Found ${typeof queryFilters}`); - } - const errors = []; - for (const qf of queryFilters) { - const keys = Object.keys(qf); - if (keys.length !== 1) { - errors.push(`Query filter must have exactly one key: ${JSON.stringify(qf)}`); - } - if (!["exclude", "include"].includes(keys[0])) { - errors.push(`Only "include" or "exclude" filters are allowed:\n${JSON.stringify(qf)}`); - } - } - if (errors.length) { - throw new util_1.UserError(`Invalid query filter.\n${errors.join("\n")}`); - } - return queryFilters; -} -exports.validateQueryFilters = validateQueryFilters; //# sourceMappingURL=analyze.js.map \ No newline at end of file diff --git a/lib/analyze.js.map b/lib/analyze.js.map index a073f291b..bb15e762f 100644 --- a/lib/analyze.js.map +++ b/lib/analyze.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/analyze.test.js b/lib/analyze.test.js index 6488bc60d..b9b7d2678 100644 --- a/lib/analyze.test.js +++ b/lib/analyze.test.js @@ -53,10 +53,6 @@ const util = __importStar(require("./util")); const memoryFlag = ""; const addSnippetsFlag = ""; const threadsFlag = ""; - const packs = { - [languages_1.Language.cpp]: ["a/b@1.0.0"], - [languages_1.Language.java]: ["c/d@2.0.0"], - }; sinon.stub(uploadLib, "validateSarifFileSchema"); for (const language of Object.values(languages_1.Language)) { (0, codeql_1.setCodeQL)({ @@ -106,9 +102,6 @@ const util = __importStar(require("./util")); searchPathsUsed = []; const config = { languages: [language], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "", @@ -116,7 +109,6 @@ const util = __importStar(require("./util")); type: util.GitHubVariant.DOTCOM, }, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, @@ -155,9 +147,6 @@ function mockCodeQL() { function createBaseConfig(tmpDir) { return { languages: [], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: "tempDir", codeQLCmd: "", @@ -165,7 +154,6 @@ function createBaseConfig(tmpDir) { type: util.GitHubVariant.DOTCOM, }, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, @@ -208,142 +196,4 @@ function getDatabaseRunQueriesCalls(mock) { t.deepEqual(getDatabaseRunQueriesCalls(codeql).map((c) => c.args[4]), [true, true]); }); }); -(0, ava_1.default)("validateQueryFilters", (t) => { - t.notThrows(() => (0, analyze_1.validateQueryFilters)([])); - t.notThrows(() => (0, analyze_1.validateQueryFilters)(undefined)); - t.notThrows(() => { - return (0, analyze_1.validateQueryFilters)([ - { - exclude: { - "problem.severity": "recommendation", - }, - }, - { - exclude: { - "tags contain": ["foo", "bar"], - }, - }, - { - include: { - "problem.severity": "something-to-think-about", - }, - }, - { - include: { - "tags contain": ["baz", "bop"], - }, - }, - ]); - }); - t.throws(() => { - return (0, analyze_1.validateQueryFilters)([ - { - exclude: { - "tags contain": ["foo", "bar"], - }, - include: { - "tags contain": ["baz", "bop"], - }, - }, - ]); - }, { message: /Query filter must have exactly one key/ }); - t.throws(() => { - return (0, analyze_1.validateQueryFilters)([{ xxx: "foo" }]); - }, { message: /Only "include" or "exclude" filters are allowed/ }); - t.throws(() => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument - return (0, analyze_1.validateQueryFilters)({ exclude: "foo" }); - }, { - message: /Query filters must be an array of "include" or "exclude" entries/, - }); -}); -const convertPackToQuerySuiteEntryMacro = ava_1.default.macro({ - exec: (t, packSpec, suiteEntry) => t.deepEqual((0, analyze_1.convertPackToQuerySuiteEntry)(packSpec), suiteEntry), - title: (_providedTitle, packSpec) => `Query Suite Entry: ${packSpec}`, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b", { - qlpack: "a/b", - from: undefined, - version: undefined, - query: undefined, - queries: undefined, - apply: undefined, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3", { - qlpack: "a/b", - from: undefined, - version: "~1.2.3", - query: undefined, - queries: undefined, - apply: undefined, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b:my/path", { - qlpack: undefined, - from: "a/b", - version: undefined, - query: undefined, - queries: "my/path", - apply: undefined, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path", { - qlpack: undefined, - from: "a/b", - version: "~1.2.3", - query: undefined, - queries: "my/path", - apply: undefined, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b:my/path/query.ql", { - qlpack: undefined, - from: "a/b", - version: undefined, - query: "my/path/query.ql", - queries: undefined, - apply: undefined, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/query.ql", { - qlpack: undefined, - from: "a/b", - version: "~1.2.3", - query: "my/path/query.ql", - queries: undefined, - apply: undefined, -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b:my/path/suite.qls", { - qlpack: undefined, - from: "a/b", - version: undefined, - query: undefined, - queries: undefined, - apply: "my/path/suite.qls", -}); -(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/suite.qls", { - qlpack: undefined, - from: "a/b", - version: "~1.2.3", - query: undefined, - queries: undefined, - apply: "my/path/suite.qls", -}); -(0, ava_1.default)("convertPackToQuerySuiteEntry Failure", (t) => { - t.throws(() => (0, analyze_1.convertPackToQuerySuiteEntry)("this-is-not-a-pack")); -}); -(0, ava_1.default)("createQuerySuiteContents", (t) => { - const yamlResult = (0, analyze_1.createQuerySuiteContents)(["query1.ql", "query2.ql"], [ - { - exclude: { "problem.severity": "recommendation" }, - }, - { - include: { "problem.severity": "recommendation" }, - }, - ]); - const expected = `- query: query1.ql -- query: query2.ql -- exclude: - problem.severity: recommendation -- include: - problem.severity: recommendation -`; - t.deepEqual(yamlResult, expected); -}); //# sourceMappingURL=analyze.test.js.map \ No newline at end of file diff --git a/lib/analyze.test.js.map b/lib/analyze.test.js.map index 0a142d3bc..32cee12d1 100644 --- a/lib/analyze.test.js.map +++ b/lib/analyze.test.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.test.js","sourceRoot":"","sources":["../src/analyze.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,8CAA6C;AAC7C,6CAA+B;AAE/B,uCAMmB;AACnB,qCAA6C;AAE7C,mDAA0C;AAC1C,2CAAuC;AACvC,uCAA4C;AAC5C,mDAKyB;AACzB,wDAA0C;AAC1C,6CAA+B;AAE/B,IAAA,0BAAU,EAAC,aAAI,CAAC,CAAC;AAEjB;;;;;;GAMG;AACH,IAAA,aAAI,EAAC,8CAA8C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC/D,IAAI,eAAe,GAA8B,EAAE,CAAC;IACpD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC5C,IAAA,gCAAgB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEjC,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG;YACZ,CAAC,oBAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC;YAC7B,CAAC,oBAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;SAC/B,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;QAEjD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAQ,CAAC,EAAE,CAAC;YAC/C,IAAA,kBAAS,EAAC;gBACR,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBACzC,kBAAkB,EAAE,KAAK,EACvB,GAAW,EACX,UAA8B,EAC9B,EAAE;oBACF,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACnC,CAAC;gBACD,wBAAwB,EAAE,KAAK,EAC7B,GAAW,EACX,WAAqB,EACrB,SAAiB,EACjB,EAAE;oBACF,EAAE,CAAC,aAAa,CACd,SAAS,EACT,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE;4BACJ,+EAA+E;4BAC/E;gCACE,IAAI,EAAE;oCACJ,UAAU,EAAE;wCACV;4CACE,KAAK,EAAE;gDACL;oDACE,UAAU,EAAE;wDACV,IAAI,EAAE,CAAC,eAAe,CAAC;qDACxB;iDACF;6CACF;yCACF;qCACF;iCACF;gCACD,UAAU,EAAE;oCACV,aAAa,EAAE;wCACb;4CACE,IAAI,EAAE;gDACJ,KAAK,EAAE,CAAC;gDACR,aAAa,EAAE;oDACb,KAAK,EAAE,CAAC;iDACT;6CACF;4CACD,KAAK,EAAE,GAAG;yCACX;qCACF;iCACF;6BACF;4BACD,EAAE;yBACH;qBACF,CAAC,CACH,CAAC;oBACF,OAAO,EAAE,CAAC;gBACZ,CAAC;gBACD,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;aACtC,CAAC,CAAC;YAEH,eAAe,GAAG,EAAE,CAAC;YACrB,MAAM,MAAM,GAAW;gBACrB,SAAS,EAAE,CAAC,QAAQ,CAAC;gBACrB,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,EAAE;gBACf,KAAK,EAAE,EAAE;gBACT,iBAAiB,EAAE,EAAE;gBACrB,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE;oBACb,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;iBACV;gBACvB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC;gBACpD,KAAK;gBACL,SAAS,EAAE,KAAK;gBAChB,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;gBACnD,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;gBACnD,sBAAsB,EAAE;oBACtB,kBAAkB,EAAE,KAAK;oBACzB,oBAAoB,EAAE,KAAK;iBAC5B;gBACD,UAAU,EAAE,EAAE;gBACd,qBAAqB,EAAE,CAAC;aACzB,CAAC;YACF,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;gBACzD,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,MAAM,IAAA,oBAAU,EAC1C,MAAM,EACN,UAAU,EACV,eAAe,EACf,WAAW,EACX,SAAS,EACT,MAAM,EACN,IAAA,yBAAe,EAAC,IAAI,CAAC,EACrB,IAAA,8BAAc,EAAC,CAAC,uBAAO,CAAC,kBAAkB,CAAC,CAAC,CAC7C,CAAC;YACF,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE;gBACnD,2BAA2B,QAAQ,cAAc;gBACjD,eAAe;gBACf,qBAAqB,QAAQ,cAAc;aAC5C,CAAC,CAAC;YACH,KAAK,MAAM,WAAW,IAAI,mBAAmB,CAAC,aAAc,EAAE,CAAC;gBAC7D,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,mCAAmC,CAAC,CAAC;gBACpE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,WAAW,CAAC,CAAC;gBACpC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC,UAAW,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAS,UAAU;IACjB,OAAO;QACL,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,IAAA,+BAAe,EAAC,OAAO,CAAC;QAChD,kBAAkB,EAAE,KAAK,CAAC,GAAG,EAAE;QAC/B,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;QACxC,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAc;IACtC,OAAO;QACL,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,EAAE;QACT,iBAAiB,EAAE,EAAE;QACrB,OAAO,EAAE,SAAS;QAClB,SAAS,EAAE,EAAE;QACb,aAAa,EAAE;YACb,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;SACV;QACvB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC;QACpD,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,KAAK;QAChB,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;QACnD,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;QACnD,sBAAsB,EAAE;YACtB,kBAAkB,EAAE,KAAK;YACzB,oBAAoB,EAAE,KAAK;SAC5B;QACD,UAAU,EAAE,EAAE;QACd,qBAAqB,EAAE,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,MAAc,EACd,QAAmB;IAEnB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACxC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;YACzD,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAA,oBAAU,EACf,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,SAAS,EACT,MAAM,EACN,IAAA,yBAAe,EAAC,IAAI,CAAC,EACrB,IAAA,8BAAc,EAAC,QAAQ,CAAC,CACzB,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAqB;IACvD,OAAQ,IAAI,CAAC,kBAAqC,CAAC,QAAQ,EAAE,CAAC;AAChE,CAAC;AAED,IAAA,aAAI,EAAC,0CAA0C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC3D,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC5C,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;QAClB,MAAM,MAAM,GAAW,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,SAAS,GAAG,CAAC,oBAAQ,CAAC,GAAG,CAAC,CAAC;QAElC,MAAM,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,SAAS,CACT,0BAA0B,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EACxD,CAAC,IAAI,CAAC,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,2CAA2C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC5D,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC5C,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;QAClB,MAAM,MAAM,GAAW,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,SAAS,GAAG,CAAC,oBAAQ,CAAC,GAAG,EAAE,oBAAQ,CAAC,IAAI,CAAC,CAAC;QAEjD,MAAM,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,SAAS,CACT,0BAA0B,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EACxD,CAAC,IAAI,EAAE,IAAI,CAAC,CACb,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,sBAAsB,EAAE,CAAC,CAAC,EAAE,EAAE;IACjC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAA,8BAAoB,EAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAA,8BAAoB,EAAC,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;QACf,OAAO,IAAA,8BAAoB,EAAC;YAC1B;gBACE,OAAO,EAAE;oBACP,kBAAkB,EAAE,gBAAgB;iBACrC;aACF;YACD;gBACE,OAAO,EAAE;oBACP,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;iBAC/B;aACF;YACD;gBACE,OAAO,EAAE;oBACP,kBAAkB,EAAE,0BAA0B;iBAC/C;aACF;YACD;gBACE,OAAO,EAAE;oBACP,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;iBAC/B;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,MAAM,CACN,GAAG,EAAE;QACH,OAAO,IAAA,8BAAoB,EAAC;YAC1B;gBACE,OAAO,EAAE;oBACP,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;iBAC/B;gBACD,OAAO,EAAE;oBACP,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;iBAC/B;aACF;SACF,CAAC,CAAC;IACL,CAAC,EACD,EAAE,OAAO,EAAE,wCAAwC,EAAE,CACtD,CAAC;IAEF,CAAC,CAAC,MAAM,CACN,GAAG,EAAE;QACH,OAAO,IAAA,8BAAoB,EAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAS,CAAC,CAAC,CAAC;IACvD,CAAC,EACD,EAAE,OAAO,EAAE,iDAAiD,EAAE,CAC/D,CAAC;IAEF,CAAC,CAAC,MAAM,CACN,GAAG,EAAE;QACH,iEAAiE;QACjE,OAAO,IAAA,8BAAoB,EAAC,EAAE,OAAO,EAAE,KAAK,EAAS,CAAC,CAAC;IACzD,CAAC,EACD;QACE,OAAO,EACL,kEAAkE;KACrE,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,iCAAiC,GAAG,aAAI,CAAC,KAAK,CAAC;IACnD,IAAI,EAAE,CAAC,CAA4B,EAAE,QAAgB,EAAE,UAAe,EAAE,EAAE,CACxE,CAAC,CAAC,SAAS,CAAC,IAAA,sCAA4B,EAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;IAEjE,KAAK,EAAE,CAAC,cAAc,EAAE,QAAgB,EAAE,EAAE,CAAC,sBAAsB,QAAQ,EAAE;CAC9E,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,KAAK,EAAE;IAC7C,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,YAAY,EAAE;IACpD,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,aAAa,EAAE;IACrD,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,oBAAoB,EAAE;IAC5D,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,sBAAsB,EAAE;IAC9D,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,kBAAkB;IACzB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,6BAA6B,EAAE;IACrE,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,kBAAkB;IACzB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,uBAAuB,EAAE;IAC/D,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,mBAAmB;CAC3B,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,8BAA8B,EAAE;IACtE,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,mBAAmB;CAC3B,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,sCAAsC,EAAE,CAAC,CAAC,EAAE,EAAE;IACjD,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAA,sCAA4B,EAAC,oBAAoB,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,0BAA0B,EAAE,CAAC,CAAC,EAAE,EAAE;IACrC,MAAM,UAAU,GAAG,IAAA,kCAAwB,EACzC,CAAC,WAAW,EAAE,WAAW,CAAC,EAC1B;QACE;YACE,OAAO,EAAE,EAAE,kBAAkB,EAAE,gBAAgB,EAAE;SAClD;QACD;YACE,OAAO,EAAE,EAAE,kBAAkB,EAAE,gBAAgB,EAAE;SAClD;KACF,CACF,CAAC;IACF,MAAM,QAAQ,GAAG;;;;;;CAMlB,CAAC;IAEA,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"analyze.test.js","sourceRoot":"","sources":["../src/analyze.test.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 114f16f10..dc48a2485 100644 --- a/lib/codeql.test.js +++ b/lib/codeql.test.js @@ -57,9 +57,6 @@ ava_1.default.beforeEach(() => { (0, util_1.initializeEnvironment)("1.2.3"); stubConfig = { languages: [languages_1.Language.cpp], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: "", codeQLCmd: "", @@ -67,7 +64,6 @@ ava_1.default.beforeEach(() => { type: util.GitHubVariant.DOTCOM, }, dbLocation: "", - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, diff --git a/lib/codeql.test.js.map b/lib/codeql.test.js.map index 6b2a3abcf..cbf9dbdfa 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/config-utils.js b/lib/config-utils.js index 47a05d20d..08b77edc8 100644 --- a/lib/config-utils.js +++ b/lib/config-utils.js @@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.wrapEnvironment = exports.generateRegistries = exports.downloadPacks = exports.getConfig = exports.getPathToParsedConfigFile = exports.initConfig = exports.parsePacks = exports.validatePackSpecification = exports.parsePacksSpecification = exports.parsePacksFromConfig = exports.calculateAugmentation = exports.getDefaultConfig = exports.getRawLanguages = exports.getLanguageAliases = exports.getLanguages = exports.getLanguagesInRepo = exports.getUnknownLanguagesError = exports.getNoLanguagesError = exports.getConfigFileDirectoryGivenMessage = exports.getConfigFileFormatInvalidMessage = exports.getConfigFileRepoFormatInvalidMessage = exports.getConfigFileDoesNotExistErrorMessage = exports.getConfigFileOutsideWorkspaceErrorMessage = exports.getLocalPathDoesNotExist = exports.getLocalPathOutsideOfRepository = exports.getPacksStrInvalid = exports.getPacksInvalid = exports.getPacksInvalidSplit = exports.getPathsInvalid = exports.getPathsIgnoreInvalid = exports.getQueryUsesInvalid = exports.getQueriesMissingUses = exports.getQueriesInvalid = exports.getDisableDefaultQueriesInvalid = exports.getNameInvalid = exports.validateAndSanitisePath = exports.defaultAugmentationProperties = void 0; +exports.wrapEnvironment = exports.generateRegistries = exports.downloadPacks = exports.getConfig = exports.getPathToParsedConfigFile = exports.initConfig = exports.validatePackSpecification = exports.parsePacksSpecification = exports.parsePacksFromInput = exports.calculateAugmentation = exports.getDefaultConfig = exports.getRawLanguages = exports.getLanguageAliases = exports.getLanguages = exports.getLanguagesInRepo = exports.getUnknownLanguagesError = exports.getNoLanguagesError = exports.getConfigFileDirectoryGivenMessage = exports.getConfigFileFormatInvalidMessage = exports.getConfigFileRepoFormatInvalidMessage = exports.getConfigFileDoesNotExistErrorMessage = exports.getConfigFileOutsideWorkspaceErrorMessage = exports.getPacksStrInvalid = exports.defaultAugmentationProperties = void 0; const fs = __importStar(require("fs")); const path = __importStar(require("path")); const perf_hooks_1 = require("perf_hooks"); @@ -35,12 +35,6 @@ const languages_1 = require("./languages"); const trap_caching_1 = require("./trap-caching"); const util_1 = require("./util"); // Property names from the user-supplied config file. -const NAME_PROPERTY = "name"; -const DISABLE_DEFAULT_QUERIES_PROPERTY = "disable-default-queries"; -const QUERIES_PROPERTY = "queries"; -const QUERIES_USES_PROPERTY = "uses"; -const PATHS_IGNORE_PROPERTY = "paths-ignore"; -const PATHS_PROPERTY = "paths"; const PACKS_PROPERTY = "packs"; /** * The default, empty augmentation properties. This is most useful @@ -52,250 +46,12 @@ exports.defaultAugmentationProperties = { packsInput: undefined, queriesInput: undefined, }; -/** - * A list of queries from https://github.com/github/codeql that - * we don't want to run. Disabling them here is a quicker alternative to - * disabling them in the code scanning query suites. Queries should also - * be disabled in the suites, and removed from this list here once the - * bundle is updated to make those suite changes live. - * - * Format is a map from language to an array of path suffixes of .ql files. - */ -const DISABLED_BUILTIN_QUERIES = { - csharp: [ - "ql/src/Security Features/CWE-937/VulnerablePackage.ql", - "ql/src/Security Features/CWE-451/MissingXFrameOptions.ql", - ], -}; -function queryIsDisabled(language, query) { - return (DISABLED_BUILTIN_QUERIES[language] || []).some((disabledQuery) => query.endsWith(disabledQuery)); -} -/** - * Asserts that the noDeclaredLanguage and multipleDeclaredLanguages fields are - * both empty and errors if they are not. - */ -function validateQueries(resolvedQueries) { - const noDeclaredLanguage = resolvedQueries.noDeclaredLanguage; - const noDeclaredLanguageQueries = Object.keys(noDeclaredLanguage); - if (noDeclaredLanguageQueries.length !== 0) { - throw new util_1.UserError(`${"The following queries do not declare a language. " + - "Their qlpack.yml files are either missing or is invalid.\n"}${noDeclaredLanguageQueries.join("\n")}`); - } - const multipleDeclaredLanguages = resolvedQueries.multipleDeclaredLanguages; - const multipleDeclaredLanguagesQueries = Object.keys(multipleDeclaredLanguages); - if (multipleDeclaredLanguagesQueries.length !== 0) { - throw new util_1.UserError(`${"The following queries declare multiple languages. " + - "Their qlpack.yml files are either missing or is invalid.\n"}${multipleDeclaredLanguagesQueries.join("\n")}`); - } -} -/** - * Run 'codeql resolve queries' and add the results to resultMap - * - * If a checkout path is given then the queries are assumed to be custom queries - * and an error will be thrown if there is anything invalid about the queries. - * If a checkout path is not given then the queries are assumed to be builtin - * queries, and error checking will be suppressed. - */ -async function runResolveQueries(codeQL, resultMap, toResolve, extraSearchPath) { - const resolvedQueries = await codeQL.resolveQueries(toResolve, extraSearchPath); - if (extraSearchPath !== undefined) { - validateQueries(resolvedQueries); - } - for (const [language, queryPaths] of Object.entries(resolvedQueries.byLanguage)) { - if (resultMap[language] === undefined) { - resultMap[language] = { - builtin: [], - custom: [], - }; - } - const queries = Object.keys(queryPaths).filter((q) => !queryIsDisabled(language, q)); - if (extraSearchPath !== undefined) { - resultMap[language].custom.push({ - searchPath: extraSearchPath, - queries, - }); - } - else { - resultMap[language].builtin.push(...queries); - } - } -} -/** - * Get the set of queries included by default. - */ -async function addDefaultQueries(codeQL, languages, resultMap) { - const suites = languages.map((l) => `${l}-code-scanning.qls`); - await runResolveQueries(codeQL, resultMap, suites, undefined); -} -// The set of acceptable values for built-in suites from the codeql bundle -const builtinSuites = [ - "security-experimental", - "security-extended", - "security-and-quality", -]; -/** - * Determine the set of queries associated with suiteName's suites and add them to resultMap. - * Throws an error if suiteName is not a valid builtin suite. - */ -async function addBuiltinSuiteQueries(languages, codeQL, resultMap, suiteName, configFile) { - const found = builtinSuites.find((suite) => suite === suiteName); - if (!found) { - throw new util_1.UserError(getQueryUsesInvalid(configFile, suiteName)); - } - if (suiteName === "security-experimental" && - !(await (0, util_1.codeQlVersionAbove)(codeQL, codeql_1.CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE))) { - throw new util_1.UserError(`The 'security-experimental' suite is not supported on CodeQL CLI versions earlier than - ${codeql_1.CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE}. Please upgrade to CodeQL CLI version - ${codeql_1.CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE} or later.`); - } - const suites = languages.map((l) => `${l}-${suiteName}.qls`); - await runResolveQueries(codeQL, resultMap, suites, undefined); -} -/** - * Retrieve the set of queries at localQueryPath and add them to resultMap. - */ -async function addLocalQueries(codeQL, resultMap, localQueryPath, workspacePath, configFile) { - // Resolve the local path against the workspace so that when this is - // passed to codeql it resolves to exactly the path we expect it to resolve to. - let absoluteQueryPath = path.join(workspacePath, localQueryPath); - // Check the file exists - if (!fs.existsSync(absoluteQueryPath)) { - throw new util_1.UserError(getLocalPathDoesNotExist(configFile, localQueryPath)); - } - // Call this after checking file exists, because it'll fail if file doesn't exist - absoluteQueryPath = fs.realpathSync(absoluteQueryPath); - // Check the local path doesn't jump outside the repo using '..' or symlinks - if (!(absoluteQueryPath + path.sep).startsWith(fs.realpathSync(workspacePath) + path.sep)) { - throw new util_1.UserError(getLocalPathOutsideOfRepository(configFile, localQueryPath)); - } - const extraSearchPath = workspacePath; - await runResolveQueries(codeQL, resultMap, [absoluteQueryPath], extraSearchPath); -} -/** - * Parse a query 'uses' field to a discrete set of query files and update resultMap. - * - * The logic for parsing the string is based on what actions does for - * parsing the 'uses' actions in the workflow file. So it can handle - * local paths starting with './', or references to remote repos, or - * a finite set of hardcoded terms for builtin suites. - */ -async function parseQueryUses(languages, codeQL, resultMap, queryUses, workspacePath, configFile) { - queryUses = queryUses.trim(); - if (queryUses === "") { - throw new util_1.UserError(getQueryUsesInvalid(configFile)); - } - // Check for the local path case before we start trying to parse the repository name - if (queryUses.startsWith("./")) { - await addLocalQueries(codeQL, resultMap, queryUses.slice(2), workspacePath, configFile); - return; - } - // Check for one of the builtin suites - if (queryUses.indexOf("/") === -1 && queryUses.indexOf("@") === -1) { - await addBuiltinSuiteQueries(languages, codeQL, resultMap, queryUses, configFile); - return; - } -} -// Regex validating stars in paths or paths-ignore entries. -// The intention is to only allow ** to appear when immediately -// preceded and followed by a slash. -const pathStarsRegex = /.*(?:\*\*[^/].*|\*\*$|[^/]\*\*.*)/; -// Characters that are supported by filters in workflows, but not by us. -// See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet -const filterPatternCharactersRegex = /.*[?+[\]!].*/; -// Checks that a paths of paths-ignore entry is valid, possibly modifying it -// to make it valid, or if not possible then throws an error. -function validateAndSanitisePath(originalPath, propertyName, configFile, logger) { - // Take a copy so we don't modify the original path, so we can still construct error messages - let newPath = originalPath; - // All paths are relative to the src root, so strip off leading slashes. - while (newPath.charAt(0) === "/") { - newPath = newPath.substring(1); - } - // Trailing ** are redundant, so strip them off - if (newPath.endsWith("/**")) { - newPath = newPath.substring(0, newPath.length - 2); - } - // An empty path is not allowed as it's meaningless - if (newPath === "") { - throw new util_1.UserError(getConfigFilePropertyError(configFile, propertyName, `"${originalPath}" is not an invalid path. ` + - `It is not necessary to include it, and it is not allowed to exclude it.`)); - } - // Check for illegal uses of ** - if (newPath.match(pathStarsRegex)) { - throw new util_1.UserError(getConfigFilePropertyError(configFile, propertyName, `"${originalPath}" contains an invalid "**" wildcard. ` + - `They must be immediately preceded and followed by a slash as in "/**/", or come at the start or end.`)); - } - // Check for other regex characters that we don't support. - // Output a warning so the user knows, but otherwise continue normally. - if (newPath.match(filterPatternCharactersRegex)) { - logger.warning(getConfigFilePropertyError(configFile, propertyName, `"${originalPath}" contains an unsupported character. ` + - `The filter pattern characters ?, +, [, ], ! are not supported and will be matched literally.`)); - } - // Ban any uses of backslash for now. - // This may not play nicely with project layouts. - // This restriction can be lifted later if we determine they are ok. - if (newPath.indexOf("\\") !== -1) { - throw new util_1.UserError(getConfigFilePropertyError(configFile, propertyName, `"${originalPath}" contains an "\\" character. These are not allowed in filters. ` + - `If running on windows we recommend using "/" instead for path filters.`)); - } - return newPath; -} -exports.validateAndSanitisePath = validateAndSanitisePath; -// An undefined configFile in some of these functions indicates that -// the property was in a workflow file, not a config file -function getNameInvalid(configFile) { - return getConfigFilePropertyError(configFile, NAME_PROPERTY, "must be a non-empty string"); -} -exports.getNameInvalid = getNameInvalid; -function getDisableDefaultQueriesInvalid(configFile) { - return getConfigFilePropertyError(configFile, DISABLE_DEFAULT_QUERIES_PROPERTY, "must be a boolean"); -} -exports.getDisableDefaultQueriesInvalid = getDisableDefaultQueriesInvalid; -function getQueriesInvalid(configFile) { - return getConfigFilePropertyError(configFile, QUERIES_PROPERTY, "must be an array"); -} -exports.getQueriesInvalid = getQueriesInvalid; -function getQueriesMissingUses(configFile) { - return getConfigFilePropertyError(configFile, QUERIES_PROPERTY, "must be an array, with each entry having a 'uses' property"); -} -exports.getQueriesMissingUses = getQueriesMissingUses; -function getQueryUsesInvalid(configFile, queryUses) { - return getConfigFilePropertyError(configFile, `${QUERIES_PROPERTY}.${QUERIES_USES_PROPERTY}`, `must be a built-in suite (${builtinSuites.join(" or ")}), a relative path, or be of the form "owner/repo[/path]@ref"${queryUses !== undefined ? `\n Found: ${queryUses}` : ""}`); -} -exports.getQueryUsesInvalid = getQueryUsesInvalid; -function getPathsIgnoreInvalid(configFile) { - return getConfigFilePropertyError(configFile, PATHS_IGNORE_PROPERTY, "must be an array of non-empty strings"); -} -exports.getPathsIgnoreInvalid = getPathsIgnoreInvalid; -function getPathsInvalid(configFile) { - return getConfigFilePropertyError(configFile, PATHS_PROPERTY, "must be an array of non-empty strings"); -} -exports.getPathsInvalid = getPathsInvalid; -function getPacksRequireLanguage(lang, configFile) { - return getConfigFilePropertyError(configFile, PACKS_PROPERTY, `has "${lang}", but it is not a valid language.`); -} -function getPacksInvalidSplit(configFile) { - return getConfigFilePropertyError(configFile, PACKS_PROPERTY, "must split packages by language"); -} -exports.getPacksInvalidSplit = getPacksInvalidSplit; -function getPacksInvalid(configFile) { - return getConfigFilePropertyError(configFile, PACKS_PROPERTY, "must be an array of non-empty strings"); -} -exports.getPacksInvalid = getPacksInvalid; function getPacksStrInvalid(packStr, configFile) { return configFile ? getConfigFilePropertyError(configFile, PACKS_PROPERTY, `"${packStr}" is not a valid pack`) : `"${packStr}" is not a valid pack`; } exports.getPacksStrInvalid = getPacksStrInvalid; -function getLocalPathOutsideOfRepository(configFile, localPath) { - return getConfigFilePropertyError(configFile, `${QUERIES_PROPERTY}.${QUERIES_USES_PROPERTY}`, `is invalid as the local path "${localPath}" is outside of the repository`); -} -exports.getLocalPathOutsideOfRepository = getLocalPathOutsideOfRepository; -function getLocalPathDoesNotExist(configFile, localPath) { - return getConfigFilePropertyError(configFile, `${QUERIES_PROPERTY}.${QUERIES_USES_PROPERTY}`, `is invalid as the local path "${localPath}" does not exist in the repository`); -} -exports.getLocalPathDoesNotExist = getLocalPathDoesNotExist; function getConfigFileOutsideWorkspaceErrorMessage(configFile) { return `The configuration file "${configFile}" is outside of the workspace`; } @@ -453,53 +209,15 @@ async function getRawLanguages(languagesInput, repository, logger) { return { rawLanguages, autodetected }; } exports.getRawLanguages = getRawLanguages; -async function addQueriesFromWorkflow(codeQL, queriesInput, languages, resultMap, workspacePath) { - queriesInput = queriesInput.trim(); - // "+" means "don't override config file" - see shouldAddConfigFileQueries - queriesInput = queriesInput.replace(/^\+/, ""); - for (const query of queriesInput.split(",")) { - await parseQueryUses(languages, codeQL, resultMap, query, workspacePath); - } -} -// Returns true if either no queries were provided in the workflow. -// or if the queries in the workflow were provided in "additive" mode, -// indicating that they shouldn't override the config queries but -// should instead be added in addition -function shouldAddConfigFileQueries(queriesInput) { - if (queriesInput) { - return queriesInput.trimStart().slice(0, 1) === "+"; - } - return true; -} /** * Get the default config for when the user has not supplied one. */ -async function getDefaultConfig(languagesInput, rawQueriesInput, rawPacksInput, dbLocation, trapCachingEnabled, debugMode, debugArtifactName, debugDatabaseName, repository, tempDir, codeQL, workspacePath, gitHubVersion, logger) { +async function getDefaultConfig(languagesInput, rawQueriesInput, rawPacksInput, dbLocation, trapCachingEnabled, debugMode, debugArtifactName, debugDatabaseName, repository, tempDir, codeQL, gitHubVersion, logger) { const languages = await getLanguages(codeQL, languagesInput, repository, logger); - const queries = {}; - for (const language of languages) { - queries[language] = { - builtin: [], - custom: [], - }; - } - await addDefaultQueries(codeQL, languages, queries); const augmentationProperties = calculateAugmentation(rawPacksInput, rawQueriesInput, languages); - const packs = augmentationProperties.packsInput - ? { - [languages[0]]: augmentationProperties.packsInput, - } - : {}; - if (rawQueriesInput) { - await addQueriesFromWorkflow(codeQL, rawQueriesInput, languages, queries, workspacePath); - } const { trapCaches, trapCacheDownloadTime } = await downloadCacheWithTime(trapCachingEnabled, codeQL, languages, logger); return { languages, - queries, - pathsIgnore: [], - paths: [], - packs, originalUserInput: {}, tempDir, codeQLCmd: codeQL.getPath(), @@ -537,87 +255,11 @@ async function loadConfig(languagesInput, rawQueriesInput, rawPacksInput, config else { parsedYAML = await getRemoteConfig(configFile, apiDetails); } - // Validate that the 'name' property is syntactically correct, - // even though we don't use the value yet. - if (NAME_PROPERTY in parsedYAML) { - if (typeof parsedYAML[NAME_PROPERTY] !== "string") { - throw new util_1.UserError(getNameInvalid(configFile)); - } - if (parsedYAML[NAME_PROPERTY].length === 0) { - throw new util_1.UserError(getNameInvalid(configFile)); - } - } const languages = await getLanguages(codeQL, languagesInput, repository, logger); - const queries = {}; - for (const language of languages) { - queries[language] = { - builtin: [], - custom: [], - }; - } - const pathsIgnore = []; - const paths = []; - let disableDefaultQueries = false; - if (DISABLE_DEFAULT_QUERIES_PROPERTY in parsedYAML) { - if (typeof parsedYAML[DISABLE_DEFAULT_QUERIES_PROPERTY] !== "boolean") { - throw new util_1.UserError(getDisableDefaultQueriesInvalid(configFile)); - } - disableDefaultQueries = parsedYAML[DISABLE_DEFAULT_QUERIES_PROPERTY]; - } - if (!disableDefaultQueries) { - await addDefaultQueries(codeQL, languages, queries); - } const augmentationProperties = calculateAugmentation(rawPacksInput, rawQueriesInput, languages); - const packs = parsePacks(parsedYAML[PACKS_PROPERTY] ?? {}, rawPacksInput, augmentationProperties.packsInputCombines, languages, configFile, logger); - // If queries were provided using `with` in the action configuration, - // they should take precedence over the queries in the config file - // unless they're prefixed with "+", in which case they supplement those - // in the config file. - if (rawQueriesInput) { - await addQueriesFromWorkflow(codeQL, rawQueriesInput, languages, queries, workspacePath); - } - if (shouldAddConfigFileQueries(rawQueriesInput) && - QUERIES_PROPERTY in parsedYAML) { - const queriesArr = parsedYAML[QUERIES_PROPERTY]; - if (!Array.isArray(queriesArr)) { - throw new util_1.UserError(getQueriesInvalid(configFile)); - } - for (const query of queriesArr) { - if (typeof query[QUERIES_USES_PROPERTY] !== "string") { - throw new util_1.UserError(getQueriesMissingUses(configFile)); - } - await parseQueryUses(languages, codeQL, queries, query[QUERIES_USES_PROPERTY], workspacePath, configFile); - } - } - if (PATHS_IGNORE_PROPERTY in parsedYAML) { - if (!Array.isArray(parsedYAML[PATHS_IGNORE_PROPERTY])) { - throw new util_1.UserError(getPathsIgnoreInvalid(configFile)); - } - for (const ignorePath of parsedYAML[PATHS_IGNORE_PROPERTY]) { - if (typeof ignorePath !== "string" || ignorePath === "") { - throw new util_1.UserError(getPathsIgnoreInvalid(configFile)); - } - pathsIgnore.push(validateAndSanitisePath(ignorePath, PATHS_IGNORE_PROPERTY, configFile, logger)); - } - } - if (PATHS_PROPERTY in parsedYAML) { - if (!Array.isArray(parsedYAML[PATHS_PROPERTY])) { - throw new util_1.UserError(getPathsInvalid(configFile)); - } - for (const includePath of parsedYAML[PATHS_PROPERTY]) { - if (typeof includePath !== "string" || includePath === "") { - throw new util_1.UserError(getPathsInvalid(configFile)); - } - paths.push(validateAndSanitisePath(includePath, PATHS_PROPERTY, configFile, logger)); - } - } const { trapCaches, trapCacheDownloadTime } = await downloadCacheWithTime(trapCachingEnabled, codeQL, languages, logger); return { languages, - queries, - pathsIgnore, - paths, - packs, originalUserInput: parsedYAML, tempDir, codeQLCmd: codeQL.getPath(), @@ -686,41 +328,6 @@ const PACK_IDENTIFIER_PATTERN = (function () { return new RegExp(`^${component}/${component}$`); })(); // Exported for testing -function parsePacksFromConfig(packsByLanguage, languages, configFile, logger) { - const packs = {}; - if (Array.isArray(packsByLanguage)) { - if (languages.length === 1) { - // single language analysis, so language is implicit - packsByLanguage = { - [languages[0]]: packsByLanguage, - }; - } - else { - // this is an error since multi-language analysis requires - // packs split by language - throw new util_1.UserError(getPacksInvalidSplit(configFile)); - } - } - for (const [lang, packsArr] of Object.entries(packsByLanguage)) { - if (!Array.isArray(packsArr)) { - throw new util_1.UserError(getPacksInvalid(configFile)); - } - if (!languages.includes(lang)) { - // This particular language is not being analyzed in this run. - if (languages_1.Language[lang]) { - logger.info(`Ignoring packs for ${lang} since this language is not being analyzed in this run.`); - continue; - } - else { - // This language is invalid, probably a misspelling - throw new util_1.UserError(getPacksRequireLanguage(configFile, lang)); - } - } - packs[lang] = packsArr.map((packStr) => validatePackSpecification(packStr, configFile)); - } - return packs; -} -exports.parsePacksFromConfig = parsePacksFromConfig; function parsePacksFromInput(rawPacksInput, languages, packsInputCombines) { if (!rawPacksInput?.trim()) { return undefined; @@ -740,11 +347,12 @@ function parsePacksFromInput(rawPacksInput, languages, packsInputCombines) { } return { [languages[0]]: rawPacksInput.split(",").reduce((packs, pack) => { - packs.push(validatePackSpecification(pack, "")); + packs.push(validatePackSpecification(pack)); return packs; }, []), }; } +exports.parsePacksFromInput = parsePacksFromInput; /** * Validates that this package specification is syntactically correct. * It may not point to any real package, but after this function returns @@ -763,9 +371,9 @@ function parsePacksFromInput(rawPacksInput, languages, packsInputCombines) { * @param packStr the package specification to verify. * @param configFile Config file to use for error reporting */ -function parsePacksSpecification(packStr, configFile) { +function parsePacksSpecification(packStr) { if (typeof packStr !== "string") { - throw new util_1.UserError(getPacksStrInvalid(packStr, configFile)); + throw new util_1.UserError(getPacksStrInvalid(packStr)); } packStr = packStr.trim(); const atIndex = packStr.indexOf("@"); @@ -786,7 +394,7 @@ function parsePacksSpecification(packStr, configFile) { ? packStr.slice(pathStart, pathEnd).trim() : undefined; if (!PACK_IDENTIFIER_PATTERN.test(packName)) { - throw new util_1.UserError(getPacksStrInvalid(packStr, configFile)); + throw new util_1.UserError(getPacksStrInvalid(packStr)); } if (version) { try { @@ -794,7 +402,7 @@ function parsePacksSpecification(packStr, configFile) { } catch (e) { // The range string is invalid. OK to ignore the caught error - throw new util_1.UserError(getPacksStrInvalid(packStr, configFile)); + throw new util_1.UserError(getPacksStrInvalid(packStr)); } } if (packPath && @@ -805,11 +413,11 @@ function parsePacksSpecification(packStr, configFile) { // which seems more awkward. path.normalize(packPath).split(path.sep).join("/") !== packPath.split(path.sep).join("/"))) { - throw new util_1.UserError(getPacksStrInvalid(packStr, configFile)); + throw new util_1.UserError(getPacksStrInvalid(packStr)); } if (!packPath && pathStart) { // 0 length path - throw new util_1.UserError(getPacksStrInvalid(packStr, configFile)); + throw new util_1.UserError(getPacksStrInvalid(packStr)); } return { name: packName, @@ -818,26 +426,10 @@ function parsePacksSpecification(packStr, configFile) { }; } exports.parsePacksSpecification = parsePacksSpecification; -function validatePackSpecification(pack, configFile) { - return (0, util_1.prettyPrintPack)(parsePacksSpecification(pack, configFile)); +function validatePackSpecification(pack) { + return (0, util_1.prettyPrintPack)(parsePacksSpecification(pack)); } exports.validatePackSpecification = validatePackSpecification; -// exported for testing -function parsePacks(rawPacksFromConfig, rawPacksFromInput, packsInputCombines, languages, configFile, logger) { - const packsFomConfig = parsePacksFromConfig(rawPacksFromConfig, languages, configFile, logger); - const packsFromInput = parsePacksFromInput(rawPacksFromInput, languages, packsInputCombines); - if (!packsFromInput) { - return packsFomConfig; - } - if (!packsInputCombines) { - if (!packsFromInput) { - throw new util_1.UserError(getPacksInvalid(configFile)); - } - return packsFromInput; - } - return combinePacks(packsFromInput, packsFomConfig); -} -exports.parsePacks = parsePacks; /** * The convention in this action is that an input value that is prefixed with a '+' will * be combined with the corresponding value in the config file. @@ -851,18 +443,6 @@ exports.parsePacks = parsePacks; function shouldCombine(inputValue) { return !!inputValue?.trim().startsWith("+"); } -function combinePacks(packs1, packs2) { - const packs = {}; - for (const lang of Object.keys(packs1)) { - packs[lang] = packs1[lang].concat(packs2[lang] || []); - } - for (const lang of Object.keys(packs2)) { - if (!packs[lang]) { - packs[lang] = packs2[lang]; - } - } - return packs; -} function dbLocationOrDefault(dbLocation, tempDir) { return dbLocation || path.resolve(tempDir, "codeql_databases"); } @@ -886,7 +466,7 @@ async function initConfig(languagesInput, queriesInput, packsInput, configFile, // If no config file was provided create an empty one if (!configFile) { logger.debug("No configuration file was provided"); - config = await getDefaultConfig(languagesInput, queriesInput, packsInput, dbLocation, trapCachingEnabled, debugMode, debugArtifactName, debugDatabaseName, repository, tempDir, codeQL, workspacePath, gitHubVersion, logger); + config = await getDefaultConfig(languagesInput, queriesInput, packsInput, dbLocation, trapCachingEnabled, debugMode, debugArtifactName, debugDatabaseName, repository, tempDir, codeQL, gitHubVersion, logger); } else { config = await loadConfig(languagesInput, queriesInput, packsInput, configFile, dbLocation, trapCachingEnabled, debugMode, debugArtifactName, debugDatabaseName, repository, tempDir, codeQL, workspacePath, gitHubVersion, apiDetails, logger); diff --git a/lib/config-utils.js.map b/lib/config-utils.js.map index 5395be9e6..4ce57a473 100644 --- a/lib/config-utils.js.map +++ b/lib/config-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../src/config-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../src/config-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config-utils.test.js b/lib/config-utils.test.js index 6063d791f..6a80895e2 100644 --- a/lib/config-utils.test.js +++ b/lib/config-utils.test.js @@ -102,7 +102,7 @@ function mockListLanguages(languages) { }, }); const config = await configUtils.initConfig(languages, undefined, undefined, undefined, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, logger); - t.deepEqual(config, await configUtils.getDefaultConfig(languages, undefined, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, logger)); + t.deepEqual(config, await configUtils.getDefaultConfig(languages, undefined, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, gitHubVersion, logger)); }); }); (0, ava_1.default)("loading config saves config", async (t) => { @@ -212,19 +212,6 @@ function mockListLanguages(languages) { // And the config we expect it to parse to const expectedConfig = { languages: [languages_1.Language.javascript], - queries: { - javascript: { - builtin: [], - custom: [ - { - queries: ["/foo/a.ql", "/bar/b.ql"], - searchPath: tmpDir, - }, - ], - }, - }, - pathsIgnore: ["a", "b"], - paths: ["c/d"], originalUserInput: { name: "my config", "disable-default-queries": true, @@ -236,7 +223,6 @@ function mockListLanguages(languages) { codeQLCmd: codeQL.getPath(), gitHubVersion, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: "my-artifact", debugDatabaseName: "my-db", @@ -251,49 +237,6 @@ function mockListLanguages(languages) { t.deepEqual(actualConfig, expectedConfig); }); }); -(0, ava_1.default)("Default queries are used", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - // Check that the default behaviour is to add the default queries. - // In this case if a config file is specified but does not include - // the disable-default-queries field. - // We determine this by whether CodeQL.resolveQueries is called - // with the correct arguments. - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return { - byLanguage: { - javascript: { - "foo.ql": {}, - }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, - }); - // The important point of this config is that it doesn't specify - // the disable-default-queries field. - // Any other details are hopefully irrelevant for this test. - const inputFileContents = ` - paths: - - foo`; - fs.mkdirSync(path.join(tmpDir, "foo")); - const languages = "javascript"; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - await configUtils.initConfig(languages, undefined, undefined, configFilePath, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolve queries was called correctly - t.deepEqual(resolveQueriesArgs.length, 1); - t.deepEqual(resolveQueriesArgs[0].queries, [ - "javascript-code-scanning.qls", - ]); - t.deepEqual(resolveQueriesArgs[0].extraSearchPath, undefined); - }); -}); /** * Returns the provided queries, just in the right format for a resolved query * This way we can test by seeing which returned items are in the final @@ -312,230 +255,6 @@ function queriesToResolvedQueryForm(queries) { multipleDeclaredLanguages: {}, }; } -(0, ava_1.default)("Queries can be specified in config file", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - const inputFileContents = ` - name: my config - queries: - - uses: ./foo`; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - fs.mkdirSync(path.join(tmpDir, "foo")); - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, - }); - const languages = "javascript"; - const config = await configUtils.initConfig(languages, undefined, undefined, configFilePath, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly - // It'll be called once for the default queries - // and once for `./foo` from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}foo`)); - // Now check that the end result contains the default queries and the query from config - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true(config.queries["javascript"].builtin[0].endsWith("javascript-code-scanning.qls")); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}foo`)); - }); -}); -(0, ava_1.default)("Queries from config file can be overridden in workflow file", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - const inputFileContents = ` - name: my config - queries: - - uses: ./foo`; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - // This config item should take precedence over the config file but shouldn't affect the default queries. - const testQueries = "./override"; - fs.mkdirSync(path.join(tmpDir, "foo")); - fs.mkdirSync(path.join(tmpDir, "override")); - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, - }); - const languages = "javascript"; - const config = await configUtils.initConfig(languages, testQueries, undefined, configFilePath, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly - // It'll be called once for the default queries and once for `./override`, - // but won't be called for './foo' from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}override`)); - // Now check that the end result contains only the default queries and the override query - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true(config.queries["javascript"].builtin[0].endsWith("javascript-code-scanning.qls")); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}override`)); - }); -}); -(0, ava_1.default)("Queries in workflow file can be used in tandem with the 'disable default queries' option", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - process.env["RUNNER_TEMP"] = tmpDir; - process.env["GITHUB_WORKSPACE"] = tmpDir; - const inputFileContents = ` - name: my config - disable-default-queries: true`; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - const testQueries = "./workflow-query"; - fs.mkdirSync(path.join(tmpDir, "workflow-query")); - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, - }); - const languages = "javascript"; - const config = await configUtils.initConfig(languages, testQueries, undefined, configFilePath, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly - // It'll be called once for `./workflow-query`, - // but won't be called for the default one since that was disabled - t.deepEqual(resolveQueriesArgs.length, 1); - t.deepEqual(resolveQueriesArgs[0].queries.length, 1); - t.true(resolveQueriesArgs[0].queries[0].endsWith(`${path.sep}workflow-query`)); - // Now check that the end result contains only the workflow query, and not the default one - t.deepEqual(config.queries["javascript"].builtin.length, 0); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}workflow-query`)); - }); -}); -(0, ava_1.default)("Multiple queries can be specified in workflow file, no config file required", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - fs.mkdirSync(path.join(tmpDir, "override1")); - fs.mkdirSync(path.join(tmpDir, "override2")); - const testQueries = "./override1,./override2"; - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, - }); - const languages = "javascript"; - const config = await configUtils.initConfig(languages, testQueries, undefined, undefined, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly: - // It'll be called once for the default queries, - // and then once for each of the two queries from the workflow - t.deepEqual(resolveQueriesArgs.length, 3); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.deepEqual(resolveQueriesArgs[2].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}override1`)); - t.true(resolveQueriesArgs[2].queries[0].endsWith(`${path.sep}override2`)); - // Now check that the end result contains both the queries from the workflow, as well as the defaults - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 2); - t.true(config.queries["javascript"].builtin[0].endsWith("javascript-code-scanning.qls")); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}override1`)); - t.true(config.queries["javascript"].custom[1].queries[0].endsWith(`${path.sep}override2`)); - }); -}); -(0, ava_1.default)("Queries in workflow file can be added to the set of queries without overriding config file", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - process.env["RUNNER_TEMP"] = tmpDir; - process.env["GITHUB_WORKSPACE"] = tmpDir; - const inputFileContents = ` - name: my config - queries: - - uses: ./foo`; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - // These queries shouldn't override anything, because the value is prefixed with "+" - const testQueries = "+./additional1,./additional2"; - fs.mkdirSync(path.join(tmpDir, "foo")); - fs.mkdirSync(path.join(tmpDir, "additional1")); - fs.mkdirSync(path.join(tmpDir, "additional2")); - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, - }); - const languages = "javascript"; - const config = await configUtils.initConfig(languages, testQueries, undefined, configFilePath, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly - // It'll be called once for the default queries, - // once for each of additional1 and additional2, - // and once for './foo' from the config file - t.deepEqual(resolveQueriesArgs.length, 4); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}additional1`)); - t.deepEqual(resolveQueriesArgs[2].queries.length, 1); - t.true(resolveQueriesArgs[2].queries[0].endsWith(`${path.sep}additional2`)); - t.deepEqual(resolveQueriesArgs[3].queries.length, 1); - t.true(resolveQueriesArgs[3].queries[0].endsWith(`${path.sep}foo`)); - // Now check that the end result contains all the queries - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 3); - t.true(config.queries["javascript"].builtin[0].endsWith("javascript-code-scanning.qls")); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}additional1`)); - t.true(config.queries["javascript"].custom[1].queries[0].endsWith(`${path.sep}additional2`)); - t.true(config.queries["javascript"].custom[2].queries[0].endsWith(`${path.sep}foo`)); - }); -}); -(0, ava_1.default)("Queries can be specified using config input", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - const configInput = ` - name: my config - queries: - - uses: ./foo - packs: - javascript: - - a/b@1.2.3 - python: - - c/d@1.2.3 - `; - fs.mkdirSync(path.join(tmpDir, "foo")); - const resolveQueriesArgs = []; - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, - }); - // Only JS, python packs will be ignored - const languages = "javascript"; - const config = await configUtils.initConfig(languages, undefined, undefined, undefined, undefined, configInput, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly - // It'll be called once for the default queries - // and once for `./foo` from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}foo`)); - t.deepEqual(config.packs, { - [languages_1.Language.javascript]: ["a/b@1.2.3"], - }); - // Now check that the end result contains the default queries and the query from config - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true(config.queries["javascript"].builtin[0].endsWith("javascript-code-scanning.qls")); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}foo`)); - }); -}); (0, ava_1.default)("Using config input and file together, config input should be used.", async (t) => { return await (0, util_1.withTmpDir)(async (tmpDir) => { process.env["RUNNER_TEMP"] = tmpDir; @@ -569,20 +288,7 @@ function queriesToResolvedQueryForm(queries) { // Only JS, python packs will be ignored const languages = "javascript"; const config = await configUtils.initConfig(languages, undefined, undefined, undefined, configFilePath, configInput, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - // Check resolveQueries was called correctly - // It'll be called once for the default queries - // and once for `./foo` from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}foo`)); - t.deepEqual(config.packs, { - [languages_1.Language.javascript]: ["a/b@1.2.3"], - }); - // Now check that the end result contains the default queries and the query from config - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true(config.queries["javascript"].builtin[0].endsWith("javascript-code-scanning.qls")); - t.true(config.queries["javascript"].custom[0].queries[0].endsWith(`${path.sep}foo`)); + t.deepEqual(config.originalUserInput, yaml.load(configInput)); }); }); (0, ava_1.default)("API client used when reading remote config", async (t) => { @@ -689,190 +395,18 @@ function queriesToResolvedQueryForm(queries) { } }); }); -(0, ava_1.default)("Config specifies packages", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries() { - return { - byLanguage: {}, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, - }); - const inputFileContents = ` - name: my config - disable-default-queries: true - packs: - - a/b@1.2.3 - `; - const configFile = path.join(tmpDir, "codeql-config.yaml"); - fs.writeFileSync(configFile, inputFileContents); - const languages = "javascript"; - const { packs } = await configUtils.initConfig(languages, undefined, undefined, configFile, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - t.deepEqual(packs, { - [languages_1.Language.javascript]: ["a/b@1.2.3"], - }); - }); -}); -(0, ava_1.default)("Config specifies packages for multiple languages", async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries() { - return { - byLanguage: { - cpp: { "/foo/a.ql": {} }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, - }); - const inputFileContents = ` - name: my config - disable-default-queries: true - queries: - - uses: ./foo - packs: - javascript: - - a/b@1.2.3 - python: - - c/d@1.2.3 - `; - const configFile = path.join(tmpDir, "codeql-config.yaml"); - fs.writeFileSync(configFile, inputFileContents); - fs.mkdirSync(path.join(tmpDir, "foo")); - const languages = "javascript,python,cpp"; - const { packs, queries } = await configUtils.initConfig(languages, undefined, undefined, configFile, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - t.deepEqual(packs, { - [languages_1.Language.javascript]: ["a/b@1.2.3"], - [languages_1.Language.python]: ["c/d@1.2.3"], - }); - t.deepEqual(queries, { - cpp: { - builtin: [], - custom: [ - { - queries: ["/foo/a.ql"], - searchPath: tmpDir, - }, - ], - }, - javascript: { - builtin: [], - custom: [], - }, - python: { - builtin: [], - custom: [], - }, - }); - }); -}); -function doInvalidInputTest(testName, inputFileContents, expectedErrorMessageGenerator) { - (0, ava_1.default)(`load invalid input - ${testName}`, async (t) => { - return await (0, util_1.withTmpDir)(async (tmpDir) => { - const codeQL = (0, codeql_1.setCodeQL)({ - async resolveQueries() { - return { - byLanguage: {}, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, - }); - const languages = "javascript"; - const configFile = "input"; - const inputFile = path.join(tmpDir, configFile); - fs.writeFileSync(inputFile, inputFileContents, "utf8"); - try { - await configUtils.initConfig(languages, undefined, undefined, configFile, undefined, undefined, false, false, "", "", { owner: "github", repo: "example" }, tmpDir, codeQL, tmpDir, gitHubVersion, sampleApiDetails, (0, logging_1.getRunnerLogger)(true)); - throw new Error("initConfig did not throw error"); - } - catch (err) { - t.deepEqual(err, new util_1.UserError(expectedErrorMessageGenerator(inputFile))); - } - }); - }); -} -doInvalidInputTest("name invalid type", ` - name: - - foo: bar`, configUtils.getNameInvalid); -doInvalidInputTest("disable-default-queries invalid type", `disable-default-queries: 42`, configUtils.getDisableDefaultQueriesInvalid); -doInvalidInputTest("queries invalid type", `queries: foo`, configUtils.getQueriesInvalid); -doInvalidInputTest("paths-ignore invalid type", `paths-ignore: bar`, configUtils.getPathsIgnoreInvalid); -doInvalidInputTest("paths invalid type", `paths: 17`, configUtils.getPathsInvalid); -doInvalidInputTest("queries uses invalid type", ` - queries: - - uses: - - hello: world`, configUtils.getQueriesMissingUses); -function doInvalidQueryUsesTest(input, expectedErrorMessageGenerator) { - // Invalid contents of a "queries.uses" field. - // Should fail with the expected error message - const inputFileContents = ` - name: my config - queries: - - name: foo - uses: ${input}`; - doInvalidInputTest(`queries uses "${input}"`, inputFileContents, expectedErrorMessageGenerator); -} -// Various "uses" fields, and the errors they should produce -doInvalidQueryUsesTest("''", (c) => configUtils.getQueryUsesInvalid(c, undefined)); -doInvalidQueryUsesTest("./foo", (c) => configUtils.getLocalPathDoesNotExist(c, "foo")); -doInvalidQueryUsesTest("./..", (c) => configUtils.getLocalPathOutsideOfRepository(c, "..")); -const validPaths = [ - "foo", - "foo/", - "foo/**", - "foo/**/", - "foo/**/**", - "foo/**/bar/**/baz", - "**/", - "**/foo", - "/foo", -]; -const invalidPaths = ["a/***/b", "a/**b", "a/b**", "**"]; -(0, ava_1.default)("path validations", (t) => { - // Dummy values to pass to validateAndSanitisePath - const propertyName = "paths"; - const configFile = "./.github/codeql/config.yml"; - for (const validPath of validPaths) { - t.truthy(configUtils.validateAndSanitisePath(validPath, propertyName, configFile, (0, logging_1.getRunnerLogger)(true))); - } - for (const invalidPath of invalidPaths) { - t.throws(() => configUtils.validateAndSanitisePath(invalidPath, propertyName, configFile, (0, logging_1.getRunnerLogger)(true))); - } -}); -(0, ava_1.default)("path sanitisation", (t) => { - // Dummy values to pass to validateAndSanitisePath - const propertyName = "paths"; - const configFile = "./.github/codeql/config.yml"; - // Valid paths are not modified - t.deepEqual(configUtils.validateAndSanitisePath("foo/bar", propertyName, configFile, (0, logging_1.getRunnerLogger)(true)), "foo/bar"); - // Trailing stars are stripped - t.deepEqual(configUtils.validateAndSanitisePath("foo/**", propertyName, configFile, (0, logging_1.getRunnerLogger)(true)), "foo/"); -}); /** * Test macro for ensuring the packs block is valid */ const parsePacksMacro = ava_1.default.macro({ - exec: (t, packsByLanguage, languages, expected) => t.deepEqual(configUtils.parsePacksFromConfig(packsByLanguage, languages, "/a/b", mockLogger), expected), + exec: (t, packsInput, languages, expected) => t.deepEqual(configUtils.parsePacksFromInput(packsInput, languages, false), expected), title: (providedTitle = "") => `Parse Packs: ${providedTitle}`, }); /** * Test macro for testing when the packs block is invalid */ const parsePacksErrorMacro = ava_1.default.macro({ - exec: (t, packsByLanguage, languages, expected) => t.throws(() => configUtils.parsePacksFromConfig(packsByLanguage, languages, "/a/b", {}), { + exec: (t, packsInput, languages, expected) => t.throws(() => configUtils.parsePacksFromInput(packsInput, languages, false), { message: expected, }), title: (providedTitle = "") => `Parse Packs Error: ${providedTitle}`, @@ -881,29 +415,18 @@ const parsePacksErrorMacro = ava_1.default.macro({ * Test macro for testing when the packs block is invalid */ const invalidPackNameMacro = ava_1.default.macro({ - exec: (t, name) => parsePacksErrorMacro.exec(t, { [languages_1.Language.cpp]: [name] }, [languages_1.Language.cpp], new RegExp(`The configuration file "/a/b" is invalid: property "packs" "${name}" is not a valid pack`)), + exec: (t, name) => parsePacksErrorMacro.exec(t, name, [languages_1.Language.cpp], new RegExp(`^"${name}" is not a valid pack$`)), title: (_providedTitle, arg) => `Invalid pack string: ${arg}`, }); -(0, ava_1.default)("no packs", parsePacksMacro, {}, [], {}); -(0, ava_1.default)("two packs", parsePacksMacro, ["a/b", "c/d@1.2.3"], [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], -}); -(0, ava_1.default)("two packs with spaces", parsePacksMacro, [" a/b ", " c/d@1.2.3 "], [languages_1.Language.cpp], { +(0, ava_1.default)("no packs", parsePacksMacro, "", [], undefined); +(0, ava_1.default)("two packs", parsePacksMacro, "a/b,c/d@1.2.3", [languages_1.Language.cpp], { [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], }); -(0, ava_1.default)("two packs with language", parsePacksMacro, { - [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], - [languages_1.Language.java]: ["d/e", "f/g@1.2.3"], -}, [languages_1.Language.cpp, languages_1.Language.java, languages_1.Language.csharp], { - [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], - [languages_1.Language.java]: ["d/e", "f/g@1.2.3"], -}); -(0, ava_1.default)("two packs with unused language in config", parsePacksMacro, { - [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], - [languages_1.Language.java]: ["d/e", "f/g@1.2.3"], -}, [languages_1.Language.cpp, languages_1.Language.csharp], { +(0, ava_1.default)("two packs with spaces", parsePacksMacro, " a/b , c/d@1.2.3 ", [languages_1.Language.cpp], { [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], }); +(0, ava_1.default)("two packs with language", parsePacksErrorMacro, "a/b,c/d@1.2.3", [languages_1.Language.cpp, languages_1.Language.java], new RegExp("Cannot specify a 'packs' input in a multi-language analysis. " + + "Use a codeql-config.yml file instead and specify packs by language.")); (0, ava_1.default)("packs with other valid names", parsePacksMacro, [ // ranges are ok "c/d@1.0", @@ -921,7 +444,7 @@ const invalidPackNameMacro = ava_1.default.macro({ // this is valid, too. It will fail if it doesn't match a path // (globbing is not done) "c/d@1.2.3:+*)_(", -], [languages_1.Language.cpp], { +].join(","), [languages_1.Language.cpp], { [languages_1.Language.cpp]: [ "c/d@1.0", "c/d@~1.0.0", @@ -935,8 +458,6 @@ const invalidPackNameMacro = ava_1.default.macro({ "c/d@1.2.3:+*)_(", ], }); -(0, ava_1.default)("no language", parsePacksErrorMacro, ["a/b@1.2.3"], [languages_1.Language.java, languages_1.Language.python], /The configuration file "\/a\/b" is invalid: property "packs" must split packages by language/); -(0, ava_1.default)("not an array", parsePacksErrorMacro, { [languages_1.Language.cpp]: "c/d" }, [languages_1.Language.cpp], /The configuration file "\/a\/b" is invalid: property "packs" must be an array of non-empty strings/); (0, ava_1.default)(invalidPackNameMacro, "c"); // all packs require at least a scope and a name (0, ava_1.default)(invalidPackNameMacro, "c-/d"); (0, ava_1.default)(invalidPackNameMacro, "-c/d"); @@ -989,45 +510,7 @@ const packSpecPrettyPrintingMacro = ava_1.default.macro({ version: undefined, path: "abc/def", }); -/** - * Test macro for testing the packs block and the packs input - */ -function parseInputAndConfigMacro(t, packsFromConfig, packsFromInput, languages, expected) { - t.deepEqual(configUtils.parsePacks(packsFromConfig, packsFromInput, !!packsFromInput?.trim().startsWith("+"), // coerce to boolean - languages, "/a/b", mockLogger), expected); -} -parseInputAndConfigMacro.title = (providedTitle) => `Parse Packs input and config: ${providedTitle}`; const mockLogger = (0, logging_1.getRunnerLogger)(true); -function parseInputAndConfigErrorMacro(t, packsFromConfig, packsFromInput, languages, packsFromInputOverride, expected) { - t.throws(() => { - configUtils.parsePacks(packsFromConfig, packsFromInput, packsFromInputOverride, languages, "/a/b", mockLogger); - }, { - message: expected, - }); -} -parseInputAndConfigErrorMacro.title = (providedTitle) => `Parse Packs input and config Error: ${providedTitle}`; -(0, ava_1.default)("input only", parseInputAndConfigMacro, {}, " c/d ", [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["c/d"], -}); -(0, ava_1.default)("input only with multiple", parseInputAndConfigMacro, {}, "a/b , c/d@1.2.3", [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], -}); -(0, ava_1.default)("input only with +", parseInputAndConfigMacro, {}, " + a/b , c/d@1.2.3 ", [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["a/b", "c/d@1.2.3"], -}); -(0, ava_1.default)("config only", parseInputAndConfigMacro, ["a/b", "c/d"], " ", [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["a/b", "c/d"], -}); -(0, ava_1.default)("input overrides", parseInputAndConfigMacro, ["a/b", "c/d"], " e/f, g/h@1.2.3 ", [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["e/f", "g/h@1.2.3"], -}); -(0, ava_1.default)("input and config", parseInputAndConfigMacro, ["a/b", "c/d"], " +e/f, g/h@1.2.3 ", [languages_1.Language.cpp], { - [languages_1.Language.cpp]: ["e/f", "g/h@1.2.3", "a/b", "c/d"], -}); -(0, ava_1.default)("input with no language", parseInputAndConfigErrorMacro, {}, "c/d", [], false, /No languages specified/); -(0, ava_1.default)("input with two languages", parseInputAndConfigErrorMacro, {}, "c/d", [languages_1.Language.cpp, languages_1.Language.csharp], false, /multi-language analysis/); -(0, ava_1.default)("input with + only", parseInputAndConfigErrorMacro, {}, " + ", [languages_1.Language.cpp], true, /remove the '\+'/); -(0, ava_1.default)("input with invalid pack name", parseInputAndConfigErrorMacro, {}, " xxx", [languages_1.Language.cpp], false, /"xxx" is not a valid pack/); const calculateAugmentationMacro = ava_1.default.macro({ exec: async (t, _title, rawPacksInput, rawQueriesInput, languages, expectedAugmentationProperties) => { const actualAugmentationProperties = configUtils.calculateAugmentation(rawPacksInput, rawQueriesInput, languages); diff --git a/lib/config-utils.test.js.map b/lib/config-utils.test.js.map index 5d0eca10f..b56e239b1 100644 --- a/lib/config-utils.test.js.map +++ b/lib/config-utils.test.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/database-upload.test.js b/lib/database-upload.test.js index 88aa0f9fa..9d326cbe0 100644 --- a/lib/database-upload.test.js +++ b/lib/database-upload.test.js @@ -51,15 +51,11 @@ const testApiDetails = { function getTestConfig(tmpDir) { return { languages: [languages_1.Language.javascript], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "foo", gitHubVersion: { type: util_1.GitHubVariant.DOTCOM }, dbLocation: tmpDir, - packs: {}, debugMode: false, debugArtifactName: util_1.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util_1.DEFAULT_DEBUG_DATABASE_NAME, diff --git a/lib/database-upload.test.js.map b/lib/database-upload.test.js.map index e351e6576..a362db8df 100644 --- a/lib/database-upload.test.js.map +++ b/lib/database-upload.test.js.map @@ -1 +1 @@ -{"version":3,"file":"database-upload.test.js","sourceRoot":"","sources":["../src/database-upload.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"database-upload.test.js","sourceRoot":"","sources":["../src/database-upload.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init.js b/lib/init.js index 07e1294ec..794956d59 100644 --- a/lib/init.js +++ b/lib/init.js @@ -69,7 +69,8 @@ exports.runInit = runInit; function printPathFiltersWarning(config, logger) { // Index include/exclude/filters only work in javascript/python/ruby. // If any other languages are detected/configured then show a warning. - if ((config.paths.length !== 0 || config.pathsIgnore.length !== 0) && + if ((config.originalUserInput.paths?.length !== 0 || + config.originalUserInput["paths-ignore"]?.length !== 0) && !config.languages.every(languages_1.isScannedLanguage)) { logger.warning('The "paths"/"paths-ignore" fields of the config only have effect for JavaScript, Python, and Ruby'); } diff --git a/lib/init.js.map b/lib/init.js.map index a68ea5ae9..4ff86236d 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/tracer-config.test.js b/lib/tracer-config.test.js index 6d21e33a1..2c79761db 100644 --- a/lib/tracer-config.test.js +++ b/lib/tracer-config.test.js @@ -38,15 +38,11 @@ const util = __importStar(require("./util")); function getTestConfig(tmpDir) { return { languages: [languages_1.Language.java], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "", gitHubVersion: { type: util.GitHubVariant.DOTCOM }, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, diff --git a/lib/tracer-config.test.js.map b/lib/tracer-config.test.js.map index 59870c25c..910e40ede 100644 --- a/lib/tracer-config.test.js.map +++ b/lib/tracer-config.test.js.map @@ -1 +1 @@ -{"version":3,"file":"tracer-config.test.js","sourceRoot":"","sources":["../src/tracer-config.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"tracer-config.test.js","sourceRoot":"","sources":["../src/tracer-config.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/trap-caching.test.js b/lib/trap-caching.test.js index 11d8fd6dc..d5f5822c7 100644 --- a/lib/trap-caching.test.js +++ b/lib/trap-caching.test.js @@ -80,9 +80,6 @@ const stubCodeql = (0, codeql_1.setCodeQL)({ }); const testConfigWithoutTmpDir = { languages: [languages_1.Language.javascript, languages_1.Language.cpp], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: "", codeQLCmd: "", @@ -90,7 +87,6 @@ const testConfigWithoutTmpDir = { type: util.GitHubVariant.DOTCOM, }, dbLocation: "", - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, @@ -106,15 +102,11 @@ const testConfigWithoutTmpDir = { function getTestConfigWithTempDir(tmpDir) { return { languages: [languages_1.Language.javascript, languages_1.Language.ruby], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "", gitHubVersion: { type: util.GitHubVariant.DOTCOM }, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, diff --git a/lib/trap-caching.test.js.map b/lib/trap-caching.test.js.map index c000cdd39..8f1b7f922 100644 --- a/lib/trap-caching.test.js.map +++ b/lib/trap-caching.test.js.map @@ -1 +1 @@ -{"version":3,"file":"trap-caching.test.js","sourceRoot":"","sources":["../src/trap-caching.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"trap-caching.test.js","sourceRoot":"","sources":["../src/trap-caching.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,sDAAwC;AACxC,8CAAuB;AACvB,6CAA+B;AAE/B,4DAA8C;AAC9C,qCAIkB;AAGlB,2CAAuC;AACvC,mDAIyB;AACzB,iDAIwB;AACxB,6CAA+B;AAE/B,IAAA,0BAAU,EAAC,aAAI,CAAC,CAAC;AAEjB,MAAM,UAAU,GAAG,IAAA,kBAAS,EAAC;IAC3B,KAAK,CAAC,UAAU;QACd,OAAO,IAAA,+BAAe,EAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,KAAK,CAAC,sBAAsB;QAC1B,OAAO;YACL,UAAU,EAAE;gBACV,CAAC,oBAAQ,CAAC,UAAU,CAAC,EAAE;oBACrB;wBACE,cAAc,EAAE,WAAW;wBAC3B,iBAAiB,EAAE;4BACjB,IAAI,EAAE;gCACJ,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,UAAU,EAAE;4CACV,GAAG,EAAE;gDACH,KAAK,EAAE,iBAAiB;6CACzB;4CACD,KAAK,EAAE;gDACL,KAAK,EAAE,aAAa;6CACrB;4CACD,KAAK,EAAE;gDACL,KAAK,EAAE,aAAa;6CACrB;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;gBACD,CAAC,oBAAQ,CAAC,GAAG,CAAC,EAAE;oBACd;wBACE,cAAc,EAAE,YAAY;qBAC7B;iBACF;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAW;IACtC,SAAS,EAAE,CAAC,oBAAQ,CAAC,UAAU,EAAE,oBAAQ,CAAC,GAAG,CAAC;IAC9C,iBAAiB,EAAE,EAAE;IACrB,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,aAAa,EAAE;QACb,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;KACV;IACvB,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,KAAK;IAChB,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;IACnD,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;IACnD,sBAAsB,EAAE;QACtB,kBAAkB,EAAE,KAAK;QACzB,oBAAoB,EAAE,KAAK;KAC5B;IACD,UAAU,EAAE;QACV,UAAU,EAAE,iBAAiB;KAC9B;IACD,qBAAqB,EAAE,CAAC;CACzB,CAAC;AAEF,SAAS,wBAAwB,CAAC,MAAc;IAC9C,OAAO;QACL,SAAS,EAAE,CAAC,oBAAQ,CAAC,UAAU,EAAE,oBAAQ,CAAC,IAAI,CAAC;QAC/C,iBAAiB,EAAE,EAAE;QACrB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAwB;QACxE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC;QACpD,SAAS,EAAE,KAAK;QAChB,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;QACnD,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;QACnD,sBAAsB,EAAE;YACtB,kBAAkB,EAAE,KAAK;YACzB,oBAAoB,EAAE,KAAK;SAC5B;QACD,UAAU,EAAE;YACV,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC;YAC3C,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC;SACxC;QACD,qBAAqB,EAAE,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,IAAA,aAAI,EAAC,8CAA8C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC/D,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,MAAM,IAAA,iDAAwC,EAC3D,MAAM,EACN,oBAAQ,CAAC,UAAU,CACpB,CAAC;QACF,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE;YAClB,gCAAgC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;YACjE,qCAAqC;YACrC,qCAAqC;SACtC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,mDAAmD,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACpE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,IAAA,0CAAiC,EAAC,MAAM,CAAC,CAAC;QAC/D,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE;YAClB,gCAAgC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;YACjE,qCAAqC;YACrC,sCAAsC;YACtC,0BAA0B,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE;YAC7D,+BAA+B;YAC/B,gCAAgC;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,yCAAyC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC1D,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAA,kCAAkB,EAAC,cAAc,CAAC,CAAC;IAClD,MAAM,0BAA0B,GAAG,MAAM,IAAA,4CAA6B,EACpE,UAAU,EACV,CAAC,oBAAQ,CAAC,UAAU,EAAE,oBAAQ,CAAC,GAAG,CAAC,EACnC,MAAM,CACP,CAAC;IACF,CAAC,CAAC,SAAS,CAAC,0BAA0B,EAAE,CAAC,oBAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACzD,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAA,kCAAkB,EAAC,cAAc,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,SAAW,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IACnC,MAAM,IAAA,+BAAgB,EAAC,UAAU,EAAE,uBAAuB,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC,CAAC,MAAM,CACN,QAAQ,CAAC,cAAc,CACrB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAC/C,KAAK;SACF,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC1B,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAClC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,wDAAwD,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACzE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAA,kCAAkB,EAAC,cAAc,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,cAAc,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,SAAS,CAAC;QAC1C,EAAE,CAAC,aAAa,CACd,SAAS,EACT,IAAI,CAAC,SAAS,CAAC;YACb,YAAY,EAAE;gBACZ,IAAI,EAAE;oBACJ,GAAG,EAAE,SAAS;iBACf;aACF;SACF,CAAC,CACH,CAAC;QACF,MAAM,IAAA,iCAAkB,EACtB,UAAU,EACV,CAAC,oBAAQ,CAAC,UAAU,EAAE,oBAAQ,CAAC,GAAG,CAAC,EACnC,MAAM,CACP,CAAC;QACF,CAAC,CAAC,MAAM,CACN,WAAW,CAAC,cAAc,CACxB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC;SACjD,CAAC,EACF,KAAK;aACF,KAAK,CAAC,SAAS,CAAC;aAChB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;aAC1B,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAClC,CACF,CAAC;QACF,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/src/analyze.test.ts b/src/analyze.test.ts index 9c1db9714..501637297 100644 --- a/src/analyze.test.ts +++ b/src/analyze.test.ts @@ -1,16 +1,10 @@ import * as fs from "fs"; import * as path from "path"; -import test, { ExecutionContext } from "ava"; +import test from "ava"; import * as sinon from "sinon"; -import { - convertPackToQuerySuiteEntry, - createQuerySuiteContents, - runQueries, - validateQueryFilters, - QueriesStatusReport, -} from "./analyze"; +import { runQueries, QueriesStatusReport } from "./analyze"; import { CodeQL, setCodeQL } from "./codeql"; import { Config } from "./config-utils"; import { Feature } from "./feature-flags"; @@ -42,11 +36,6 @@ test("status report fields and search path setting", async (t) => { const memoryFlag = ""; const addSnippetsFlag = ""; const threadsFlag = ""; - const packs = { - [Language.cpp]: ["a/b@1.0.0"], - [Language.java]: ["c/d@2.0.0"], - }; - sinon.stub(uploadLib, "validateSarifFileSchema"); for (const language of Object.values(Language)) { @@ -108,9 +97,6 @@ test("status report fields and search path setting", async (t) => { searchPathsUsed = []; const config: Config = { languages: [language], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "", @@ -118,7 +104,6 @@ test("status report fields and search path setting", async (t) => { type: util.GitHubVariant.DOTCOM, } as util.GitHubVersion, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, @@ -169,9 +154,6 @@ function mockCodeQL(): Partial { function createBaseConfig(tmpDir: string): Config { return { languages: [], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: "tempDir", codeQLCmd: "", @@ -179,7 +161,6 @@ function createBaseConfig(tmpDir: string): Config { type: util.GitHubVariant.DOTCOM, } as util.GitHubVersion, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, @@ -246,172 +227,3 @@ test("optimizeForLastQueryRun for two languages", async (t) => { ); }); }); - -test("validateQueryFilters", (t) => { - t.notThrows(() => validateQueryFilters([])); - t.notThrows(() => validateQueryFilters(undefined)); - t.notThrows(() => { - return validateQueryFilters([ - { - exclude: { - "problem.severity": "recommendation", - }, - }, - { - exclude: { - "tags contain": ["foo", "bar"], - }, - }, - { - include: { - "problem.severity": "something-to-think-about", - }, - }, - { - include: { - "tags contain": ["baz", "bop"], - }, - }, - ]); - }); - - t.throws( - () => { - return validateQueryFilters([ - { - exclude: { - "tags contain": ["foo", "bar"], - }, - include: { - "tags contain": ["baz", "bop"], - }, - }, - ]); - }, - { message: /Query filter must have exactly one key/ }, - ); - - t.throws( - () => { - return validateQueryFilters([{ xxx: "foo" } as any]); - }, - { message: /Only "include" or "exclude" filters are allowed/ }, - ); - - t.throws( - () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument - return validateQueryFilters({ exclude: "foo" } as any); - }, - { - message: - /Query filters must be an array of "include" or "exclude" entries/, - }, - ); -}); - -const convertPackToQuerySuiteEntryMacro = test.macro({ - exec: (t: ExecutionContext, packSpec: string, suiteEntry: any) => - t.deepEqual(convertPackToQuerySuiteEntry(packSpec), suiteEntry), - - title: (_providedTitle, packSpec: string) => `Query Suite Entry: ${packSpec}`, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b", { - qlpack: "a/b", - from: undefined, - version: undefined, - query: undefined, - queries: undefined, - apply: undefined, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3", { - qlpack: "a/b", - from: undefined, - version: "~1.2.3", - query: undefined, - queries: undefined, - apply: undefined, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b:my/path", { - qlpack: undefined, - from: "a/b", - version: undefined, - query: undefined, - queries: "my/path", - apply: undefined, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path", { - qlpack: undefined, - from: "a/b", - version: "~1.2.3", - query: undefined, - queries: "my/path", - apply: undefined, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b:my/path/query.ql", { - qlpack: undefined, - from: "a/b", - version: undefined, - query: "my/path/query.ql", - queries: undefined, - apply: undefined, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/query.ql", { - qlpack: undefined, - from: "a/b", - version: "~1.2.3", - query: "my/path/query.ql", - queries: undefined, - apply: undefined, -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b:my/path/suite.qls", { - qlpack: undefined, - from: "a/b", - version: undefined, - query: undefined, - queries: undefined, - apply: "my/path/suite.qls", -}); - -test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/suite.qls", { - qlpack: undefined, - from: "a/b", - version: "~1.2.3", - query: undefined, - queries: undefined, - apply: "my/path/suite.qls", -}); - -test("convertPackToQuerySuiteEntry Failure", (t) => { - t.throws(() => convertPackToQuerySuiteEntry("this-is-not-a-pack")); -}); - -test("createQuerySuiteContents", (t) => { - const yamlResult = createQuerySuiteContents( - ["query1.ql", "query2.ql"], - [ - { - exclude: { "problem.severity": "recommendation" }, - }, - { - include: { "problem.severity": "recommendation" }, - }, - ], - ); - const expected = `- query: query1.ql -- query: query2.ql -- exclude: - problem.severity: recommendation -- include: - problem.severity: recommendation -`; - - t.deepEqual(yamlResult, expected); -}); diff --git a/src/analyze.ts b/src/analyze.ts index 1af67c97f..0f838409c 100644 --- a/src/analyze.ts +++ b/src/analyze.ts @@ -19,7 +19,6 @@ import { DatabaseCreationTimings, EventReport } from "./status-report"; import { endTracingForCluster } from "./tracer-config"; import { validateSarifFileSchema } from "./upload-lib"; import * as util from "./util"; -import { UserError } from "./util"; export class CodeQLAnalysisError extends Error { queriesStatusReport: QueriesStatusReport; @@ -391,32 +390,6 @@ export async function runQueries( } } -export function convertPackToQuerySuiteEntry( - packStr: string, -): configUtils.QuerySuitePackEntry { - const pack = configUtils.parsePacksSpecification(packStr); - return { - qlpack: !pack.path ? pack.name : undefined, - from: pack.path ? pack.name : undefined, - version: pack.version, - query: pack.path?.endsWith(".ql") ? pack.path : undefined, - queries: - !pack.path?.endsWith(".ql") && !pack.path?.endsWith(".qls") - ? pack.path - : undefined, - apply: pack.path?.endsWith(".qls") ? pack.path : undefined, - }; -} - -export function createQuerySuiteContents( - queries: string[], - queryFilters: configUtils.QueryFilter[], -) { - return yaml.dump( - queries.map((q: string) => ({ query: q })).concat(queryFilters as any[]), - ); -} - export async function runFinalize( outputDir: string, threadsFlag: string, @@ -465,39 +438,3 @@ export async function runCleanup( } logger.endGroup(); } - -// exported for testing -export function validateQueryFilters(queryFilters?: configUtils.QueryFilter[]) { - if (!queryFilters) { - return []; - } - - if (!Array.isArray(queryFilters)) { - throw new UserError( - `Query filters must be an array of "include" or "exclude" entries. Found ${typeof queryFilters}`, - ); - } - - const errors: string[] = []; - for (const qf of queryFilters) { - const keys = Object.keys(qf); - if (keys.length !== 1) { - errors.push( - `Query filter must have exactly one key: ${JSON.stringify(qf)}`, - ); - } - if (!["exclude", "include"].includes(keys[0])) { - errors.push( - `Only "include" or "exclude" filters are allowed:\n${JSON.stringify( - qf, - )}`, - ); - } - } - - if (errors.length) { - throw new UserError(`Invalid query filter.\n${errors.join("\n")}`); - } - - return queryFilters; -} diff --git a/src/codeql.test.ts b/src/codeql.test.ts index e5567ea23..cc8451bc7 100644 --- a/src/codeql.test.ts +++ b/src/codeql.test.ts @@ -46,9 +46,6 @@ test.beforeEach(() => { stubConfig = { languages: [Language.cpp], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: "", codeQLCmd: "", @@ -56,7 +53,6 @@ test.beforeEach(() => { type: util.GitHubVariant.DOTCOM, } as util.GitHubVersion, dbLocation: "", - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, diff --git a/src/config-utils.test.ts b/src/config-utils.test.ts index 2a51594ca..9afa1470f 100644 --- a/src/config-utils.test.ts +++ b/src/config-utils.test.ts @@ -10,7 +10,7 @@ import * as api from "./api-client"; import { getCachedCodeQL, PackDownloadOutput, setCodeQL } from "./codeql"; import * as configUtils from "./config-utils"; import { Language } from "./languages"; -import { getRunnerLogger, Logger } from "./logging"; +import { getRunnerLogger } from "./logging"; import { parseRepositoryNwo } from "./repository"; import { setupTests, @@ -132,7 +132,6 @@ test("load empty config", async (t) => { { owner: "github", repo: "example" }, tmpDir, codeQL, - tmpDir, gitHubVersion, logger, ), @@ -352,19 +351,6 @@ test("load non-empty input", async (t) => { // And the config we expect it to parse to const expectedConfig: configUtils.Config = { languages: [Language.javascript], - queries: { - javascript: { - builtin: [], - custom: [ - { - queries: ["/foo/a.ql", "/bar/b.ql"], - searchPath: tmpDir, - }, - ], - }, - }, - pathsIgnore: ["a", "b"], - paths: ["c/d"], originalUserInput: { name: "my config", "disable-default-queries": true, @@ -376,7 +362,6 @@ test("load non-empty input", async (t) => { codeQLCmd: codeQL.getPath(), gitHubVersion, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {} as configUtils.Packs, debugMode: false, debugArtifactName: "my-artifact", debugDatabaseName: "my-db", @@ -413,80 +398,6 @@ test("load non-empty input", async (t) => { }); }); -test("Default queries are used", async (t) => { - return await withTmpDir(async (tmpDir) => { - // Check that the default behaviour is to add the default queries. - // In this case if a config file is specified but does not include - // the disable-default-queries field. - // We determine this by whether CodeQL.resolveQueries is called - // with the correct arguments. - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return { - byLanguage: { - javascript: { - "foo.ql": {}, - }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - // The important point of this config is that it doesn't specify - // the disable-default-queries field. - // Any other details are hopefully irrelevant for this test. - const inputFileContents = ` - paths: - - foo`; - - fs.mkdirSync(path.join(tmpDir, "foo")); - - const languages = "javascript"; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - - await configUtils.initConfig( - languages, - undefined, - undefined, - configFilePath, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolve queries was called correctly - t.deepEqual(resolveQueriesArgs.length, 1); - t.deepEqual(resolveQueriesArgs[0].queries, [ - "javascript-code-scanning.qls", - ]); - t.deepEqual(resolveQueriesArgs[0].extraSearchPath, undefined); - }); -}); - /** * Returns the provided queries, just in the right format for a resolved query * This way we can test by seeing which returned items are in the final @@ -499,486 +410,12 @@ function queriesToResolvedQueryForm(queries: string[]) { } return { byLanguage: { - javascript: dummyResolvedQueries, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; -} - -test("Queries can be specified in config file", async (t) => { - return await withTmpDir(async (tmpDir) => { - const inputFileContents = ` - name: my config - queries: - - uses: ./foo`; - - const configFilePath = createConfigFile(inputFileContents, tmpDir); - - fs.mkdirSync(path.join(tmpDir, "foo")); - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const languages = "javascript"; - - const config = await configUtils.initConfig( - languages, - undefined, - undefined, - configFilePath, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolveQueries was called correctly - // It'll be called once for the default queries - // and once for `./foo` from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}foo`)); - - // Now check that the end result contains the default queries and the query from config - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true( - config.queries["javascript"].builtin[0].endsWith( - "javascript-code-scanning.qls", - ), - ); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}foo`, - ), - ); - }); -}); - -test("Queries from config file can be overridden in workflow file", async (t) => { - return await withTmpDir(async (tmpDir) => { - const inputFileContents = ` - name: my config - queries: - - uses: ./foo`; - - const configFilePath = createConfigFile(inputFileContents, tmpDir); - - // This config item should take precedence over the config file but shouldn't affect the default queries. - const testQueries = "./override"; - - fs.mkdirSync(path.join(tmpDir, "foo")); - fs.mkdirSync(path.join(tmpDir, "override")); - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const languages = "javascript"; - - const config = await configUtils.initConfig( - languages, - testQueries, - undefined, - configFilePath, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolveQueries was called correctly - // It'll be called once for the default queries and once for `./override`, - // but won't be called for './foo' from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}override`)); - - // Now check that the end result contains only the default queries and the override query - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true( - config.queries["javascript"].builtin[0].endsWith( - "javascript-code-scanning.qls", - ), - ); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}override`, - ), - ); - }); -}); - -test("Queries in workflow file can be used in tandem with the 'disable default queries' option", async (t) => { - return await withTmpDir(async (tmpDir) => { - process.env["RUNNER_TEMP"] = tmpDir; - process.env["GITHUB_WORKSPACE"] = tmpDir; - - const inputFileContents = ` - name: my config - disable-default-queries: true`; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - - const testQueries = "./workflow-query"; - fs.mkdirSync(path.join(tmpDir, "workflow-query")); - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const languages = "javascript"; - - const config = await configUtils.initConfig( - languages, - testQueries, - undefined, - configFilePath, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolveQueries was called correctly - // It'll be called once for `./workflow-query`, - // but won't be called for the default one since that was disabled - t.deepEqual(resolveQueriesArgs.length, 1); - t.deepEqual(resolveQueriesArgs[0].queries.length, 1); - t.true( - resolveQueriesArgs[0].queries[0].endsWith(`${path.sep}workflow-query`), - ); - - // Now check that the end result contains only the workflow query, and not the default one - t.deepEqual(config.queries["javascript"].builtin.length, 0); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}workflow-query`, - ), - ); - }); -}); - -test("Multiple queries can be specified in workflow file, no config file required", async (t) => { - return await withTmpDir(async (tmpDir) => { - fs.mkdirSync(path.join(tmpDir, "override1")); - fs.mkdirSync(path.join(tmpDir, "override2")); - - const testQueries = "./override1,./override2"; - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const languages = "javascript"; - - const config = await configUtils.initConfig( - languages, - testQueries, - undefined, - undefined, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolveQueries was called correctly: - // It'll be called once for the default queries, - // and then once for each of the two queries from the workflow - t.deepEqual(resolveQueriesArgs.length, 3); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.deepEqual(resolveQueriesArgs[2].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}override1`)); - t.true(resolveQueriesArgs[2].queries[0].endsWith(`${path.sep}override2`)); - - // Now check that the end result contains both the queries from the workflow, as well as the defaults - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 2); - t.true( - config.queries["javascript"].builtin[0].endsWith( - "javascript-code-scanning.qls", - ), - ); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}override1`, - ), - ); - t.true( - config.queries["javascript"].custom[1].queries[0].endsWith( - `${path.sep}override2`, - ), - ); - }); -}); - -test("Queries in workflow file can be added to the set of queries without overriding config file", async (t) => { - return await withTmpDir(async (tmpDir) => { - process.env["RUNNER_TEMP"] = tmpDir; - process.env["GITHUB_WORKSPACE"] = tmpDir; - - const inputFileContents = ` - name: my config - queries: - - uses: ./foo`; - const configFilePath = createConfigFile(inputFileContents, tmpDir); - - // These queries shouldn't override anything, because the value is prefixed with "+" - const testQueries = "+./additional1,./additional2"; - - fs.mkdirSync(path.join(tmpDir, "foo")); - fs.mkdirSync(path.join(tmpDir, "additional1")); - fs.mkdirSync(path.join(tmpDir, "additional2")); - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const languages = "javascript"; - - const config = await configUtils.initConfig( - languages, - testQueries, - undefined, - configFilePath, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolveQueries was called correctly - // It'll be called once for the default queries, - // once for each of additional1 and additional2, - // and once for './foo' from the config file - t.deepEqual(resolveQueriesArgs.length, 4); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}additional1`)); - t.deepEqual(resolveQueriesArgs[2].queries.length, 1); - t.true(resolveQueriesArgs[2].queries[0].endsWith(`${path.sep}additional2`)); - t.deepEqual(resolveQueriesArgs[3].queries.length, 1); - t.true(resolveQueriesArgs[3].queries[0].endsWith(`${path.sep}foo`)); - - // Now check that the end result contains all the queries - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 3); - t.true( - config.queries["javascript"].builtin[0].endsWith( - "javascript-code-scanning.qls", - ), - ); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}additional1`, - ), - ); - t.true( - config.queries["javascript"].custom[1].queries[0].endsWith( - `${path.sep}additional2`, - ), - ); - t.true( - config.queries["javascript"].custom[2].queries[0].endsWith( - `${path.sep}foo`, - ), - ); - }); -}); - -test("Queries can be specified using config input", async (t) => { - return await withTmpDir(async (tmpDir) => { - const configInput = ` - name: my config - queries: - - uses: ./foo - packs: - javascript: - - a/b@1.2.3 - python: - - c/d@1.2.3 - `; - - fs.mkdirSync(path.join(tmpDir, "foo")); - - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; - const codeQL = setCodeQL({ - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - // Only JS, python packs will be ignored - const languages = "javascript"; - - const config = await configUtils.initConfig( - languages, - undefined, - undefined, - undefined, - undefined, - configInput, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - - // Check resolveQueries was called correctly - // It'll be called once for the default queries - // and once for `./foo` from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}foo`)); - t.deepEqual(config.packs as unknown, { - [Language.javascript]: ["a/b@1.2.3"], - }); - - // Now check that the end result contains the default queries and the query from config - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true( - config.queries["javascript"].builtin[0].endsWith( - "javascript-code-scanning.qls", - ), - ); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}foo`, - ), - ); - }); -}); + javascript: dummyResolvedQueries, + }, + noDeclaredLanguage: {}, + multipleDeclaredLanguages: {}, + }; +} test("Using config input and file together, config input should be used.", async (t) => { return await withTmpDir(async (tmpDir) => { @@ -1044,29 +481,7 @@ test("Using config input and file together, config input should be used.", async getRunnerLogger(true), ); - // Check resolveQueries was called correctly - // It'll be called once for the default queries - // and once for `./foo` from the config file. - t.deepEqual(resolveQueriesArgs.length, 2); - t.deepEqual(resolveQueriesArgs[1].queries.length, 1); - t.true(resolveQueriesArgs[1].queries[0].endsWith(`${path.sep}foo`)); - t.deepEqual(config.packs as unknown, { - [Language.javascript]: ["a/b@1.2.3"], - }); - - // Now check that the end result contains the default queries and the query from config - t.deepEqual(config.queries["javascript"].builtin.length, 1); - t.deepEqual(config.queries["javascript"].custom.length, 1); - t.true( - config.queries["javascript"].builtin[0].endsWith( - "javascript-code-scanning.qls", - ), - ); - t.true( - config.queries["javascript"].custom[0].queries[0].endsWith( - `${path.sep}foo`, - ), - ); + t.deepEqual(config.originalUserInput, yaml.load(configInput)); }); }); @@ -1288,349 +703,18 @@ test("Unknown languages", async (t) => { }); }); -test("Config specifies packages", async (t) => { - return await withTmpDir(async (tmpDir) => { - const codeQL = setCodeQL({ - async resolveQueries() { - return { - byLanguage: {}, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const inputFileContents = ` - name: my config - disable-default-queries: true - packs: - - a/b@1.2.3 - `; - - const configFile = path.join(tmpDir, "codeql-config.yaml"); - fs.writeFileSync(configFile, inputFileContents); - - const languages = "javascript"; - - const { packs } = await configUtils.initConfig( - languages, - undefined, - undefined, - configFile, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - t.deepEqual(packs as unknown, { - [Language.javascript]: ["a/b@1.2.3"], - }); - }); -}); - -test("Config specifies packages for multiple languages", async (t) => { - return await withTmpDir(async (tmpDir) => { - const codeQL = setCodeQL({ - async resolveQueries() { - return { - byLanguage: { - cpp: { "/foo/a.ql": {} }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const inputFileContents = ` - name: my config - disable-default-queries: true - queries: - - uses: ./foo - packs: - javascript: - - a/b@1.2.3 - python: - - c/d@1.2.3 - `; - - const configFile = path.join(tmpDir, "codeql-config.yaml"); - fs.writeFileSync(configFile, inputFileContents); - fs.mkdirSync(path.join(tmpDir, "foo")); - - const languages = "javascript,python,cpp"; - - const { packs, queries } = await configUtils.initConfig( - languages, - undefined, - undefined, - configFile, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - t.deepEqual(packs as unknown, { - [Language.javascript]: ["a/b@1.2.3"], - [Language.python]: ["c/d@1.2.3"], - }); - t.deepEqual(queries, { - cpp: { - builtin: [], - custom: [ - { - queries: ["/foo/a.ql"], - searchPath: tmpDir, - }, - ], - }, - javascript: { - builtin: [], - custom: [], - }, - python: { - builtin: [], - custom: [], - }, - }); - }); -}); - -function doInvalidInputTest( - testName: string, - inputFileContents: string, - expectedErrorMessageGenerator: (configFile: string) => string, -) { - test(`load invalid input - ${testName}`, async (t) => { - return await withTmpDir(async (tmpDir) => { - const codeQL = setCodeQL({ - async resolveQueries() { - return { - byLanguage: {}, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload(): Promise { - return { packs: [] }; - }, - }); - - const languages = "javascript"; - const configFile = "input"; - const inputFile = path.join(tmpDir, configFile); - fs.writeFileSync(inputFile, inputFileContents, "utf8"); - - try { - await configUtils.initConfig( - languages, - undefined, - undefined, - configFile, - undefined, - undefined, - false, - false, - "", - "", - { owner: "github", repo: "example" }, - tmpDir, - codeQL, - tmpDir, - gitHubVersion, - sampleApiDetails, - getRunnerLogger(true), - ); - throw new Error("initConfig did not throw error"); - } catch (err) { - t.deepEqual( - err, - new UserError(expectedErrorMessageGenerator(inputFile)), - ); - } - }); - }); -} - -doInvalidInputTest( - "name invalid type", - ` - name: - - foo: bar`, - configUtils.getNameInvalid, -); - -doInvalidInputTest( - "disable-default-queries invalid type", - `disable-default-queries: 42`, - configUtils.getDisableDefaultQueriesInvalid, -); - -doInvalidInputTest( - "queries invalid type", - `queries: foo`, - configUtils.getQueriesInvalid, -); - -doInvalidInputTest( - "paths-ignore invalid type", - `paths-ignore: bar`, - configUtils.getPathsIgnoreInvalid, -); - -doInvalidInputTest( - "paths invalid type", - `paths: 17`, - configUtils.getPathsInvalid, -); - -doInvalidInputTest( - "queries uses invalid type", - ` - queries: - - uses: - - hello: world`, - configUtils.getQueriesMissingUses, -); - -function doInvalidQueryUsesTest( - input: string, - expectedErrorMessageGenerator: (configFile: string) => string, -) { - // Invalid contents of a "queries.uses" field. - // Should fail with the expected error message - const inputFileContents = ` - name: my config - queries: - - name: foo - uses: ${input}`; - - doInvalidInputTest( - `queries uses "${input}"`, - inputFileContents, - expectedErrorMessageGenerator, - ); -} - -// Various "uses" fields, and the errors they should produce -doInvalidQueryUsesTest("''", (c) => - configUtils.getQueryUsesInvalid(c, undefined), -); -doInvalidQueryUsesTest("./foo", (c) => - configUtils.getLocalPathDoesNotExist(c, "foo"), -); -doInvalidQueryUsesTest("./..", (c) => - configUtils.getLocalPathOutsideOfRepository(c, ".."), -); - -const validPaths = [ - "foo", - "foo/", - "foo/**", - "foo/**/", - "foo/**/**", - "foo/**/bar/**/baz", - "**/", - "**/foo", - "/foo", -]; -const invalidPaths = ["a/***/b", "a/**b", "a/b**", "**"]; -test("path validations", (t) => { - // Dummy values to pass to validateAndSanitisePath - const propertyName = "paths"; - const configFile = "./.github/codeql/config.yml"; - - for (const validPath of validPaths) { - t.truthy( - configUtils.validateAndSanitisePath( - validPath, - propertyName, - configFile, - getRunnerLogger(true), - ), - ); - } - for (const invalidPath of invalidPaths) { - t.throws(() => - configUtils.validateAndSanitisePath( - invalidPath, - propertyName, - configFile, - getRunnerLogger(true), - ), - ); - } -}); - -test("path sanitisation", (t) => { - // Dummy values to pass to validateAndSanitisePath - const propertyName = "paths"; - const configFile = "./.github/codeql/config.yml"; - - // Valid paths are not modified - t.deepEqual( - configUtils.validateAndSanitisePath( - "foo/bar", - propertyName, - configFile, - getRunnerLogger(true), - ), - "foo/bar", - ); - - // Trailing stars are stripped - t.deepEqual( - configUtils.validateAndSanitisePath( - "foo/**", - propertyName, - configFile, - getRunnerLogger(true), - ), - "foo/", - ); -}); - /** * Test macro for ensuring the packs block is valid */ const parsePacksMacro = test.macro({ exec: ( t: ExecutionContext, - packsByLanguage: string[] | Record, + packsInput: string, languages: Language[], - expected: Partial>, + expected: configUtils.Packs | undefined, ) => t.deepEqual( - configUtils.parsePacksFromConfig( - packsByLanguage, - languages, - "/a/b", - mockLogger, - ), + configUtils.parsePacksFromInput(packsInput, languages, false), expected, ), @@ -1643,18 +727,12 @@ const parsePacksMacro = test.macro({ const parsePacksErrorMacro = test.macro({ exec: ( t: ExecutionContext, - packsByLanguage: unknown, + packsInput: string, languages: Language[], expected: RegExp, ) => t.throws( - () => - configUtils.parsePacksFromConfig( - packsByLanguage as string[] | Record, - languages, - "/a/b", - {} as Logger, - ), + () => configUtils.parsePacksFromInput(packsInput, languages, false), { message: expected, }, @@ -1669,24 +747,22 @@ const invalidPackNameMacro = test.macro({ exec: (t: ExecutionContext, name: string) => parsePacksErrorMacro.exec( t, - { [Language.cpp]: [name] }, + name, [Language.cpp], - new RegExp( - `The configuration file "/a/b" is invalid: property "packs" "${name}" is not a valid pack`, - ), + new RegExp(`^"${name}" is not a valid pack$`), ), title: (_providedTitle: string | undefined, arg: string | undefined) => `Invalid pack string: ${arg}`, }); -test("no packs", parsePacksMacro, {}, [], {}); -test("two packs", parsePacksMacro, ["a/b", "c/d@1.2.3"], [Language.cpp], { +test("no packs", parsePacksMacro, "", [], undefined); +test("two packs", parsePacksMacro, "a/b,c/d@1.2.3", [Language.cpp], { [Language.cpp]: ["a/b", "c/d@1.2.3"], }); test( "two packs with spaces", parsePacksMacro, - [" a/b ", " c/d@1.2.3 "], + " a/b , c/d@1.2.3 ", [Language.cpp], { [Language.cpp]: ["a/b", "c/d@1.2.3"], @@ -1694,29 +770,13 @@ test( ); test( "two packs with language", - parsePacksMacro, - { - [Language.cpp]: ["a/b", "c/d@1.2.3"], - [Language.java]: ["d/e", "f/g@1.2.3"], - }, - [Language.cpp, Language.java, Language.csharp], - { - [Language.cpp]: ["a/b", "c/d@1.2.3"], - [Language.java]: ["d/e", "f/g@1.2.3"], - }, -); - -test( - "two packs with unused language in config", - parsePacksMacro, - { - [Language.cpp]: ["a/b", "c/d@1.2.3"], - [Language.java]: ["d/e", "f/g@1.2.3"], - }, - [Language.cpp, Language.csharp], - { - [Language.cpp]: ["a/b", "c/d@1.2.3"], - }, + parsePacksErrorMacro, + "a/b,c/d@1.2.3", + [Language.cpp, Language.java], + new RegExp( + "Cannot specify a 'packs' input in a multi-language analysis. " + + "Use a codeql-config.yml file instead and specify packs by language.", + ), ); test( @@ -1739,7 +799,7 @@ test( // this is valid, too. It will fail if it doesn't match a path // (globbing is not done) "c/d@1.2.3:+*)_(", - ], + ].join(","), [Language.cpp], { [Language.cpp]: [ @@ -1757,21 +817,6 @@ test( }, ); -test( - "no language", - parsePacksErrorMacro, - ["a/b@1.2.3"], - [Language.java, Language.python], - /The configuration file "\/a\/b" is invalid: property "packs" must split packages by language/, -); -test( - "not an array", - parsePacksErrorMacro, - { [Language.cpp]: "c/d" }, - [Language.cpp], - /The configuration file "\/a\/b" is invalid: property "packs" must be an array of non-empty strings/, -); - test(invalidPackNameMacro, "c"); // all packs require at least a scope and a name test(invalidPackNameMacro, "c-/d"); test(invalidPackNameMacro, "-c/d"); @@ -1839,159 +884,8 @@ test(packSpecPrettyPrintingMacro, " a/b:abc/def ", { path: "abc/def", }); -/** - * Test macro for testing the packs block and the packs input - */ -function parseInputAndConfigMacro( - t: ExecutionContext, - packsFromConfig: string[] | Record, - packsFromInput: string | undefined, - languages: Language[], - expected, -) { - t.deepEqual( - configUtils.parsePacks( - packsFromConfig, - packsFromInput, - !!packsFromInput?.trim().startsWith("+"), // coerce to boolean - languages, - "/a/b", - mockLogger, - ), - expected, - ); -} -parseInputAndConfigMacro.title = (providedTitle: string) => - `Parse Packs input and config: ${providedTitle}`; - const mockLogger = getRunnerLogger(true); -function parseInputAndConfigErrorMacro( - t: ExecutionContext, - packsFromConfig: string[] | Record, - packsFromInput: string | undefined, - languages: Language[], - packsFromInputOverride: boolean, - expected: RegExp, -) { - t.throws( - () => { - configUtils.parsePacks( - packsFromConfig, - packsFromInput, - packsFromInputOverride, - languages, - "/a/b", - mockLogger, - ); - }, - { - message: expected, - }, - ); -} -parseInputAndConfigErrorMacro.title = (providedTitle: string) => - `Parse Packs input and config Error: ${providedTitle}`; - -test("input only", parseInputAndConfigMacro, {}, " c/d ", [Language.cpp], { - [Language.cpp]: ["c/d"], -}); - -test( - "input only with multiple", - parseInputAndConfigMacro, - {}, - "a/b , c/d@1.2.3", - [Language.cpp], - { - [Language.cpp]: ["a/b", "c/d@1.2.3"], - }, -); - -test( - "input only with +", - parseInputAndConfigMacro, - {}, - " + a/b , c/d@1.2.3 ", - [Language.cpp], - { - [Language.cpp]: ["a/b", "c/d@1.2.3"], - }, -); - -test( - "config only", - parseInputAndConfigMacro, - ["a/b", "c/d"], - " ", - [Language.cpp], - { - [Language.cpp]: ["a/b", "c/d"], - }, -); - -test( - "input overrides", - parseInputAndConfigMacro, - ["a/b", "c/d"], - " e/f, g/h@1.2.3 ", - [Language.cpp], - { - [Language.cpp]: ["e/f", "g/h@1.2.3"], - }, -); - -test( - "input and config", - parseInputAndConfigMacro, - ["a/b", "c/d"], - " +e/f, g/h@1.2.3 ", - [Language.cpp], - { - [Language.cpp]: ["e/f", "g/h@1.2.3", "a/b", "c/d"], - }, -); - -test( - "input with no language", - parseInputAndConfigErrorMacro, - {}, - "c/d", - [], - false, - /No languages specified/, -); - -test( - "input with two languages", - parseInputAndConfigErrorMacro, - {}, - "c/d", - [Language.cpp, Language.csharp], - false, - /multi-language analysis/, -); - -test( - "input with + only", - parseInputAndConfigErrorMacro, - {}, - " + ", - [Language.cpp], - true, - /remove the '\+'/, -); - -test( - "input with invalid pack name", - parseInputAndConfigErrorMacro, - {}, - " xxx", - [Language.cpp], - false, - /"xxx" is not a valid pack/, -); - const calculateAugmentationMacro = test.macro({ exec: async ( t: ExecutionContext, diff --git a/src/config-utils.ts b/src/config-utils.ts index eb7bdaca2..24aa29389 100644 --- a/src/config-utils.ts +++ b/src/config-utils.ts @@ -6,12 +6,7 @@ import * as yaml from "js-yaml"; import * as semver from "semver"; import * as api from "./api-client"; -import { - CodeQL, - CODEQL_VERSION_LANGUAGE_ALIASING, - CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE, - ResolveQueriesOutput, -} from "./codeql"; +import { CodeQL, CODEQL_VERSION_LANGUAGE_ALIASING } from "./codeql"; import { Language, parseLanguage } from "./languages"; import { Logger } from "./logging"; import { RepositoryNwo } from "./repository"; @@ -24,12 +19,7 @@ import { } from "./util"; // Property names from the user-supplied config file. -const NAME_PROPERTY = "name"; -const DISABLE_DEFAULT_QUERIES_PROPERTY = "disable-default-queries"; -const QUERIES_PROPERTY = "queries"; -const QUERIES_USES_PROPERTY = "uses"; -const PATHS_IGNORE_PROPERTY = "paths-ignore"; -const PATHS_PROPERTY = "paths"; + const PACKS_PROPERTY = "packs"; /** @@ -82,52 +72,6 @@ interface IncludeQueryFilter { include: Record; } -export type QuerySuitePackEntry = { - version?: string; -} & ( - | { - qlpack: string; - } - | { - from?: string; - query?: string; - queries?: string; - apply?: string; - } -); - -export type QuerySuiteEntry = QuerySuitePackEntry | QueryFilter; - -/** - * Lists of query files for each language. - * Will only contain .ql files and not other kinds of files, - * and all file paths will be absolute. - * - * The queries are split between ones from a builtin suite - * and custom queries from unknown locations. This allows us to treat - * them separately if we want to, for example to measure performance. - */ -type Queries = { - [language: string]: { - /** Queries from one of the builtin suites */ - builtin: string[]; - - /** Custom queries, from a non-standard location */ - custom: QueriesWithSearchPath[]; - }; -}; - -/** - * Contains some information about a user-defined query. - */ -export interface QueriesWithSearchPath { - /** Additional search path to use when running these queries. */ - searchPath: string; - - /** Array of absolute paths to a .ql file containing the queries. */ - queries: string[]; -} - /** * Format of the parsed config file. */ @@ -136,18 +80,6 @@ export interface Config { * Set of languages to run analysis for. */ languages: Language[]; - /** - * Map from language to query files. - */ - queries: Queries; - /** - * List of paths to ignore from analysis. - */ - pathsIgnore: string[]; - /** - * List of paths to include in analysis. - */ - paths: string[]; /** * A unaltered copy of the original user input. * Mainly intended to be used for status reporting. @@ -174,10 +106,6 @@ export interface Config { * The location where CodeQL databases should be stored. */ dbLocation: string; - /** - * List of packages, separated by language to download before any analysis. - */ - packs: Packs; /** * Specifies whether we are debugging mode and should try to produce extra * output for debugging purposes when possible. @@ -255,419 +183,6 @@ export interface Pack { path?: string; } -/** - * A list of queries from https://github.com/github/codeql that - * we don't want to run. Disabling them here is a quicker alternative to - * disabling them in the code scanning query suites. Queries should also - * be disabled in the suites, and removed from this list here once the - * bundle is updated to make those suite changes live. - * - * Format is a map from language to an array of path suffixes of .ql files. - */ -const DISABLED_BUILTIN_QUERIES: { [language: string]: string[] } = { - csharp: [ - "ql/src/Security Features/CWE-937/VulnerablePackage.ql", - "ql/src/Security Features/CWE-451/MissingXFrameOptions.ql", - ], -}; - -function queryIsDisabled(language, query): boolean { - return (DISABLED_BUILTIN_QUERIES[language] || []).some((disabledQuery) => - query.endsWith(disabledQuery), - ); -} - -/** - * Asserts that the noDeclaredLanguage and multipleDeclaredLanguages fields are - * both empty and errors if they are not. - */ -function validateQueries(resolvedQueries: ResolveQueriesOutput) { - const noDeclaredLanguage = resolvedQueries.noDeclaredLanguage; - const noDeclaredLanguageQueries = Object.keys(noDeclaredLanguage); - if (noDeclaredLanguageQueries.length !== 0) { - throw new UserError( - `${ - "The following queries do not declare a language. " + - "Their qlpack.yml files are either missing or is invalid.\n" - }${noDeclaredLanguageQueries.join("\n")}`, - ); - } - - const multipleDeclaredLanguages = resolvedQueries.multipleDeclaredLanguages; - const multipleDeclaredLanguagesQueries = Object.keys( - multipleDeclaredLanguages, - ); - if (multipleDeclaredLanguagesQueries.length !== 0) { - throw new UserError( - `${ - "The following queries declare multiple languages. " + - "Their qlpack.yml files are either missing or is invalid.\n" - }${multipleDeclaredLanguagesQueries.join("\n")}`, - ); - } -} - -/** - * Run 'codeql resolve queries' and add the results to resultMap - * - * If a checkout path is given then the queries are assumed to be custom queries - * and an error will be thrown if there is anything invalid about the queries. - * If a checkout path is not given then the queries are assumed to be builtin - * queries, and error checking will be suppressed. - */ -async function runResolveQueries( - codeQL: CodeQL, - resultMap: Queries, - toResolve: string[], - extraSearchPath: string | undefined, -) { - const resolvedQueries = await codeQL.resolveQueries( - toResolve, - extraSearchPath, - ); - - if (extraSearchPath !== undefined) { - validateQueries(resolvedQueries); - } - - for (const [language, queryPaths] of Object.entries( - resolvedQueries.byLanguage, - )) { - if (resultMap[language] === undefined) { - resultMap[language] = { - builtin: [], - custom: [], - }; - } - const queries = Object.keys(queryPaths).filter( - (q) => !queryIsDisabled(language, q), - ); - if (extraSearchPath !== undefined) { - resultMap[language].custom.push({ - searchPath: extraSearchPath, - queries, - }); - } else { - resultMap[language].builtin.push(...queries); - } - } -} - -/** - * Get the set of queries included by default. - */ -async function addDefaultQueries( - codeQL: CodeQL, - languages: string[], - resultMap: Queries, -) { - const suites = languages.map((l) => `${l}-code-scanning.qls`); - await runResolveQueries(codeQL, resultMap, suites, undefined); -} - -// The set of acceptable values for built-in suites from the codeql bundle -const builtinSuites = [ - "security-experimental", - "security-extended", - "security-and-quality", -] as const; - -/** - * Determine the set of queries associated with suiteName's suites and add them to resultMap. - * Throws an error if suiteName is not a valid builtin suite. - */ -async function addBuiltinSuiteQueries( - languages: string[], - codeQL: CodeQL, - resultMap: Queries, - suiteName: string, - configFile?: string, -): Promise { - const found = builtinSuites.find((suite) => suite === suiteName); - if (!found) { - throw new UserError(getQueryUsesInvalid(configFile, suiteName)); - } - if ( - suiteName === "security-experimental" && - !(await codeQlVersionAbove( - codeQL, - CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE, - )) - ) { - throw new UserError( - `The 'security-experimental' suite is not supported on CodeQL CLI versions earlier than - ${CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE}. Please upgrade to CodeQL CLI version - ${CODEQL_VERSION_SECURITY_EXPERIMENTAL_SUITE} or later.`, - ); - } - - const suites = languages.map((l) => `${l}-${suiteName}.qls`); - await runResolveQueries(codeQL, resultMap, suites, undefined); -} - -/** - * Retrieve the set of queries at localQueryPath and add them to resultMap. - */ -async function addLocalQueries( - codeQL: CodeQL, - resultMap: Queries, - localQueryPath: string, - workspacePath: string, - configFile?: string, -) { - // Resolve the local path against the workspace so that when this is - // passed to codeql it resolves to exactly the path we expect it to resolve to. - let absoluteQueryPath = path.join(workspacePath, localQueryPath); - - // Check the file exists - if (!fs.existsSync(absoluteQueryPath)) { - throw new UserError(getLocalPathDoesNotExist(configFile, localQueryPath)); - } - - // Call this after checking file exists, because it'll fail if file doesn't exist - absoluteQueryPath = fs.realpathSync(absoluteQueryPath); - - // Check the local path doesn't jump outside the repo using '..' or symlinks - if ( - !(absoluteQueryPath + path.sep).startsWith( - fs.realpathSync(workspacePath) + path.sep, - ) - ) { - throw new UserError( - getLocalPathOutsideOfRepository(configFile, localQueryPath), - ); - } - - const extraSearchPath = workspacePath; - - await runResolveQueries( - codeQL, - resultMap, - [absoluteQueryPath], - extraSearchPath, - ); -} - -/** - * Parse a query 'uses' field to a discrete set of query files and update resultMap. - * - * The logic for parsing the string is based on what actions does for - * parsing the 'uses' actions in the workflow file. So it can handle - * local paths starting with './', or references to remote repos, or - * a finite set of hardcoded terms for builtin suites. - */ -async function parseQueryUses( - languages: string[], - codeQL: CodeQL, - resultMap: Queries, - queryUses: string, - workspacePath: string, - configFile?: string, -): Promise { - queryUses = queryUses.trim(); - if (queryUses === "") { - throw new UserError(getQueryUsesInvalid(configFile)); - } - - // Check for the local path case before we start trying to parse the repository name - if (queryUses.startsWith("./")) { - await addLocalQueries( - codeQL, - resultMap, - queryUses.slice(2), - workspacePath, - configFile, - ); - return; - } - - // Check for one of the builtin suites - if (queryUses.indexOf("/") === -1 && queryUses.indexOf("@") === -1) { - await addBuiltinSuiteQueries( - languages, - codeQL, - resultMap, - queryUses, - configFile, - ); - return; - } -} - -// Regex validating stars in paths or paths-ignore entries. -// The intention is to only allow ** to appear when immediately -// preceded and followed by a slash. -const pathStarsRegex = /.*(?:\*\*[^/].*|\*\*$|[^/]\*\*.*)/; - -// Characters that are supported by filters in workflows, but not by us. -// See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet -const filterPatternCharactersRegex = /.*[?+[\]!].*/; - -// Checks that a paths of paths-ignore entry is valid, possibly modifying it -// to make it valid, or if not possible then throws an error. -export function validateAndSanitisePath( - originalPath: string, - propertyName: string, - configFile: string, - logger: Logger, -): string { - // Take a copy so we don't modify the original path, so we can still construct error messages - let newPath = originalPath; - - // All paths are relative to the src root, so strip off leading slashes. - while (newPath.charAt(0) === "/") { - newPath = newPath.substring(1); - } - - // Trailing ** are redundant, so strip them off - if (newPath.endsWith("/**")) { - newPath = newPath.substring(0, newPath.length - 2); - } - - // An empty path is not allowed as it's meaningless - if (newPath === "") { - throw new UserError( - getConfigFilePropertyError( - configFile, - propertyName, - `"${originalPath}" is not an invalid path. ` + - `It is not necessary to include it, and it is not allowed to exclude it.`, - ), - ); - } - - // Check for illegal uses of ** - if (newPath.match(pathStarsRegex)) { - throw new UserError( - getConfigFilePropertyError( - configFile, - propertyName, - `"${originalPath}" contains an invalid "**" wildcard. ` + - `They must be immediately preceded and followed by a slash as in "/**/", or come at the start or end.`, - ), - ); - } - - // Check for other regex characters that we don't support. - // Output a warning so the user knows, but otherwise continue normally. - if (newPath.match(filterPatternCharactersRegex)) { - logger.warning( - getConfigFilePropertyError( - configFile, - propertyName, - `"${originalPath}" contains an unsupported character. ` + - `The filter pattern characters ?, +, [, ], ! are not supported and will be matched literally.`, - ), - ); - } - - // Ban any uses of backslash for now. - // This may not play nicely with project layouts. - // This restriction can be lifted later if we determine they are ok. - if (newPath.indexOf("\\") !== -1) { - throw new UserError( - getConfigFilePropertyError( - configFile, - propertyName, - `"${originalPath}" contains an "\\" character. These are not allowed in filters. ` + - `If running on windows we recommend using "/" instead for path filters.`, - ), - ); - } - - return newPath; -} - -// An undefined configFile in some of these functions indicates that -// the property was in a workflow file, not a config file - -export function getNameInvalid(configFile: string): string { - return getConfigFilePropertyError( - configFile, - NAME_PROPERTY, - "must be a non-empty string", - ); -} - -export function getDisableDefaultQueriesInvalid(configFile: string): string { - return getConfigFilePropertyError( - configFile, - DISABLE_DEFAULT_QUERIES_PROPERTY, - "must be a boolean", - ); -} - -export function getQueriesInvalid(configFile: string): string { - return getConfigFilePropertyError( - configFile, - QUERIES_PROPERTY, - "must be an array", - ); -} - -export function getQueriesMissingUses(configFile: string): string { - return getConfigFilePropertyError( - configFile, - QUERIES_PROPERTY, - "must be an array, with each entry having a 'uses' property", - ); -} - -export function getQueryUsesInvalid( - configFile: string | undefined, - queryUses?: string, -): string { - return getConfigFilePropertyError( - configFile, - `${QUERIES_PROPERTY}.${QUERIES_USES_PROPERTY}`, - `must be a built-in suite (${builtinSuites.join( - " or ", - )}), a relative path, or be of the form "owner/repo[/path]@ref"${ - queryUses !== undefined ? `\n Found: ${queryUses}` : "" - }`, - ); -} - -export function getPathsIgnoreInvalid(configFile: string): string { - return getConfigFilePropertyError( - configFile, - PATHS_IGNORE_PROPERTY, - "must be an array of non-empty strings", - ); -} - -export function getPathsInvalid(configFile: string): string { - return getConfigFilePropertyError( - configFile, - PATHS_PROPERTY, - "must be an array of non-empty strings", - ); -} - -function getPacksRequireLanguage(lang: string, configFile: string): string { - return getConfigFilePropertyError( - configFile, - PACKS_PROPERTY, - `has "${lang}", but it is not a valid language.`, - ); -} - -export function getPacksInvalidSplit(configFile: string): string { - return getConfigFilePropertyError( - configFile, - PACKS_PROPERTY, - "must split packages by language", - ); -} - -export function getPacksInvalid(configFile: string): string { - return getConfigFilePropertyError( - configFile, - PACKS_PROPERTY, - "must be an array of non-empty strings", - ); -} - export function getPacksStrInvalid( packStr: string, configFile?: string, @@ -681,28 +196,6 @@ export function getPacksStrInvalid( : `"${packStr}" is not a valid pack`; } -export function getLocalPathOutsideOfRepository( - configFile: string | undefined, - localPath: string, -): string { - return getConfigFilePropertyError( - configFile, - `${QUERIES_PROPERTY}.${QUERIES_USES_PROPERTY}`, - `is invalid as the local path "${localPath}" is outside of the repository`, - ); -} - -export function getLocalPathDoesNotExist( - configFile: string | undefined, - localPath: string, -): string { - return getConfigFilePropertyError( - configFile, - `${QUERIES_PROPERTY}.${QUERIES_USES_PROPERTY}`, - `is invalid as the local path "${localPath}" does not exist in the repository`, - ); -} - export function getConfigFileOutsideWorkspaceErrorMessage( configFile: string, ): string { @@ -899,34 +392,6 @@ export async function getRawLanguages( return { rawLanguages, autodetected }; } -async function addQueriesFromWorkflow( - codeQL: CodeQL, - queriesInput: string, - languages: string[], - resultMap: Queries, - workspacePath: string, -): Promise { - queriesInput = queriesInput.trim(); - // "+" means "don't override config file" - see shouldAddConfigFileQueries - queriesInput = queriesInput.replace(/^\+/, ""); - - for (const query of queriesInput.split(",")) { - await parseQueryUses(languages, codeQL, resultMap, query, workspacePath); - } -} - -// Returns true if either no queries were provided in the workflow. -// or if the queries in the workflow were provided in "additive" mode, -// indicating that they shouldn't override the config queries but -// should instead be added in addition -function shouldAddConfigFileQueries(queriesInput: string | undefined): boolean { - if (queriesInput) { - return queriesInput.trimStart().slice(0, 1) === "+"; - } - - return true; -} - /** * Get the default config for when the user has not supplied one. */ @@ -942,7 +407,6 @@ export async function getDefaultConfig( repository: RepositoryNwo, tempDir: string, codeQL: CodeQL, - workspacePath: string, gitHubVersion: GitHubVersion, logger: Logger, ): Promise { @@ -952,33 +416,11 @@ export async function getDefaultConfig( repository, logger, ); - const queries: Queries = {}; - for (const language of languages) { - queries[language] = { - builtin: [], - custom: [], - }; - } - await addDefaultQueries(codeQL, languages, queries); const augmentationProperties = calculateAugmentation( rawPacksInput, rawQueriesInput, languages, ); - const packs = augmentationProperties.packsInput - ? { - [languages[0]]: augmentationProperties.packsInput, - } - : {}; - if (rawQueriesInput) { - await addQueriesFromWorkflow( - codeQL, - rawQueriesInput, - languages, - queries, - workspacePath, - ); - } const { trapCaches, trapCacheDownloadTime } = await downloadCacheWithTime( trapCachingEnabled, @@ -989,10 +431,6 @@ export async function getDefaultConfig( return { languages, - queries, - pathsIgnore: [], - paths: [], - packs, originalUserInput: {}, tempDir, codeQLCmd: codeQL.getPath(), @@ -1057,17 +495,6 @@ async function loadConfig( parsedYAML = await getRemoteConfig(configFile, apiDetails); } - // Validate that the 'name' property is syntactically correct, - // even though we don't use the value yet. - if (NAME_PROPERTY in parsedYAML) { - if (typeof parsedYAML[NAME_PROPERTY] !== "string") { - throw new UserError(getNameInvalid(configFile)); - } - if (parsedYAML[NAME_PROPERTY]!.length === 0) { - throw new UserError(getNameInvalid(configFile)); - } - } - const languages = await getLanguages( codeQL, languagesInput, @@ -1075,113 +502,11 @@ async function loadConfig( logger, ); - const queries: Queries = {}; - for (const language of languages) { - queries[language] = { - builtin: [], - custom: [], - }; - } - const pathsIgnore: string[] = []; - const paths: string[] = []; - - let disableDefaultQueries = false; - if (DISABLE_DEFAULT_QUERIES_PROPERTY in parsedYAML) { - if (typeof parsedYAML[DISABLE_DEFAULT_QUERIES_PROPERTY] !== "boolean") { - throw new UserError(getDisableDefaultQueriesInvalid(configFile)); - } - disableDefaultQueries = parsedYAML[DISABLE_DEFAULT_QUERIES_PROPERTY]!; - } - if (!disableDefaultQueries) { - await addDefaultQueries(codeQL, languages, queries); - } const augmentationProperties = calculateAugmentation( rawPacksInput, rawQueriesInput, languages, ); - const packs = parsePacks( - parsedYAML[PACKS_PROPERTY] ?? {}, - rawPacksInput, - augmentationProperties.packsInputCombines, - languages, - configFile, - logger, - ); - - // If queries were provided using `with` in the action configuration, - // they should take precedence over the queries in the config file - // unless they're prefixed with "+", in which case they supplement those - // in the config file. - if (rawQueriesInput) { - await addQueriesFromWorkflow( - codeQL, - rawQueriesInput, - languages, - queries, - workspacePath, - ); - } - if ( - shouldAddConfigFileQueries(rawQueriesInput) && - QUERIES_PROPERTY in parsedYAML - ) { - const queriesArr = parsedYAML[QUERIES_PROPERTY]; - if (!Array.isArray(queriesArr)) { - throw new UserError(getQueriesInvalid(configFile)); - } - for (const query of queriesArr) { - if (typeof query[QUERIES_USES_PROPERTY] !== "string") { - throw new UserError(getQueriesMissingUses(configFile)); - } - await parseQueryUses( - languages, - codeQL, - queries, - query[QUERIES_USES_PROPERTY], - workspacePath, - configFile, - ); - } - } - - if (PATHS_IGNORE_PROPERTY in parsedYAML) { - if (!Array.isArray(parsedYAML[PATHS_IGNORE_PROPERTY])) { - throw new UserError(getPathsIgnoreInvalid(configFile)); - } - for (const ignorePath of parsedYAML[PATHS_IGNORE_PROPERTY]!) { - if (typeof ignorePath !== "string" || ignorePath === "") { - throw new UserError(getPathsIgnoreInvalid(configFile)); - } - pathsIgnore.push( - validateAndSanitisePath( - ignorePath, - PATHS_IGNORE_PROPERTY, - configFile, - logger, - ), - ); - } - } - - if (PATHS_PROPERTY in parsedYAML) { - if (!Array.isArray(parsedYAML[PATHS_PROPERTY])) { - throw new UserError(getPathsInvalid(configFile)); - } - for (const includePath of parsedYAML[PATHS_PROPERTY]!) { - if (typeof includePath !== "string" || includePath === "") { - throw new UserError(getPathsInvalid(configFile)); - } - paths.push( - validateAndSanitisePath( - includePath, - PATHS_PROPERTY, - configFile, - logger, - ), - ); - } - } const { trapCaches, trapCacheDownloadTime } = await downloadCacheWithTime( trapCachingEnabled, @@ -1192,10 +517,6 @@ async function loadConfig( return { languages, - queries, - pathsIgnore, - paths, - packs, originalUserInput: parsedYAML, tempDir, codeQLCmd: codeQL.getPath(), @@ -1289,52 +610,7 @@ const PACK_IDENTIFIER_PATTERN = (function () { })(); // Exported for testing -export function parsePacksFromConfig( - packsByLanguage: string[] | Record, - languages: Language[], - configFile: string, - logger: Logger, -): Packs { - const packs = {}; - - if (Array.isArray(packsByLanguage)) { - if (languages.length === 1) { - // single language analysis, so language is implicit - packsByLanguage = { - [languages[0]]: packsByLanguage, - }; - } else { - // this is an error since multi-language analysis requires - // packs split by language - throw new UserError(getPacksInvalidSplit(configFile)); - } - } - - for (const [lang, packsArr] of Object.entries(packsByLanguage)) { - if (!Array.isArray(packsArr)) { - throw new UserError(getPacksInvalid(configFile)); - } - if (!languages.includes(lang as Language)) { - // This particular language is not being analyzed in this run. - if (Language[lang as Language]) { - logger.info( - `Ignoring packs for ${lang} since this language is not being analyzed in this run.`, - ); - continue; - } else { - // This language is invalid, probably a misspelling - throw new UserError(getPacksRequireLanguage(configFile, lang)); - } - } - - packs[lang] = packsArr.map((packStr) => - validatePackSpecification(packStr, configFile), - ); - } - return packs; -} - -function parsePacksFromInput( +export function parsePacksFromInput( rawPacksInput: string | undefined, languages: Language[], packsInputCombines: boolean, @@ -1369,7 +645,7 @@ function parsePacksFromInput( return { [languages[0]]: rawPacksInput.split(",").reduce((packs, pack) => { - packs.push(validatePackSpecification(pack, "")); + packs.push(validatePackSpecification(pack)); return packs; }, [] as string[]), }; @@ -1393,12 +669,9 @@ function parsePacksFromInput( * @param packStr the package specification to verify. * @param configFile Config file to use for error reporting */ -export function parsePacksSpecification( - packStr: string, - configFile?: string, -): Pack { +export function parsePacksSpecification(packStr: string): Pack { if (typeof packStr !== "string") { - throw new UserError(getPacksStrInvalid(packStr, configFile)); + throw new UserError(getPacksStrInvalid(packStr)); } packStr = packStr.trim(); @@ -1426,14 +699,14 @@ export function parsePacksSpecification( : undefined; if (!PACK_IDENTIFIER_PATTERN.test(packName)) { - throw new UserError(getPacksStrInvalid(packStr, configFile)); + throw new UserError(getPacksStrInvalid(packStr)); } if (version) { try { new semver.Range(version); } catch (e) { // The range string is invalid. OK to ignore the caught error - throw new UserError(getPacksStrInvalid(packStr, configFile)); + throw new UserError(getPacksStrInvalid(packStr)); } } @@ -1447,12 +720,12 @@ export function parsePacksSpecification( path.normalize(packPath).split(path.sep).join("/") !== packPath.split(path.sep).join("/")) ) { - throw new UserError(getPacksStrInvalid(packStr, configFile)); + throw new UserError(getPacksStrInvalid(packStr)); } if (!packPath && pathStart) { // 0 length path - throw new UserError(getPacksStrInvalid(packStr, configFile)); + throw new UserError(getPacksStrInvalid(packStr)); } return { @@ -1462,42 +735,8 @@ export function parsePacksSpecification( }; } -export function validatePackSpecification(pack: string, configFile?: string) { - return prettyPrintPack(parsePacksSpecification(pack, configFile)); -} - -// exported for testing -export function parsePacks( - rawPacksFromConfig: string[] | Record, - rawPacksFromInput: string | undefined, - packsInputCombines: boolean, - languages: Language[], - configFile: string, - logger: Logger, -): Packs { - const packsFomConfig = parsePacksFromConfig( - rawPacksFromConfig, - languages, - configFile, - logger, - ); - - const packsFromInput = parsePacksFromInput( - rawPacksFromInput, - languages, - packsInputCombines, - ); - if (!packsFromInput) { - return packsFomConfig; - } - if (!packsInputCombines) { - if (!packsFromInput) { - throw new UserError(getPacksInvalid(configFile)); - } - return packsFromInput; - } - - return combinePacks(packsFromInput, packsFomConfig); +export function validatePackSpecification(pack: string) { + return prettyPrintPack(parsePacksSpecification(pack)); } /** @@ -1514,19 +753,6 @@ function shouldCombine(inputValue?: string): boolean { return !!inputValue?.trim().startsWith("+"); } -function combinePacks(packs1: Packs, packs2: Packs): Packs { - const packs = {}; - for (const lang of Object.keys(packs1)) { - packs[lang] = packs1[lang].concat(packs2[lang] || []); - } - for (const lang of Object.keys(packs2)) { - if (!packs[lang]) { - packs[lang] = packs2[lang]; - } - } - return packs; -} - function dbLocationOrDefault( dbLocation: string | undefined, tempDir: string, @@ -1588,7 +814,6 @@ export async function initConfig( repository, tempDir, codeQL, - workspacePath, gitHubVersion, logger, ); diff --git a/src/database-upload.test.ts b/src/database-upload.test.ts index 6cdce4320..366af5777 100644 --- a/src/database-upload.test.ts +++ b/src/database-upload.test.ts @@ -43,15 +43,11 @@ const testApiDetails: GitHubApiDetails = { function getTestConfig(tmpDir: string): Config { return { languages: [Language.javascript], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "foo", gitHubVersion: { type: GitHubVariant.DOTCOM }, dbLocation: tmpDir, - packs: {}, debugMode: false, debugArtifactName: DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: DEFAULT_DEBUG_DATABASE_NAME, diff --git a/src/init.ts b/src/init.ts index 6ca68867e..ba753aff6 100644 --- a/src/init.ts +++ b/src/init.ts @@ -131,7 +131,8 @@ function printPathFiltersWarning(config: configUtils.Config, logger: Logger) { // Index include/exclude/filters only work in javascript/python/ruby. // If any other languages are detected/configured then show a warning. if ( - (config.paths.length !== 0 || config.pathsIgnore.length !== 0) && + (config.originalUserInput.paths?.length !== 0 || + config.originalUserInput["paths-ignore"]?.length !== 0) && !config.languages.every(isScannedLanguage) ) { logger.warning( diff --git a/src/tracer-config.test.ts b/src/tracer-config.test.ts index 056422bc4..784f2725a 100644 --- a/src/tracer-config.test.ts +++ b/src/tracer-config.test.ts @@ -14,15 +14,11 @@ setupTests(test); function getTestConfig(tmpDir: string): configUtils.Config { return { languages: [Language.java], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "", gitHubVersion: { type: util.GitHubVariant.DOTCOM } as util.GitHubVersion, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, diff --git a/src/trap-caching.test.ts b/src/trap-caching.test.ts index b73032eee..48901e707 100644 --- a/src/trap-caching.test.ts +++ b/src/trap-caching.test.ts @@ -71,9 +71,6 @@ const stubCodeql = setCodeQL({ const testConfigWithoutTmpDir: Config = { languages: [Language.javascript, Language.cpp], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: "", codeQLCmd: "", @@ -81,7 +78,6 @@ const testConfigWithoutTmpDir: Config = { type: util.GitHubVariant.DOTCOM, } as util.GitHubVersion, dbLocation: "", - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME, @@ -98,15 +94,11 @@ const testConfigWithoutTmpDir: Config = { function getTestConfigWithTempDir(tmpDir: string): configUtils.Config { return { languages: [Language.javascript, Language.ruby], - queries: {}, - pathsIgnore: [], - paths: [], originalUserInput: {}, tempDir: tmpDir, codeQLCmd: "", gitHubVersion: { type: util.GitHubVariant.DOTCOM } as util.GitHubVersion, dbLocation: path.resolve(tmpDir, "codeql_databases"), - packs: {}, debugMode: false, debugArtifactName: util.DEFAULT_DEBUG_ARTIFACT_NAME, debugDatabaseName: util.DEFAULT_DEBUG_DATABASE_NAME,