-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
x/build: add Fedora builder #26796
Comments
For the record it would also helped with catching earlier https://go-review.googlesource.com/c/go/+/86541 for #23373 |
Well, adding a Fedora container is trivial & easy for us. But the downside is we'd be using the Linux kernel of https://cloud.google.com/container-optimized-os/ . That's a pretty recent kernel always, but might be configured differently than Fedora. We could add a full Fedora VM image (as we do for a dozen other non-Linux operating systems/versions), but it's more work. (We need to prepare a script which when run on Linux produces a bootable GCE VM image. See the Plan 9 and BSDs in https://github.com/golang/build/tree/master/env) |
Sorry for longer reply time. I think that both could be beneficial. For containers I think that fedora:rawhide and fedora:latest should be used to test both against the unstable rawhide and latest stable release. Rawhide more like non-blocking smoke test(it could be broken/stale from time to time). After taking quick peak at the GCE and the scripts. It doesn't support the regular AWS or openstack image formats, right?(Fedora Cloud images are produced for those.) Is there some summary of what needs GCE and Go CI to run(it would be much easier than revers engineering the scripts)? |
@bradfitz ping |
Those would probably work fine with the appropriate yaml cloud init metadata. An overview of the build system is at https://github.com/golang/build/#go-build-tools but the gist is that a VM gets created and it needs to come up & then download the cmd/buildlet binary and run it. (The buildlet binary should not be baked into the VM image) Generally we use either the x/build/cmd/buildlet/stage0 binary or just some shell script to do that downloading of the cmd/buildlet binary at start-up. I think shell would work fine here, which would fit into the cloud-init yaml metadata. For instance, NetBSD (to pick an image somewhat arbitrarily) does this:
If you can point us at Fedora cloud images that do the cloud-init stuff & the cloud-init yaml to do the above, that's probably all we need. |
@bradfitz thanks. Fedora cloud images can be got from |
Change https://golang.org/cl/175999 mentions this issue: |
Not using a Fedora kernel yet, but better than nothing. Updates golang/go#26796 Change-Id: I228442bf6606696407a8d3fbd098df59df7353e1 Reviewed-on: https://go-review.googlesource.com/c/build/+/175999 Reviewed-by: Ian Lance Taylor <[email protected]>
We have a Debian-sid builder. Also add Fedora?
Would've helped with https://go-review.googlesource.com/c/go/+/127895 (for #26369)
The text was updated successfully, but these errors were encountered: