-
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 a Windows ARM64 builder #42604
Comments
Change https://golang.org/cl/272106 mentions this issue: |
This partially reverts CL 229559, while adjusting it to use a new builder. The builder will be used now for windows/arm and later for windows/arm64. Updates golang/go#42604. Updates golang/go#38607. Updates golang/go#36439. Change-Id: I1ab661a6585e64de8196955c077715b32dc732b8 Reviewed-on: https://go-review.googlesource.com/c/build/+/272106 Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Trust: Alex Brainman <alex.brainman@gmail.com> Trust: Jason A. Donenfeld <Jason@zx2c4.com>
Change https://golang.org/cl/314430 mentions this issue: |
The windows/arm64 port has been completed in golang.org/issue/36439 recently. Add pre-submit compile-only coverage via a misc-compile TryBot for the new port. It can be upgraded to a normal TryBot that also executes tests after a windows/arm64 builder becomes available. Tested locally by running 'buildall.bash windows-arm64' on a recent Go tip commit (CL 313849), which passed. For golang/go#36439. Updates golang/go#42604. Change-Id: Ie4988a876aa18392a583eb407c6c3621eb30a4f8 Reviewed-on: https://go-review.googlesource.com/c/build/+/314430 Trust: Dmitri Shuralyov <dmitshur@golang.org> Trust: Alexander Rakoczy <alex@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com> Reviewed-by: Alexander Rakoczy <alex@golang.org>
Change https://golang.org/cl/321309 mentions this issue: |
Updates #44513, #42604. Change-Id: I8200e8087c219a0042ab2a6770a7275c3b17942a Reviewed-on: https://go-review.googlesource.com/c/go/+/321309 Trust: Cherry Mui <cherryyz@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Change https://golang.org/cl/321959 mentions this issue: |
This change introduces a Windows ARM64 builder image for Go, running on Ubuntu on an a1.metal instance on AWS. The AMI image successfully boots, and automatically starts a Windows ARM64 VM, exposing port 443. The buildlet still needs to be updated for the appropriate mingw path. Additionally, the qemu script does not yet automatically halt the instance on termination, which makes debugging easier. - Ubuntu was chosen over Debian, as the official Debian AMI would not boot on a1.metal instances. - a1.metal is the most affordable AWS instance to support KVM on ARM64. - A prepared qemu image exists in the Go AWS account, under s3://go-builder-data. - Only 4 processors are currently supported in order to avoid a CLOCK_WATCHDOG_TIMEOUT. We're working on investigating how to increase this. - The EC2 metadata service is proxied to the guest OS via qemu. For golang/go#42604 Change-Id: I2a505a8218c2a818f0e52d179c02e6d264d2e422 Reviewed-on: https://go-review.googlesource.com/c/build/+/321959 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
Change https://golang.org/cl/322654 mentions this issue: |
Change https://golang.org/cl/322655 mentions this issue: |
Change https://golang.org/cl/322653 mentions this issue: |
Change https://golang.org/cl/322656 mentions this issue: |
This change allows the ledger to track how many a1.metal instances have either been created or are in the process of being created. A hard limit of 1 has been set for a1.metal limits while testing is being performed. For golang/go#42604 Change-Id: I5bcb3a65407af07d225caf2884877ce040ee011b Reviewed-on: https://go-review.googlesource.com/c/build/+/322855 Trust: Carlos Amedee <carlos@golang.org> Run-TryBot: Carlos Amedee <carlos@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Alexander Rakoczy <alex@golang.org>
a1.metal instances have 32Gb of ram, and 16 cores. We should try to use as much as possible. We run into CLOCK_WATCHDOG_TIMEOUT when using more than 4 of the 16 cores. The VM can also fail to boot. We have a thread discussing how to resolve this. A new AMI will need to be created and configured after any changes to this script. For golang/go#42604 Change-Id: If49b89718fca6dc5cee30e609a8ded9f99bf1f05 Reviewed-on: https://go-review.googlesource.com/c/build/+/322655 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
Add the windows-arm64 builder to the dashboard and coordinator with a known issue until we can verify builds are succeeding regularly. Also, tweak the logic around validating ec2 configurations. The arm64 buildlet sets VMImage but not ContainerImage, unlike other ec2 buildlets. This should work for both. For golang/go#42604 Change-Id: I7176b8f6bba837830a0565e7713c9e9a0eb76e90 Reviewed-on: https://go-review.googlesource.com/c/build/+/322656 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
@zx2c4 Sounds good. Thanks so much for your assistance! Your help was very useful in getting this set up, and thanks for providing builders in the interim. |
Change https://golang.org/cl/328311 mentions this issue: |
This adds a reverse buildlet for Windows ARM64 running under qemu on M1 Mac Minis. The VM currently boots, but more changes are needed to stage0 and buildlet in order for the builder to run. For golang/go#42604. Change-Id: Ie86e596c0f166d2ca8c075c0c971fcd1e34e940f Reviewed-on: https://go-review.googlesource.com/c/build/+/328311 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com> Reviewed-by: Carlos Amedee <carlos@golang.org>
Change https://golang.org/cl/331669 mentions this issue: |
Change https://golang.org/cl/331670 mentions this issue: |
The Windows ARM64 VM should exit upon build completion. Afterwards, we should try to terminate our instance. The coordinator will clean it up soon anyway. For golang/go#42604 Change-Id: Ib7b6adbe293d8ea9e54c8288de9f10c6a45ebeb3 Reviewed-on: https://go-review.googlesource.com/c/build/+/322657 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
This change makes room for a race between the main function exiting, and the delay built into our halting process when shutting down a reverse dialer. Ideally, there would be no race, but plumbing the shutdown signal through is a separate significant effort. For golang/go#42604 Change-Id: I0762cb71eac50bcda7f0cd571e04396e98bff699 Reviewed-on: https://go-review.googlesource.com/c/build/+/331669 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
This change removes the windows-arm64-aws buildlet and replaces all usages with the windows-arm64-10 buildlet. - Remove the known issue from the windows-arm64-10 buildlet, which has been passing reliably. - Enable tests during releases, and add a slowbot alias, as it's a much faster buildlet. Updates golang/go#46502 For golang/go#42604 Change-Id: Ib9f7c3d5391b01e303b43bbdad030b3f94147c5d Reviewed-on: https://go-review.googlesource.com/c/build/+/331670 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
Change https://golang.org/cl/332492 mentions this issue: |
Change https://golang.org/cl/333076 mentions this issue: |
This will make the dashboard view more consistent. For golang/go#42604 Change-Id: I90991c9e6c7ba5fc781c6ea1259593048156ca79 Reviewed-on: https://go-review.googlesource.com/c/build/+/333076 Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Alexander Rakoczy <alex@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
Change https://go.dev/cl/462655 mentions this issue: |
The Windows ARM64 builders on Azure have replaced the Windows ARM64 builders on AWS by now. Remove unused environment configuration; we can bring it back or look it up in history if needed. Updates golang/go#53541. Updates golang/go#42604. Updates golang/go#57408. Change-Id: I080e4f5c53712c0470332a7d26d00c939136e57c Reviewed-on: https://go-review.googlesource.com/c/build/+/462655 Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com> Reviewed-by: Carlos Amedee <carlos@golang.org> Reviewed-by: Than McIntosh <thanm@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
A builder should be added in support of the Windows/arm64 port #36439
Note: this is independent of #38607 which adds a Windows arm builder.
@golang/release
The text was updated successfully, but these errors were encountered: