From ad27ba4c6dc97d54ca054ccff3de3d2297c57c50 Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 30 Nov 2022 10:43:38 +0000 Subject: [PATCH 1/2] docs: go-version-file for other use cases --- README.md | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 8ef09d4..cf1b04f 100644 --- a/README.md +++ b/README.md @@ -125,11 +125,16 @@ steps: cache-dependency-path: subdir/go.sum - run: go run hello.go ``` -## Getting go version from the go.mod file - -The `go-version-file` input accepts a path to a `go.mod` file or a `go.work` file that contains the version of Go to be used by a project. As the `go.mod` file contains only major and minor (e.g. 1.18) tags, the action will search for the latest available patch version sequentially in the runner's directory with the cached tools, in the [version-manifest.json](https://github.com/actions/go-versions/blob/main/versions-manifest.json) file or at the go servers. +## Getting go version from a file If both the `go-version` and the `go-version-file` inputs are provided then the `go-version` input is used. + +If the file contains only major and minor (e.g. 1.18) tags, the action will search for the latest available patch version sequentially in the runner's directory with the cached tools, in the [version-manifest.json](https://github.com/actions/go-versions/blob/main/versions-manifest.json) file or at the go servers. + +### If the go.mod file + +The `go-version-file` input accepts a path to a `go.mod` file or a `go.work` file that contains the version of Go to be used by a project. As the `go.mod` file contains only major and minor (e.g. 1.18) tags, the action will follow the above-mentioned approach. + > The action will search for the `go.mod` file relative to the repository root ```yaml @@ -141,6 +146,21 @@ steps: - run: go version ``` +### If a different file + +The `go-version-file` input accepts a path to a file file that contains the version of Go to be used by a project. It supports either major and minor (e.g 1.18) or major, minor and patch (e.g 1.18.7) tags + +> The action will search for the `.go-version` file relative to the repository root + +```yaml +steps: +- uses: actions/checkout@v3 +- uses: actions/setup-go@v3 + with: + go-version-file: 'path/to/.go-version' +- run: go version +``` + ## Matrix testing ```yaml From ef084a2719de0778a2a45cc8a7ce5c26cdb448c9 Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 30 Nov 2022 11:09:17 +0000 Subject: [PATCH 2/2] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cf1b04f..5a2a174 100644 --- a/README.md +++ b/README.md @@ -148,7 +148,7 @@ steps: ### If a different file -The `go-version-file` input accepts a path to a file file that contains the version of Go to be used by a project. It supports either major and minor (e.g 1.18) or major, minor and patch (e.g 1.18.7) tags +The `go-version-file` input accepts a path to a file that contains the version of Go to be used by a project. It supports either major and minor (e.g 1.18) or major, minor and patch (e.g 1.18.7) tags. If the file contains only major and minor (e.g. 1.18) tags, the action will follow the above-mentioned approach. > The action will search for the `.go-version` file relative to the repository root