-
Notifications
You must be signed in to change notification settings - Fork 66
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ci: add security scan with trivy (#985)
Security scan with trivy will be run on push to main and dev, pull request, and weekly. trivy will skip scanning vendor subdirectory because the agent is not using code from that directory.
- Loading branch information
Showing
14 changed files
with
73 additions
and
91 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
name: Security scan | ||
on: | ||
push: | ||
branches: | ||
- main | ||
- dev | ||
pull_request: | ||
schedule: | ||
- cron: '0 0 * * 0' # Every Sunday at 12:00 AM | ||
|
||
jobs: | ||
trivy-scan: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout newrelic-php-agent code | ||
uses: actions/checkout@v4 | ||
with: | ||
path: php-agent | ||
- name: Run Trivy in table mode | ||
# Table output is only useful when running on a pull request or push. | ||
if: contains(fromJSON('["push", "pull_request"]'), github.event_name) | ||
uses: aquasecurity/[email protected] | ||
with: | ||
scan-type: fs | ||
scan-ref: ./php-agent | ||
trivy-config: ./php-agent/trivy.yaml | ||
trivyignores: ./php-agent/.trivyignore | ||
format: table | ||
exit-code: 1 | ||
|
||
- name: Run Trivy in report mode | ||
# Only generate sarif when running nightly on the dev branch. | ||
if: ${{ github.event_name == 'schedule' }} | ||
uses: aquasecurity/[email protected] | ||
with: | ||
scan-type: fs | ||
scan-ref: ./php-agent | ||
trivy-config: ./php-agent/trivy.yaml | ||
trivyignores: ./php-agent/.trivyignore | ||
format: sarif | ||
output: trivy-results.sarif | ||
|
||
- name: Upload Trivy scan results to GitHub Security tab | ||
# Only upload sarif when running nightly on the dev branch. | ||
if: ${{ github.event_name == 'schedule' }} | ||
uses: github/codeql-action/upload-sarif@v3 | ||
with: | ||
sarif_file: trivy-results.sarif |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
# Ignore missing HEALTHCHECK in Dockerfile - devenv service from files/Dockerfile doesn't need it: | ||
AVD-DS-0026 |
This file contains 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
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
db: | ||
repository: | ||
- mirror.gcr.io/aquasec/trivy-db:2 | ||
|
||
scan: | ||
scanners: | ||
- vuln | ||
- misconfig | ||
skip-dirs: vendor | ||
|
||
severities: | ||
- CRITICAL | ||
- HIGH | ||
- MEDIUM | ||
- LOW | ||
|
||
vulnerability: | ||
ignore-unfixed: true |