-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Add Go modules support #4241
Add Go modules support #4241
Conversation
Not needed when using Go modules.
Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA. It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
Hi @myhro. Thanks for your PR. I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Can one of the admins verify this patch? |
"Somewhat" (2,178 files, +323 −929,569 lines) |
I signed it |
/assign @tstromberg |
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: myhro If they are not already assigned, you can assign the PR to them by writing The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
@minikube-bot OK to test |
This change looks beautiful. Once the integration tests are run, I'll merge it. |
Thank you for the review. Jenkins build is broken, I'll investigate how to fix it. |
@myhro - We do something funny and build the kvm2 driver binary from inside a Docker image running an older release of Debian for libvirt compatibility. Let me or @sharifelgamal know if you need any help in getting with getting this sorted out. |
@tstromberg The Debugging the last failure, I noticed that it was trying to build the
Now I see that it still failed on Jenkins, so I'll keep digging. |
@tstromberg Sorry, I only saw that after sending the last comment:
Did the Jenkins builder run out of disk space? P.s.: I can join Slack if you prefer to avoid the comment ping-pong. |
I found https://stackoverflow.com/questions/47457012/how-to-increase-the-space-data-space-total-used-by-docker-that-value-is-less - which mentioned running "docker system prune". Going to do so on our Jenkins master, which apparently has hundreds of old images around:
|
@minikube-bot OK to test |
It looks like perhaps a merge is in order, since jibber jabber is a recent addition? Jenkins got farther this time: passing the hyperkit build, but failing kvm2:
|
Here's the PR that added jibber jabber 7 days ago: #4199 |
Thanks for fixing the disk space issue. The I'm seeing two possible solutions for this problem:
Which one you prefer? Edit: actually we need Go |
go v1.12 is a requirement, as per https://github.com/kubernetes/minikube/blob/master/docs/contributors/build_guide.md I did notice that the Jenkins master was stuck on go v1.12rc1, so I've upgraded the master to v1.12.5. I'm having similar issues building locally, and I believe the difference between our environments is that Jenkins and myself are building from ~/go/src, which disables go modules by default. I believe that this PR will need to do is set |
.travis.yml
Outdated
@@ -3,8 +3,9 @@ os: linux | |||
sudo: required | |||
|
|||
go: | |||
- 1.x | |||
go_import_path: k8s.io/minikube | |||
- 1.12.x |
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.
If possible, leave this at 1.x so that we will continue to auto-update when v1.13 comes along.
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.
Done.
Thank you for taking this beast of a PR on, by the way. I just learned today that a tool we would like to use for localization (golang.org/x/text/cmd/gotext) is incompatible with vendor directories, so this PR is perfectly timed. You are a hero =) |
@minikube-bot OK to test |
Thank you for clarifying the version and upgrading the server. I agree that it makes way more sense to use
I didn't knew that there were projects incompatible with vendor directories. Thanks for the tip. I'm glad that we are taking care of that detail. :-) I'm a bit confused, as there are no timestamps in the Jenkins logs, but looks like the build worked and the integration tests are running now. |
Looks like the build works great with the most recent changes. I'll wait for the rest of the integration tests to pass, and then merge it in. Thank you again! |
Huzzah! 🎉 Thank you! |
That's great. Thank you very much for your support, Thomas. It would be way harder without it. Hope we can work together again on other features/PRs. :-) |
Moving away from Go dep to Go modules allowed the build infrastructure to be cleaned up a bit. The related docs were also updated.
The whole diff is somewhat long after the
vendor/
directory removal, so I guess reviewing it per commit can make the process a bit easier.This closes #4234.