FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Allow workflow to be passed via an environment variable for default setup by henrymercer · Pull Request #1619 · github/codeql-action · GitHub

Allow workflow to be passed via an environment variable for default setup - #1619

Merged
henrymercer merged 2 commits into
mainfrom
henrymercer/default-setup-workflow
Apr 13, 2023
Merged

henrymercer merged 2 commits into
mainfrom
henrymercer/default-setup-workflow

Conversation

henrymercer commented Mar 28, 2023
edited
Loading

Copy link
Copy Markdown
Contributor

The default setup workflow is not checked into the repository, but the Action relies on the workflow file to make features like reporting failed runs work. We'd like to move to a more robust method of making features like reporting failed runs work, but this is hard to do without making a breaking change to the workflow file, and we aren't currently in a good position to do that.

Therefore as a medium term solution, default setup will pass its workflow file to the Action via the CODE_SCANNING_WORKFLOW_FILE environment variable.

GitHub staff: see an example run and the resulting status page.

Merge / deployment checklist

  • Confirm this change is backwards compatible with existing workflows.
  • Confirm the readme has been updated if necessary.
  • Confirm the changelog has been updated if necessary.

Comment thread src/workflow.ts Outdated
henrymercer force-pushed the henrymercer/default-setup-workflow branch from 6bd6528 to eaf7e8c Compare April 11, 2023 17:25
Comment thread src/workflow.ts Outdated
henrymercer force-pushed the henrymercer/default-setup-workflow branch from eaf7e8c to 41b19a1 Compare April 12, 2023 12:51
henrymercer force-pushed the henrymercer/default-setup-workflow branch from 41b19a1 to 599f492 Compare April 12, 2023 13:14
henrymercer marked this pull request as ready for review April 12, 2023 13:21
henrymercer requested a review from a team as a code owner April 12, 2023 13:21
henrymercer requested a review from Daverlo April 12, 2023 13:21
henrymercer changed the title Update workflow path for default setup Allow workflow to be passed via an environment variable for default setup Apr 12, 2023
angelapwen previously approved these changes Apr 12, 2023

angelapwen left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Looks good and found the appropriate debug log in the internal run (2nd attempt) linked, but assume you want @Daverlo's 👀 too!

A couple of questions:

  • will we add integration tests for default setup at a later point?
  • do we want to add a changenote since this is user facing?

Copy link
Copy Markdown
Contributor Author
  • will we add integration tests for default setup at a later point?

Yes! Tracking this internally.

  • do we want to add a changenote since this is user facing?

Good point, let's add a changenote for this.

angelapwen left a comment
edited
Loading

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Not sure why the PR check is failing though. Re-ran with debug mode.

Edit: looks like we might have a test flake, but because the re-run succeeded I'm not sure what it was!

Daverlo left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

LGTM!

Comment thread src/workflow.ts
* Get the path of the currently executing workflow.
* Get the path of the currently executing workflow relative to the repository root.
*/
export async function getWorkflowPath(): Promise<string> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

What is this this returning when using default setup?

I don't think it really matters as I only see it being used for getting the analysis key, and for default setup we are always passing a category, so this value should be overwritten.

But I'm wondering if this should highlight that there is no workflow file somehow?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

For default setup, this will return dynamic/github-code-scanning/codeql, but as you say we get the analysis key directly from CODEQL_ACTION_ANALYSIS_KEY. I think this is a good thing to highlight though, as this is part of some work I'd like us to do around nailing down in the code what context the CodeQL Action expects from default setup, in terms of the github job context, environment variables, etc.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

At the moment, I don't think we want to fail if the workflow file isn't found — we want to preserve the way we've been generating the analysis key to avoid breaking advanced setups where the workflow file doesn't exist, e.g. reusable workflows or workflows executing in other repositories.

henrymercer merged commit d944b34 into main Apr 13, 2023
henrymercer deleted the henrymercer/default-setup-workflow branch April 13, 2023 09:17
github-actions Bot mentioned this pull request Apr 13, 2023
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants


Back | FazBrowse Home | New Git URL