ci: add trivy filesystem scanning workflow #571
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ℹ️ : NO GH ISSUE
This commit provides a basic GHA to enable Trivy FS scanning on the notebooks-v1 and notebooks-v2 branches. In order to support
workflow_dispatch
andcron
triggers - this GHA needs to live on the default branch (main
). But while the workflow lives on themain
branch - it will only scannotebooks-v1
and/ornotebooks-v2
branches depending on how its invoked.It scans from the root of repo and reports on
CRITICAL
orHIGH
vulnerabilities that have fixes available. It will also scan for secrets and identify misconfiguration. It will always exit with status code 0 and upload its results to the GitHub Security tab. Custom ruleId metadata is injected into the report to help differentiate whether reported findings originated innotebooks-v1
ornotebooks-v2
.ruleId
also ensures flagged a false positive innotebooks-v1
will not auto-apply tonotebooks-v2
branch if similar vulnerabilities exist.The workflow is configured to fire every Sunday at 6:00 AM UTC and also supports manually invoking it. I personally did not see any reason to run this on pull_requests and/or pushes to
notebooks-v1
ornotebooks-v2
branches as vulnerabilities could be disclosed / fixes made available at any time. Therefore, having it set on a weekly schedule as well as supported ad-hoc runs seems a reasonable way to manage.