commit | b625fbe08f3bccbe446d94fbf87fcc875a4f50ee | [log] [tgz] |
---|---|---|
author | Zvonimir Pavlinovic <zpavlinovic@google.com> | Fri Sep 27 20:08:20 2024 +0000 |
committer | Zvonimir Pavlinovic <zpavlinovic@google.com> | Tue Oct 01 14:47:37 2024 +0000 |
tree | 2351e16224da669ce9050945f9f5152ea8ff6126 | |
parent | dd0578b371c987f96d1185abb54344b44352bd58 [diff] |
action.yml: make sure the latest Go version is default Due to some confusion on the contract of one of the dependencies, govulncheck-action would not by default try to download the newest go version when one was present. This would sometimes even break the action run due to a seemingly another issue with the dependency. This change should fix both issues. Fixes golang/go#69597 Change-Id: I51a21aad2daafc3984866051f91cf9339bb540e2 Reviewed-on: https://go-review.googlesource.com/c/govulncheck-action/+/616435 Reviewed-by: Maceo Thompson <maceothompson@google.com> TryBot-Bypass: Zvonimir Pavlinovic <zpavlinovic@google.com> Reviewed-by: Zvonimir Pavlinovic <zpavlinovic@google.com>
This repository holds the GitHub Action for govulncheck.
Govulncheck provides a low-noise, reliable way for Go users to learn about known vulnerabilities that may affect their dependencies. See details on Go's support for vulnerability management.
The govulncheck GitHub Action is currently experimental and is under active development.
To use the govulncheck GitHub Action add the following step to your workflow:
- id: govulncheck uses: golang/govulncheck-action@v1
By default the govulncheck Github Action will run with the latest version of Go and analyze all packages in the provided Go module. Assuming you have the latest Go version installed locally, this is equivalent to running the following on your command line:
$ govulncheck ./...
To specify a specific Go version, directory in which to run govulncheck, or package pattern, use the following syntax:
- id: govulncheck uses: golang/govulncheck-action@v1 with: go-version-input: <your-Go-version> go-package: <your-package-pattern>
For example, the code snippet below can be used to run govulncheck against a repository on every push:
on: [push] jobs: govulncheck_job: runs-on: ubuntu-latest name: Run govulncheck steps: - id: govulncheck uses: golang/govulncheck-action@v1 with: go-version-input: 1.20.6 go-package: ./...
govulncheck Github Action accepts several other optional inputs:
work-dir: directory in which to run govulncheck, default '.' repo-checkout: checkout the repository, default true check-latest: check for the latest Go version, default false go-version-file: go.mod or go.work file specifying Go version, default '' output-format: the format of govulncheck output ('text', 'json', or 'sarif'), default 'text' output-file: the file to which the output is redirected, default '' (no redirection)
The precedence for inputs go-version-input
, go-version-file
, and check-latest
specifying Go version is inherited from actions/setup-go.
The govulncheck-action follows the exit codes of govulncheck command. Specifying the output format ‘json’ or ‘sarif’ will return success even if there are some vulnerabilities detected. See here for more information.
When a vulnerability is found with ‘text’ output format, an error will be displayed for that GitHub job with information about the vulnerability and how to fix it. For example:
Our canonical Git repository is located at https://go.googlesource.com/govulncheck-action. There is a mirror of the repository at https://github.com/golang/govulncheck-action. See https://go.dev/doc/contribute.html for details on how to contribute.
The main issue tracker for the time repository is located at
If you want to report a bug or have a feature suggestion, please file an issue at https://github.com/golang/go/issues, prefixed with govulncheck-action:
in the title.
Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.