go icon indicating copy to clipboard operation
go copied to clipboard

x/build: add LUCI freebsd-riscv64 builder

Open mengzhuo opened this issue 1 year ago • 16 comments

Following the instructions at Dashboard builders:

hostname freebsd-riscv64-mengzhuo

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

mengzhuo avatar Oct 10 '23 06:10 mengzhuo

Change https://go.dev/cl/534976 mentions this issue: main.star: add openbsd-ppc64, linux-riscv64, freebsd-riscv64 builders

gopherbot avatar Oct 12 '23 17:10 gopherbot

Thanks. Here's the resulting certificate: freebsd-riscv64-mengzhuo-1697128441.cert.txt.

I've mailed CLs to define your new builder in LUCI and will comment once that's done.

dmitshur avatar Oct 12 '23 17:10 dmitshur

Step 3 is complete (CL 534976 is submitted), so you should be able to proceed with the next steps. Please feel free to comment here if you see something unexpected, or run into a problem that the documentation doesn't cover. Thanks.

dmitshur avatar Oct 12 '23 21:10 dmitshur

cc @golang/release

cagedmantis avatar Oct 25 '23 15:10 cagedmantis

Just checking in here, how's it going with steps 4-6 for this builder @mengzhuo?

dmitshur avatar Dec 08 '23 00:12 dmitshur

@dmitshur Bad new is FreeBSD riscv port for unmatched seems broken, I can't install any pkgs from pkg.freebsd.org (Mostly for python 3). I've contacted @paulzhol he suggested using poudriere and I need some time to learn and build it.

mengzhuo avatar Dec 10 '23 06:12 mengzhuo

@dmitshur freebsd-riscv64-mengzhuo builder is up and running. https://chromium-swarm.appspot.com/bot?id=freebsd-riscv64-mengzhuo

mengzhuo avatar Jan 11 '24 09:01 mengzhuo

Thanks Meng.

I see on the builder page that its cipd_platform dimension value is freebsd-riscv, which isn't quite right. Given it's meant to be a builder for GOOS=freebsd GOARCH=riscv64, the cipd_platform dimension needs to be freebsd-riscv64. Its CPU dimension is "riscv | riscv-64", but it seems we'll need to adjust how the swarming bot computes the cipd_platform in this case.

Dimensions image

dmitshur avatar Jan 11 '24 15:01 dmitshur

The swarming bot computes the cipd_platform dimension here:

https://source.chromium.org/chromium/infra/infra/+/main:luci/appengine/swarming/swarming_bot/api/os_utilities.py;l=1002;drc=8d093fb4e0f58e69059df53345a93bd0018dcebf

get_cipd_os is returning the right value, "freebsd". get_cipd_architecture is returning "riscv", which is a good start, but is missing the "64" suffix. There's a TODO in it that needs to be resolved.

@mengzhuo If you are willing to navigate the LUCI contribution process and send a CL directly, that would be appreciated. (Also see #64660 for another example.) Otherwise we'll try to get to it. Thanks.

dmitshur avatar Jan 11 '24 16:01 dmitshur

@dmitshur Hi, I had upload a CL for luci-py here

mengzhuo avatar Jan 12 '24 08:01 mengzhuo

Thanks very much.

That CL was submitted and deployed, and the build made further progress thanks to the cipd_platform dimension being correctly identified as "freebsd-riscv64" now:

CIPD error: invalid_version_error with package infra/tools/luci/cas/freebsd-riscv64, version git_revision:fd5bcf5a16a5261c39af769a1dcf54f5e2797ea6 on path None

That CIPD package exists at newer versions, so this needs the pinned version to be updated. I'll update this when that's done.

dmitshur avatar Jan 25 '24 21:01 dmitshur

We should be updating the CIPD version soon. I will update this issue once that is done.

cagedmantis avatar Apr 10 '24 21:04 cagedmantis

@mengzhuo Can you try out the builder again?

cagedmantis avatar May 10 '24 15:05 cagedmantis

@cagedmantis Yes, but I'm still working on it, since bot died unexpected. https://chromium-swarm.appspot.com/task?id=697c07dce6f6a610

mengzhuo avatar May 13 '24 14:05 mengzhuo

Looking at https://chromium-swarm.appspot.com/bot?id=freebsd-riscv64-mengzhuo, the bot seems to be running well in many x/ repos. It passes all but 2 tests at tip (e.g., https://ci.chromium.org/b/8748032179177814097). The failing tests are TestLookupGmailNS and TestLookupGmailTXT in package net. Is there something you can do on your end related to the builder's network, or should the test be skipped on the builder if that's not viable?

dmitshur avatar May 14 '24 22:05 dmitshur

There's now a fully passing build at https://ci.chromium.org/b/8747907145247685825!

dmitshur avatar May 16 '24 00:05 dmitshur

From looking at https://ci.chromium.org/ui/p/golang/g/port-freebsd-riscv64/builders, the builder seems to be producing good testing signal. @mengzhuo Would you like to remove its known issue and consider this resolved, or is there more you'd like to do first?

dmitshur avatar May 17 '24 14:05 dmitshur

Change https://go.dev/cl/586036 mentions this issue: main.star: remove freebsd-riscv64 known issue

gopherbot avatar May 19 '24 10:05 gopherbot

Seems like the bot has disconnected on 2024-07-03. Other than that, is there any reason we should not close this issue?

cagedmantis avatar Jul 09 '24 23:07 cagedmantis

Change https://go.dev/cl/597435 mentions this issue: cmd/gopherbot: add "close luci-config issues" task

gopherbot avatar Jul 10 '24 04:07 gopherbot

Filed #68402 to track the current problem with the builder.

dmitshur avatar Jul 12 '24 16:07 dmitshur