Skip to content
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 LUCI openbsd-riscv64 builder #64176

Open
mengzhuo opened this issue Nov 15, 2023 · 9 comments
Open

x/build: add LUCI openbsd-riscv64 builder #64176

mengzhuo opened this issue Nov 15, 2023 · 9 comments
Assignees
Labels
Builders x/build issues (builders, bots, dashboards) NeedsFix The path to resolution is known, but the work has not been done. new-builder
Milestone

Comments

@mengzhuo
Copy link
Contributor

Following the instructions at Dashboard builders:

hostname openbsd-riscv64-mengzhuo

CSR is openbsd-riscv64-mengzhuo.csr.txt
since Github doesn't seem to allow attaching with the name openbsd-riscv64-mengzhuo.csr origin issue asked for.

Builder info(uname -a):
OpenBSD mars-1.lan 7.4 GENERIC.MP#427 riscv64

cc @4a6f656c

@mengzhuo mengzhuo added Builders x/build issues (builders, bots, dashboards) new-builder labels Nov 15, 2023
@gopherbot gopherbot added this to the Unreleased milestone Nov 15, 2023
@mknyszek mknyszek added the NeedsFix The path to resolution is known, but the work has not been done. label Nov 20, 2023
@mknyszek mknyszek assigned mknyszek and unassigned mknyszek Nov 20, 2023
@dmitshur dmitshur assigned dmitshur and unassigned mknyszek Nov 28, 2023
@gopherbot
Copy link

Change https://go.dev/cl/545536 mentions this issue: main.star: add netbsd-arm, netbsd-arm64, openbsd-riscv64 builders

gopherbot pushed a commit to golang/build that referenced this issue Nov 28, 2023
For golang/go#63698.
For golang/go#63614.
For golang/go#64176.

Change-Id: I2a203cd2a1e2e80ee44cfd5ce11c1ce5bbd60002
Reviewed-on: https://go-review.googlesource.com/c/build/+/545536
Reviewed-by: Heschi Kreinick <heschi@google.com>
TryBot-Bypass: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
@dmitshur
Copy link
Contributor

dmitshur commented Nov 30, 2023

Here's the resulting certificate: openbsd-riscv64-mengzhuo-1701367184.cert.txt.

The builder definitions have been added in CL 545536 so your bot should be able to connect once you follow the rest of the steps on your end.

We have some more work to do to make the dependencies built for the openbsd/riscv64 port and available in CIPD, which will be needed for the builds to complete successfully. We'll update this issue once that's done.

Edit: Note that because the openbsd/riscv64 port is a new port in the process of being added (#55999), rather than a port that exists in a released version of Go, we have to do additional work to be able to build its dependencies, so it will take longer.

@mengzhuo
Copy link
Contributor Author

Updates: openbsd-riscv64-mengzhuo is up and running.
https://chromium-swarm.appspot.com/bot?id=openbsd-riscv64-mengzhuo&s=true

@dmitshur
Copy link
Contributor

dmitshur commented Dec 19, 2023

Thanks. From the 5 builds it started during the time it ran, it's possible to see it connected and identified its cipd_platform dimension correctly as openbsd-riscv64, and as my comment above suggested, its CIPD dependencies are not yet in place. So resolving that is the next step here.

@mengzhuo
Copy link
Contributor Author

@dmitshur OpenBSD has completed port, but LUCI builder failed to start, do I need to update something?

19057 2024-01-25 09:26:17.097 E: Request to https://chromiumswarm.appspot.com/swarming/api/v1/bot/handshake failed with
HTTP status code 403: 
403 Client Error: Forbidden for url: https://chromium-swarm.appspot.com/swarming/api/v1/bot/handshake

@dmitshur
Copy link
Contributor

I'm not sure why you'd be getting that error now and not before. But last time the builder connected, the error we needed to resolve was:

E: internal failure: Could not resolve version infra/tools/cipd/openbsd-riscv64:git_revision:ec494f363fdfd8cdd5926baad4508d562b7353d4: no such package: infra/tools/cipd/openbsd-riscv64

(Also see the last 2 paragraphs of #64176 (comment).)

The next step for that is to get the CIPD dependencies built for GOOS=openbsd GOARCH=riscv64. Right now the LUCI infrastructure is building those dependencies using Go 1.21, which doesn't support openbsd/riscv64 and so it can't work. We either need to wait for it to start using Go 1.23 where that port is added, or create a way for it to use a development version of Go 1.23 sooner, or find some other way without those dependencies being available in CIPD.

@4a6f656c
Copy link
Contributor

@mengzhuo @dmitshur What is the exact plan here? Is there a reason why we're bringing a new builder online, rather than continuing to use the openbsd-riscv64 builder that I already run?

@4a6f656c
Copy link
Contributor

I'm not sure why you'd be getting that error now and not before. But last time the builder connected, the error we needed to resolve was:

E: internal failure: Could not resolve version infra/tools/cipd/openbsd-riscv64:git_revision:ec494f363fdfd8cdd5926baad4508d562b7353d4: no such package: infra/tools/cipd/openbsd-riscv64

(Also see the last 2 paragraphs of #64176 (comment).)

The next step for that is to get the CIPD dependencies built for GOOS=openbsd GOARCH=riscv64. Right now the LUCI infrastructure is building those dependencies using Go 1.21, which doesn't support openbsd/riscv64 and so it can't work. We either need to wait for it to start using Go 1.23 where that port is added, or create a way for it to use a development version of Go 1.23 sooner, or find some other way without those dependencies being available in CIPD.

Unless I'm missing something, this seems like a pretty big hurdle for bringing builders/trybots online for new ports... how does one bring a builder up in order to have it running before merging a port?

@mengzhuo
Copy link
Contributor Author

@mengzhuo @dmitshur What is the exact plan here? Is there a reason why we're bringing a new builder online, rather than continuing to use the openbsd-riscv64 builder that I already run?

These is an issue (#63471) that requires all builders that should migrate from "go farm" to "LUCI". (https://go.dev/wiki/DashboardBuilders#luci-builders)

I can drop/transfer keys of openbsd-riscv64 LUCI builders if you want maintain it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Builders x/build issues (builders, bots, dashboards) NeedsFix The path to resolution is known, but the work has not been done. new-builder
Projects
Status: Planned
Development

No branches or pull requests

5 participants