-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
script/setup: use git clone instead of go get -d #5009
Conversation
Hmmm... odd; is state not cleaned up between runs?
|
@thaJeztah the |
ah, hm... will have to look a bit more in depth then how to best fix. |
567dfa1
to
b680121
Compare
`go get -d` uses go modules by default in Go 1.16 and up, which results in modules being fetched for the "latest" module version, after which we tried to "git checkout" to `<VERSION>`. For runc, this means that (possibly incorrectly), `go get` will download runc `v0.1.1` (most recent non-"pre-release", which caused failures (e.g the old `Sirupsen/logrus` being downloaded). In addition, some of the dependencies we're installing use vendoring, and thus would not require the modules to be downloaded (and vendored files will be ignored when using `go get` with modules). This patch switches several uses `go get -d` to use a regular git clone, after which the desired version is checked out, and the binaries are built. Signed-off-by: Sebastiaan van Stijn <github@gone.nl> Signed-off-by: Phil Estes <estesp@amazon.com>
b680121
to
1645738
Compare
Build succeeded.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
relates to #5005
go get -d
uses go modules by default in Go 1.16 and up, which resultsin modules being fetched for the "latest" module version, after which we
tried to "git checkout" to
<VERSION>
.For runc, this means that (possibly incorrectly),
go get
will downloadrunc
v0.1.1
(most recent non-"pre-release", which caused failures (e.gthe old
Sirupsen/logrus
being downloaded).In addition, some of the dependencies we're installing use vendoring, and
thus would not require the modules to be downloaded (and vendored files
will be ignored when using
go get
with modules).This patch switches several uses
go get -d
to use a regulargit clone, after which the desired version is checked out,
and the binaries are built.