From 0853901c0d099b03c3193fa9a41040e447982a6e Mon Sep 17 00:00:00 2001 From: Simon Engledew Date: Wed, 13 Jan 2021 12:28:24 +0000 Subject: [PATCH 1/2] Fix overzealous warning when PR scanning is not required --- lib/actions-util.js | 50 +++--- lib/actions-util.js.map | 2 +- lib/actions-util.test.js | 137 +++++++++-------- lib/actions-util.test.js.map | 2 +- src/actions-util.test.ts | 288 ++++++++++++++++++++++------------- src/actions-util.ts | 59 +++---- 6 files changed, 324 insertions(+), 214 deletions(-) diff --git a/lib/actions-util.js b/lib/actions-util.js index 6d861c3bd..ffbd292f7 100644 --- a/lib/actions-util.js +++ b/lib/actions-util.js @@ -186,12 +186,12 @@ function validateWorkflow(doc) { } let missing = MissingTriggers.None; if (doc.on === undefined) { - missing = MissingTriggers.Push | MissingTriggers.PullRequest; + // codeql will scan the default branch } else if (typeof doc.on === "string") { switch (doc.on) { case "push": - missing = MissingTriggers.PullRequest; + // valid configuration break; case "pull_request": missing = MissingTriggers.Push; @@ -202,21 +202,19 @@ function validateWorkflow(doc) { } } else if (Array.isArray(doc.on)) { - if (!doc.on.includes("push")) { + const hasPush = doc.on.includes("push"); + const hasPullRequest = doc.on.includes("pull_request"); + if (hasPullRequest && !hasPush) { missing = missing | MissingTriggers.Push; } - if (!doc.on.includes("pull_request")) { - missing = missing | MissingTriggers.PullRequest; - } } else if (isObject(doc.on)) { - if (!Object.prototype.hasOwnProperty.call(doc.on, "pull_request")) { - missing = missing | MissingTriggers.PullRequest; - } - if (!Object.prototype.hasOwnProperty.call(doc.on, "push")) { + const hasPush = Object.prototype.hasOwnProperty.call(doc.on, "push"); + const hasPullRequest = Object.prototype.hasOwnProperty.call(doc.on, "pull_request"); + if (!hasPush) { missing = missing | MissingTriggers.Push; } - else { + if (hasPush && hasPullRequest) { const paths = (_e = doc.on.push) === null || _e === void 0 ? void 0 : _e.paths; // if you specify paths or paths-ignore you can end up with commits that have no baseline // if they didn't change any files @@ -229,22 +227,26 @@ function validateWorkflow(doc) { errors.push(exports.WorkflowErrors.PathsIgnoreSpecified); } } - const push = branchesToArray((_g = doc.on.push) === null || _g === void 0 ? void 0 : _g.branches); - if (push !== "**") { - const pull_request = branchesToArray((_h = doc.on.pull_request) === null || _h === void 0 ? void 0 : _h.branches); - if (pull_request !== "**") { - const difference = pull_request.filter((value) => !push.some((o) => patternIsSuperset(o, value))); - if (difference.length > 0) { - // there are branches in pull_request that may not have a baseline - // because we are not building them on push + // check the user is scanning PRs right now + // if not the warning does not apply + if (doc.on.pull_request !== undefined) { + const push = branchesToArray((_g = doc.on.push) === null || _g === void 0 ? void 0 : _g.branches); + if (push !== "**") { + const pull_request = branchesToArray((_h = doc.on.pull_request) === null || _h === void 0 ? void 0 : _h.branches); + if (pull_request !== "**") { + const difference = pull_request.filter((value) => !push.some((o) => patternIsSuperset(o, value))); + if (difference.length > 0) { + // there are branches in pull_request that may not have a baseline + // because we are not building them on push + errors.push(exports.WorkflowErrors.MismatchedBranches); + } + } + else if (push.length > 0) { + // push is set up to run on a subset of branches + // and you could open a PR against a branch with no baseline errors.push(exports.WorkflowErrors.MismatchedBranches); } } - else if (push.length > 0) { - // push is set up to run on a subset of branches - // and you could open a PR against a branch with no baseline - errors.push(exports.WorkflowErrors.MismatchedBranches); - } } } else { diff --git a/lib/actions-util.js.map b/lib/actions-util.js.map index 1995e039a..551dcdad8 100644 --- a/lib/actions-util.js.map +++ b/lib/actions-util.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/actions-util.test.js b/lib/actions-util.test.js index 2ca93b930..650c319ad 100644 --- a/lib/actions-util.test.js +++ b/lib/actions-util.test.js @@ -15,6 +15,9 @@ const yaml = __importStar(require("js-yaml")); const sinon_1 = __importDefault(require("sinon")); const actionsutil = __importStar(require("./actions-util")); const testing_utils_1 = require("./testing-utils"); +function errorCodes(actual, expected) { + return [actual.map(({ code }) => code), expected.map(({ code }) => code)]; +} testing_utils_1.setupTests(ava_1.default); ava_1.default("getRef() throws on the empty string", async (t) => { process.env["GITHUB_REF"] = ""; @@ -69,34 +72,29 @@ ava_1.default("prepareEnvironment() when a local run", (t) => { t.deepEqual(process.env.GITHUB_JOB, "UNKNOWN-JOB"); t.deepEqual(process.env.CODEQL_ACTION_ANALYSIS_KEY, "LOCAL-RUN:UNKNOWN-JOB"); }); -ava_1.default("validateWorkflow() when on is missing", (t) => { - const errors = actionsutil.validateWorkflow({}); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingHooks]); -}); ava_1.default("validateWorkflow() when on.push is missing", (t) => { const errors = actionsutil.validateWorkflow({ on: {} }); - console.log(errors); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingHooks]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MissingPushHook])); }); ava_1.default("validateWorkflow() when on.push is an array missing pull_request", (t) => { const errors = actionsutil.validateWorkflow({ on: ["push"] }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingPullRequestHook]); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push is an array missing push", (t) => { const errors = actionsutil.validateWorkflow({ on: ["pull_request"] }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingPushHook]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MissingPushHook])); }); ava_1.default("validateWorkflow() when on.push is valid", (t) => { const errors = actionsutil.validateWorkflow({ on: ["push", "pull_request"], }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push is a valid superset", (t) => { const errors = actionsutil.validateWorkflow({ on: ["push", "pull_request", "schedule"], }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push should not have a path", (t) => { const errors = actionsutil.validateWorkflow({ @@ -105,31 +103,33 @@ ava_1.default("validateWorkflow() when on.push should not have a path", (t) => { pull_request: { branches: ["main"] }, }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.PathsSpecified]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.PathsSpecified])); }); ava_1.default("validateWorkflow() when on.push is a correct object", (t) => { const errors = actionsutil.validateWorkflow({ on: { push: { branches: ["main"] }, pull_request: { branches: ["main"] } }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.pull_requests is a string", (t) => { const errors = actionsutil.validateWorkflow({ on: { push: { branches: ["main"] }, pull_request: { branches: "*" } }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches])); }); ava_1.default("validateWorkflow() when on.pull_requests is a string and correct", (t) => { const errors = actionsutil.validateWorkflow({ on: { push: { branches: "*" }, pull_request: { branches: "*" } }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push is correct with empty objects", (t) => { - const errors = actionsutil.validateWorkflow({ - on: { push: undefined, pull_request: undefined }, - }); - t.deepEqual(errors, []); + const errors = actionsutil.validateWorkflow(yaml.safeLoad(` +on: + push: + pull_request: +`)); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push is mismatched", (t) => { const errors = actionsutil.validateWorkflow({ @@ -138,7 +138,7 @@ ava_1.default("validateWorkflow() when on.push is mismatched", (t) => { pull_request: { branches: ["feature"] }, }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches])); }); ava_1.default("validateWorkflow() when on.push is not mismatched", (t) => { const errors = actionsutil.validateWorkflow({ @@ -147,7 +147,7 @@ ava_1.default("validateWorkflow() when on.push is not mismatched", (t) => { pull_request: { branches: ["main"] }, }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push is mismatched for pull_request", (t) => { const errors = actionsutil.validateWorkflow({ @@ -156,54 +156,52 @@ ava_1.default("validateWorkflow() when on.push is mismatched for pull_request", pull_request: { branches: ["main", "feature"] }, }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches])); }); ava_1.default("validateWorkflow() for a range of malformed workflows", (t) => { - t.deepEqual(actionsutil.validateWorkflow({ + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: { push: 1, pull_request: 1, }, - }), []); - t.deepEqual(actionsutil.validateWorkflow({ + }), [])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: 1, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: [1], - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: { 1: 1 }, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: { test: 1 }, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: { test: [1] }, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: { test: { steps: 1 } }, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: { test: { steps: [{ notrun: "git checkout HEAD^2" }] } }, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: 1, jobs: { test: [undefined] }, - }), [actionsutil.WorkflowErrors.MissingHooks]); - t.deepEqual(actionsutil.validateWorkflow(1), [ - actionsutil.WorkflowErrors.MissingHooks, - ]); - t.deepEqual(actionsutil.validateWorkflow({ + }), [actionsutil.WorkflowErrors.MissingHooks])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(1), [])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow({ on: { push: { branches: 1, @@ -212,16 +210,17 @@ ava_1.default("validateWorkflow() for a range of malformed workflows", (t) => { branches: 1, }, }, - }), []); + }), [])); }); ava_1.default("validateWorkflow() when on.pull_request for every branch but push specifies branches", (t) => { - const errors = actionsutil.validateWorkflow({ - on: { - push: { branches: ["main"] }, - pull_request: null, - }, - }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + const errors = actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +on: + push: + branches: ["main"] + pull_request: +`)); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches])); }); ava_1.default("validateWorkflow() when on.pull_request for wildcard branches", (t) => { const errors = actionsutil.validateWorkflow({ @@ -230,7 +229,7 @@ ava_1.default("validateWorkflow() when on.pull_request for wildcard branches", ( pull_request: { branches: "feature/moose" }, }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.pull_request for mismatched wildcard branches", (t) => { const errors = actionsutil.validateWorkflow({ @@ -239,7 +238,7 @@ ava_1.default("validateWorkflow() when on.pull_request for mismatched wildcard b pull_request: { branches: "feature/*" }, }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches])); }); ava_1.default("validateWorkflow() when HEAD^2 is checked out", (t) => { process.env.GITHUB_JOB = "test"; @@ -247,7 +246,7 @@ ava_1.default("validateWorkflow() when HEAD^2 is checked out", (t) => { on: ["push", "pull_request"], jobs: { test: { steps: [{ run: "git checkout HEAD^2" }] } }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead])); }); ava_1.default("formatWorkflowErrors() when there is one error", (t) => { const message = actionsutil.formatWorkflowErrors([ @@ -301,7 +300,7 @@ ava_1.default("validateWorkflow() when branches contain dots", (t) => { # The branches below must be a subset of the branches above branches: [4.1, master] `)); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push has a trailing comma", (t) => { const errors = actionsutil.validateWorkflow(yaml.safeLoad(` @@ -313,7 +312,7 @@ on: # The branches below must be a subset of the branches above branches: [master] `)); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() should only report the current job's CheckoutWrongHead", (t) => { process.env.GITHUB_JOB = "test"; @@ -337,7 +336,7 @@ jobs: test3: steps: [] `)); - t.deepEqual(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead]); + t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead])); }); ava_1.default("validateWorkflow() should not report a different job's CheckoutWrongHead", (t) => { process.env.GITHUB_JOB = "test3"; @@ -361,6 +360,24 @@ jobs: test3: steps: [] `)); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); +}); +ava_1.default("validateWorkflow() when on is missing", (t) => { + const errors = actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +`)); + t.deepEqual(...errorCodes(errors, [])); +}); +ava_1.default("validateWorkflow() should not report an error if PRs are totally unconfigured", (t) => { + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +on: + push: + branches: [master] +`)), [])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +on: ["push"] +`)), [])); }); //# sourceMappingURL=actions-util.test.js.map \ No newline at end of file diff --git a/lib/actions-util.test.js.map b/lib/actions-util.test.js.map index 385f29357..1509da443 100644 --- a/lib/actions-util.test.js.map +++ b/lib/actions-util.test.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.test.js","sourceRoot":"","sources":["../src/actions-util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.test.js","sourceRoot":"","sources":["../src/actions-util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/actions-util.test.ts b/src/actions-util.test.ts index 02886c08d..f99c580cc 100644 --- a/src/actions-util.test.ts +++ b/src/actions-util.test.ts @@ -5,6 +5,13 @@ import sinon from "sinon"; import * as actionsutil from "./actions-util"; import { setupTests } from "./testing-utils"; +function errorCodes( + actual: actionsutil.CodedError[], + expected: actionsutil.CodedError[] +): [string[], string[]] { + return [actual.map(({ code }) => code), expected.map(({ code }) => code)]; +} + setupTests(test); test("getRef() throws on the empty string", async (t) => { @@ -83,30 +90,26 @@ test("prepareEnvironment() when a local run", (t) => { t.deepEqual(process.env.CODEQL_ACTION_ANALYSIS_KEY, "LOCAL-RUN:UNKNOWN-JOB"); }); -test("validateWorkflow() when on is missing", (t) => { - const errors = actionsutil.validateWorkflow({}); - - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingHooks]); -}); - test("validateWorkflow() when on.push is missing", (t) => { const errors = actionsutil.validateWorkflow({ on: {} }); - console.log(errors); - - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingHooks]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MissingPushHook]) + ); }); test("validateWorkflow() when on.push is an array missing pull_request", (t) => { const errors = actionsutil.validateWorkflow({ on: ["push"] }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingPullRequestHook]); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push is an array missing push", (t) => { const errors = actionsutil.validateWorkflow({ on: ["pull_request"] }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MissingPushHook]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MissingPushHook]) + ); }); test("validateWorkflow() when on.push is valid", (t) => { @@ -114,7 +117,7 @@ test("validateWorkflow() when on.push is valid", (t) => { on: ["push", "pull_request"], }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push is a valid superset", (t) => { @@ -122,7 +125,7 @@ test("validateWorkflow() when on.push is a valid superset", (t) => { on: ["push", "pull_request", "schedule"], }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push should not have a path", (t) => { @@ -133,7 +136,9 @@ test("validateWorkflow() when on.push should not have a path", (t) => { }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.PathsSpecified]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.PathsSpecified]) + ); }); test("validateWorkflow() when on.push is a correct object", (t) => { @@ -141,7 +146,7 @@ test("validateWorkflow() when on.push is a correct object", (t) => { on: { push: { branches: ["main"] }, pull_request: { branches: ["main"] } }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.pull_requests is a string", (t) => { @@ -149,7 +154,9 @@ test("validateWorkflow() when on.pull_requests is a string", (t) => { on: { push: { branches: ["main"] }, pull_request: { branches: "*" } }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches]) + ); }); test("validateWorkflow() when on.pull_requests is a string and correct", (t) => { @@ -157,15 +164,19 @@ test("validateWorkflow() when on.pull_requests is a string and correct", (t) => on: { push: { branches: "*" }, pull_request: { branches: "*" } }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push is correct with empty objects", (t) => { - const errors = actionsutil.validateWorkflow({ - on: { push: undefined, pull_request: undefined }, - }); + const errors = actionsutil.validateWorkflow( + yaml.safeLoad(` +on: + push: + pull_request: +`) + ); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push is mismatched", (t) => { @@ -176,7 +187,9 @@ test("validateWorkflow() when on.push is mismatched", (t) => { }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches]) + ); }); test("validateWorkflow() when on.push is not mismatched", (t) => { @@ -187,7 +200,7 @@ test("validateWorkflow() when on.push is not mismatched", (t) => { }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push is mismatched for pull_request", (t) => { @@ -198,119 +211,146 @@ test("validateWorkflow() when on.push is mismatched for pull_request", (t) => { }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches]) + ); }); test("validateWorkflow() for a range of malformed workflows", (t) => { t.deepEqual( - actionsutil.validateWorkflow({ - on: { - push: 1, - pull_request: 1, - }, - } as any), - [] + ...errorCodes( + actionsutil.validateWorkflow({ + on: { + push: 1, + pull_request: 1, + }, + } as any), + [] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: 1, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: 1, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: [1], - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: [1], + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: { 1: 1 }, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: { 1: 1 }, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: { test: 1 }, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: { test: 1 }, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: { test: [1] }, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: { test: [1] }, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: { test: { steps: 1 } }, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: { test: { steps: 1 } }, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: { test: { steps: [{ notrun: "git checkout HEAD^2" }] } }, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: { test: { steps: [{ notrun: "git checkout HEAD^2" }] } }, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); t.deepEqual( - actionsutil.validateWorkflow({ - on: 1, - jobs: { test: [undefined] }, - } as any), - [actionsutil.WorkflowErrors.MissingHooks] + ...errorCodes( + actionsutil.validateWorkflow({ + on: 1, + jobs: { test: [undefined] }, + } as any), + [actionsutil.WorkflowErrors.MissingHooks] + ) ); - t.deepEqual(actionsutil.validateWorkflow(1 as any), [ - actionsutil.WorkflowErrors.MissingHooks, - ]); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(1 as any), [])); t.deepEqual( - actionsutil.validateWorkflow({ - on: { - push: { - branches: 1, + ...errorCodes( + actionsutil.validateWorkflow({ + on: { + push: { + branches: 1, + }, + pull_request: { + branches: 1, + }, }, - pull_request: { - branches: 1, - }, - }, - } as any), - [] + } as any), + [] + ) ); }); test("validateWorkflow() when on.pull_request for every branch but push specifies branches", (t) => { - const errors = actionsutil.validateWorkflow({ - on: { - push: { branches: ["main"] }, - pull_request: null, - }, - }); + const errors = actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +on: + push: + branches: ["main"] + pull_request: +`) + ); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches]) + ); }); test("validateWorkflow() when on.pull_request for wildcard branches", (t) => { @@ -321,7 +361,7 @@ test("validateWorkflow() when on.pull_request for wildcard branches", (t) => { }, }); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.pull_request for mismatched wildcard branches", (t) => { @@ -332,7 +372,9 @@ test("validateWorkflow() when on.pull_request for mismatched wildcard branches", }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.MismatchedBranches]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.MismatchedBranches]) + ); }); test("validateWorkflow() when HEAD^2 is checked out", (t) => { @@ -343,7 +385,9 @@ test("validateWorkflow() when HEAD^2 is checked out", (t) => { jobs: { test: { steps: [{ run: "git checkout HEAD^2" }] } }, }); - t.deepEqual(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead]) + ); }); test("formatWorkflowErrors() when there is one error", (t) => { @@ -416,7 +460,7 @@ test("validateWorkflow() when branches contain dots", (t) => { `) ); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push has a trailing comma", (t) => { @@ -432,7 +476,7 @@ on: `) ); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() should only report the current job's CheckoutWrongHead", (t) => { @@ -461,7 +505,9 @@ jobs: `) ); - t.deepEqual(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead]); + t.deepEqual( + ...errorCodes(errors, [actionsutil.WorkflowErrors.CheckoutWrongHead]) + ); }); test("validateWorkflow() should not report a different job's CheckoutWrongHead", (t) => { @@ -490,5 +536,43 @@ jobs: `) ); - t.deepEqual(errors, []); + t.deepEqual(...errorCodes(errors, [])); +}); + +test("validateWorkflow() when on is missing", (t) => { + const errors = actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +`) + ); + + t.deepEqual(...errorCodes(errors, [])); +}); + +test("validateWorkflow() should not report an error if PRs are totally unconfigured", (t) => { + t.deepEqual( + ...errorCodes( + actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +on: + push: + branches: [master] +`) + ), + [] + ) + ); + + t.deepEqual( + ...errorCodes( + actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +on: ["push"] +`) + ), + [] + ) + ); }); diff --git a/src/actions-util.ts b/src/actions-util.ts index 8c37c1722..b7690e268 100644 --- a/src/actions-util.ts +++ b/src/actions-util.ts @@ -184,7 +184,7 @@ enum MissingTriggers { PullRequest = 2, } -interface CodedError { +export interface CodedError { message: string; code: string; } @@ -236,11 +236,11 @@ export function validateWorkflow(doc: Workflow): CodedError[] { let missing = MissingTriggers.None; if (doc.on === undefined) { - missing = MissingTriggers.Push | MissingTriggers.PullRequest; + // codeql will scan the default branch } else if (typeof doc.on === "string") { switch (doc.on) { case "push": - missing = MissingTriggers.PullRequest; + // valid configuration break; case "pull_request": missing = MissingTriggers.Push; @@ -250,19 +250,22 @@ export function validateWorkflow(doc: Workflow): CodedError[] { break; } } else if (Array.isArray(doc.on)) { - if (!doc.on.includes("push")) { + const hasPush = doc.on.includes("push"); + const hasPullRequest = doc.on.includes("pull_request"); + if (hasPullRequest && !hasPush) { missing = missing | MissingTriggers.Push; } - if (!doc.on.includes("pull_request")) { - missing = missing | MissingTriggers.PullRequest; - } } else if (isObject(doc.on)) { - if (!Object.prototype.hasOwnProperty.call(doc.on, "pull_request")) { - missing = missing | MissingTriggers.PullRequest; - } - if (!Object.prototype.hasOwnProperty.call(doc.on, "push")) { + const hasPush = Object.prototype.hasOwnProperty.call(doc.on, "push"); + const hasPullRequest = Object.prototype.hasOwnProperty.call( + doc.on, + "pull_request" + ); + + if (!hasPush) { missing = missing | MissingTriggers.Push; - } else { + } + if (hasPush && hasPullRequest) { const paths = doc.on.push?.paths; // if you specify paths or paths-ignore you can end up with commits that have no baseline // if they didn't change any files @@ -276,24 +279,28 @@ export function validateWorkflow(doc: Workflow): CodedError[] { } } - const push = branchesToArray(doc.on.push?.branches); + // check the user is scanning PRs right now + // if not the warning does not apply + if (doc.on.pull_request !== undefined) { + const push = branchesToArray(doc.on.push?.branches); - if (push !== "**") { - const pull_request = branchesToArray(doc.on.pull_request?.branches); + if (push !== "**") { + const pull_request = branchesToArray(doc.on.pull_request?.branches); - if (pull_request !== "**") { - const difference = pull_request.filter( - (value) => !push.some((o) => patternIsSuperset(o, value)) - ); - if (difference.length > 0) { - // there are branches in pull_request that may not have a baseline - // because we are not building them on push + if (pull_request !== "**") { + const difference = pull_request.filter( + (value) => !push.some((o) => patternIsSuperset(o, value)) + ); + if (difference.length > 0) { + // there are branches in pull_request that may not have a baseline + // because we are not building them on push + errors.push(WorkflowErrors.MismatchedBranches); + } + } else if (push.length > 0) { + // push is set up to run on a subset of branches + // and you could open a PR against a branch with no baseline errors.push(WorkflowErrors.MismatchedBranches); } - } else if (push.length > 0) { - // push is set up to run on a subset of branches - // and you could open a PR against a branch with no baseline - errors.push(WorkflowErrors.MismatchedBranches); } } } else { From 1a6f6a27b37c0e7cc2815f394c0924865104a6b3 Mon Sep 17 00:00:00 2001 From: Simon Engledew Date: Fri, 15 Jan 2021 08:13:47 +0000 Subject: [PATCH 2/2] Implement PR feedback --- lib/actions-util.js | 21 ++++++----------- lib/actions-util.js.map | 2 +- lib/actions-util.test.js | 19 +++++++++++++-- lib/actions-util.test.js.map | 2 +- src/actions-util.test.ts | 45 ++++++++++++++++++++++++++++++++---- src/actions-util.ts | 21 ++++++----------- 6 files changed, 74 insertions(+), 36 deletions(-) diff --git a/lib/actions-util.js b/lib/actions-util.js index ffbd292f7..f25c6c34e 100644 --- a/lib/actions-util.js +++ b/lib/actions-util.js @@ -186,19 +186,11 @@ function validateWorkflow(doc) { } let missing = MissingTriggers.None; if (doc.on === undefined) { - // codeql will scan the default branch + // this is not a valid config } else if (typeof doc.on === "string") { - switch (doc.on) { - case "push": - // valid configuration - break; - case "pull_request": - missing = MissingTriggers.Push; - break; - default: - missing = MissingTriggers.Push | MissingTriggers.PullRequest; - break; + if (doc.on === "pull_request") { + missing = MissingTriggers.Push; } } else if (Array.isArray(doc.on)) { @@ -211,7 +203,7 @@ function validateWorkflow(doc) { else if (isObject(doc.on)) { const hasPush = Object.prototype.hasOwnProperty.call(doc.on, "push"); const hasPullRequest = Object.prototype.hasOwnProperty.call(doc.on, "pull_request"); - if (!hasPush) { + if (!hasPush && hasPullRequest) { missing = missing | MissingTriggers.Push; } if (hasPush && hasPullRequest) { @@ -227,8 +219,9 @@ function validateWorkflow(doc) { errors.push(exports.WorkflowErrors.PathsIgnoreSpecified); } } - // check the user is scanning PRs right now - // if not the warning does not apply + // if doc.on.pull_request is null that means 'all branches' + // if doc.on.pull_request is undefined that means 'off' + // we only want to check for mismatched branches if pull_request is on. if (doc.on.pull_request !== undefined) { const push = branchesToArray((_g = doc.on.push) === null || _g === void 0 ? void 0 : _g.branches); if (push !== "**") { diff --git a/lib/actions-util.js.map b/lib/actions-util.js.map index 551dcdad8..b1c95e953 100644 --- a/lib/actions-util.js.map +++ b/lib/actions-util.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/actions-util.test.js b/lib/actions-util.test.js index 650c319ad..f9a0a2201 100644 --- a/lib/actions-util.test.js +++ b/lib/actions-util.test.js @@ -72,9 +72,9 @@ ava_1.default("prepareEnvironment() when a local run", (t) => { t.deepEqual(process.env.GITHUB_JOB, "UNKNOWN-JOB"); t.deepEqual(process.env.CODEQL_ACTION_ANALYSIS_KEY, "LOCAL-RUN:UNKNOWN-JOB"); }); -ava_1.default("validateWorkflow() when on.push is missing", (t) => { +ava_1.default("validateWorkflow() when on is empty", (t) => { const errors = actionsutil.validateWorkflow({ on: {} }); - t.deepEqual(...errorCodes(errors, [actionsutil.WorkflowErrors.MissingPushHook])); + t.deepEqual(...errorCodes(errors, [])); }); ava_1.default("validateWorkflow() when on.push is an array missing pull_request", (t) => { const errors = actionsutil.validateWorkflow({ on: ["push"] }); @@ -368,6 +368,21 @@ name: "CodeQL" `)); t.deepEqual(...errorCodes(errors, [])); }); +ava_1.default("validateWorkflow() with a different on setup", (t) => { + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +on: "workflow_dispatch" +`)), [])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +on: [workflow_dispatch] +`)), [])); + t.deepEqual(...errorCodes(actionsutil.validateWorkflow(yaml.safeLoad(` +name: "CodeQL" +on: + workflow_dispatch: {} +`)), [])); +}); ava_1.default("validateWorkflow() should not report an error if PRs are totally unconfigured", (t) => { t.deepEqual(...errorCodes(actionsutil.validateWorkflow(yaml.safeLoad(` name: "CodeQL" diff --git a/lib/actions-util.test.js.map b/lib/actions-util.test.js.map index 1509da443..cecc41d58 100644 --- a/lib/actions-util.test.js.map +++ b/lib/actions-util.test.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.test.js","sourceRoot":"","sources":["../src/actions-util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.test.js","sourceRoot":"","sources":["../src/actions-util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/actions-util.test.ts b/src/actions-util.test.ts index f99c580cc..85dee20a4 100644 --- a/src/actions-util.test.ts +++ b/src/actions-util.test.ts @@ -90,12 +90,10 @@ test("prepareEnvironment() when a local run", (t) => { t.deepEqual(process.env.CODEQL_ACTION_ANALYSIS_KEY, "LOCAL-RUN:UNKNOWN-JOB"); }); -test("validateWorkflow() when on.push is missing", (t) => { +test("validateWorkflow() when on is empty", (t) => { const errors = actionsutil.validateWorkflow({ on: {} }); - t.deepEqual( - ...errorCodes(errors, [actionsutil.WorkflowErrors.MissingPushHook]) - ); + t.deepEqual(...errorCodes(errors, [])); }); test("validateWorkflow() when on.push is an array missing pull_request", (t) => { @@ -549,6 +547,45 @@ name: "CodeQL" t.deepEqual(...errorCodes(errors, [])); }); +test("validateWorkflow() with a different on setup", (t) => { + t.deepEqual( + ...errorCodes( + actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +on: "workflow_dispatch" +`) + ), + [] + ) + ); + + t.deepEqual( + ...errorCodes( + actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +on: [workflow_dispatch] +`) + ), + [] + ) + ); + + t.deepEqual( + ...errorCodes( + actionsutil.validateWorkflow( + yaml.safeLoad(` +name: "CodeQL" +on: + workflow_dispatch: {} +`) + ), + [] + ) + ); +}); + test("validateWorkflow() should not report an error if PRs are totally unconfigured", (t) => { t.deepEqual( ...errorCodes( diff --git a/src/actions-util.ts b/src/actions-util.ts index b7690e268..5a53a80ba 100644 --- a/src/actions-util.ts +++ b/src/actions-util.ts @@ -236,18 +236,10 @@ export function validateWorkflow(doc: Workflow): CodedError[] { let missing = MissingTriggers.None; if (doc.on === undefined) { - // codeql will scan the default branch + // this is not a valid config } else if (typeof doc.on === "string") { - switch (doc.on) { - case "push": - // valid configuration - break; - case "pull_request": - missing = MissingTriggers.Push; - break; - default: - missing = MissingTriggers.Push | MissingTriggers.PullRequest; - break; + if (doc.on === "pull_request") { + missing = MissingTriggers.Push; } } else if (Array.isArray(doc.on)) { const hasPush = doc.on.includes("push"); @@ -262,7 +254,7 @@ export function validateWorkflow(doc: Workflow): CodedError[] { "pull_request" ); - if (!hasPush) { + if (!hasPush && hasPullRequest) { missing = missing | MissingTriggers.Push; } if (hasPush && hasPullRequest) { @@ -279,8 +271,9 @@ export function validateWorkflow(doc: Workflow): CodedError[] { } } - // check the user is scanning PRs right now - // if not the warning does not apply + // if doc.on.pull_request is null that means 'all branches' + // if doc.on.pull_request is undefined that means 'off' + // we only want to check for mismatched branches if pull_request is on. if (doc.on.pull_request !== undefined) { const push = branchesToArray(doc.on.push?.branches);