-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
eksctl: simplify binary build #207468
eksctl: simplify binary build #207468
Conversation
If this should fix compatibility with Go 1.24 we should wait for merging Then rebase this and see if it still works. If it won't work we can still use |
In any case, if generated files are in git it makes no sense to regenerate them, unless they would be intentionally generated differently. |
Actually, this PR simplifies and speeds up the build for Go 1.23 as well. |
a83b440
to
2285d2a
Compare
🤖 An automated task has requested bottles to be published to this PR. |
HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingHOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>
)? If this is a new formula, does it passbrew audit --new <formula>
?This PR resolves building eksctl with Go 1.24, see #201070:
Explanation
Short
The problem lies in generating test mocks using
mockery
. However, these mocks are already checked out in the repo, and we don't need them for theeksctl
binary. We can just callmake binary
that will produce our binary.Error Details
Running locally with Go 1.24 gives us an error when executing
mockery
:Long
make build
calls thegenerate-always
andbinary
targets.make generate-always
generates documentation, test doubles, fakes, interfaces, mocks, etc. All of this is already checked out into the repo and is usually generated during development.generate-always
for code generation uses thecounterfeiter
,ifacemaker
, andmockery
tools which are defined by this formula.go-bindata
is not used and was removed by eksctl-io/eksctl#4370.make binary
is our target that builds the binary. Since generated files are already in the repo, we don't need to re-generate them again.