Comments (7)
This is becoming a very annoying issue to have to work around. setup-go is constantly behind versions by quite a bit. When the Go team releases a new Go version that has fixes for various CVE's, it's critical to be able to pull that version and be able to release new versions/run new builds based off that new version.
The past 8 versions or so, I've been constantly behind, expecting to be able to run another build, and have it pull in an older version (sometimes more than one patch version behind!).
setup-go
should really not require manual adjustments to get new versions. Maybe it's worth not reinventing the wheel, and utilizing something like https://github.com/travis-ci/gimme?
from setup-go.
Alternatively to get the latest:
steps:
- id: vars
run: |
echo ::set-output name=go_version::$(curl -s https://raw.githubusercontent.com/actions/go-versions/main/versions-manifest.json | grep -oE '"version": "[0-9]{1}.[0-9]{1,}(.[0-9]{1,})?"' | head -1 | cut -d':' -f2 | sed 's/ //g; s/"//g')
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ steps.vars.outputs.go_version }}
from setup-go.
Maybe support version: latest
?
from setup-go.
FYI I use a Docker image in .github/
which I update automatically with dependabot.
-
id: vars
run: |
echo ::set-output name=go_version::$(grep '^FROM go' .github/go/Dockerfile | cut -d ' ' -f 2 | cut -d ':' -f 2)
echo "Using Go version ${{ steps.vars.outputs.go_version }}"
-
name: Setup go
uses: actions/setup-go@v2
with:
go-version: ${{ steps.vars.outputs.go_version }}
from setup-go.
Maybe it's worth not reinventing the wheel, and utilizing something like https://github.com/travis-ci/gimme?
I can say that https://github.com/travis-ci/gimme isn't exactly well-maintained, but was designed such that it (ideally) doesn't have to be. 😅
(I helped create it initially, although I'm not involved much anymore.)
from setup-go.
Looking at go-versions
, seems it's manually updated via an action. Why not have have it update automatically (and only when needed)? Could it run once a day (or sooner)? go-versions
doesn't have issues enabled, so can't ask there...
from setup-go.
Hi, @alessio!
Thanks for your request!
We will consider whether to add check latest version functionality.
I close this issue because it's a duplicate of 73#
Feel free to contact us and/or reopen this issue if you have any questions
from setup-go.
Related Issues (20)
- Allow for collapsing log output HOT 2
- go 1.22.0-rc.1 is not found HOT 2
- setup-go does not work on macos-14 (M1) HOT 6
- How to run tests with latest golang version HOT 10
- More specific handling/detection of Go toolchain versions HOT 3
- Inaccurate description of version in go.mod HOT 2
- Please upgrade `go-actions` to 1.21.8 / 1.22.1 HOT 3
- Signing key has expired HOT 2
- Node16 deprecated HOT 1
- Support custom distribution location override HOT 1
- Can't cache dependencies from a composite action HOT 9
- Intermittent failures downloading go HOT 4
- I HOT 3
- I HOT 1
- Failure of "Validate 'setup-go'" on macos-latest HOT 3
- Annotation matcher can not match column ranges HOT 4
- Dependencies file is not found. Supported file pattern: go.sum HOT 9
- [Bug] CGO_ENABLED on macos amd64 is not correct HOT 8
- Caching should use go.mod, not go.sum HOT 3
- Why can't I re-use cache created by actions/setup-go for actions/cache? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from setup-go.