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 freebsd-riscv64 builder #63482

Closed
mengzhuo opened this issue Oct 10, 2023 · 21 comments
Closed

x/build: add LUCI freebsd-riscv64 builder #63482

mengzhuo opened this issue Oct 10, 2023 · 21 comments
Assignees
Labels
arch-riscv Issues solely affecting the riscv64 architecture. Builders x/build issues (builders, bots, dashboards) NeedsFix The path to resolution is known, but the work has not been done. new-builder OS-FreeBSD
Milestone

Comments

@mengzhuo
Copy link
Contributor

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.

@gopherbot gopherbot added the Builders x/build issues (builders, bots, dashboards) label Oct 10, 2023
@gopherbot gopherbot added this to the Unreleased milestone Oct 10, 2023
@dmitshur dmitshur self-assigned this Oct 10, 2023
@gopherbot
Copy link
Contributor

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

@dmitshur
Copy link
Contributor

dmitshur commented Oct 12, 2023

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.

gopherbot pushed a commit to golang/build that referenced this issue Oct 12, 2023
Since the list of BUILDER_TYPES is nearly sorted, keep that up,
and sort (using 'Sort Lines' in $EDITOR) two of Linux run mods.

For golang/go#63480.
For golang/go#63481.
For golang/go#63482.

Change-Id: Icef633ab7a0d53b5807c2ab4a076d74c291dc0ea
Reviewed-on: https://go-review.googlesource.com/c/build/+/534976
TryBot-Bypass: Dmitri Shuralyov <[email protected]>
Reviewed-by: Carlos Amedee <[email protected]>
Auto-Submit: Dmitri Shuralyov <[email protected]>
Reviewed-by: Dmitri Shuralyov <[email protected]>
Reviewed-by: Heschi Kreinick <[email protected]>
@dmitshur
Copy link
Contributor

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 dmitshur assigned mengzhuo and unassigned dmitshur Oct 12, 2023
@cagedmantis
Copy link
Contributor

cc @golang/release

@dmitshur
Copy link
Contributor

dmitshur commented Dec 8, 2023

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

@mengzhuo
Copy link
Contributor Author

@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
Copy link
Contributor Author

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

@dmitshur
Copy link
Contributor

dmitshur commented Jan 11, 2024

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 dmitshur self-assigned this Jan 11, 2024
@dmitshur
Copy link
Contributor

dmitshur commented Jan 11, 2024

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.

@mengzhuo
Copy link
Contributor Author

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

@dmitshur
Copy link
Contributor

dmitshur commented Jan 25, 2024

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.

@cagedmantis
Copy link
Contributor

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

@cagedmantis
Copy link
Contributor

@mengzhuo Can you try out the builder again?

@dmitshur dmitshur added OS-FreeBSD arch-riscv Issues solely affecting the riscv64 architecture. labels May 11, 2024
@mengzhuo
Copy link
Contributor Author

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

@dmitshur
Copy link
Contributor

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
Copy link
Contributor

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

@dmitshur
Copy link
Contributor

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 dmitshur removed their assignment May 17, 2024
@gopherbot
Copy link
Contributor

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

gopherbot pushed a commit to golang/build that referenced this issue May 20, 2024
The builder is up and working. There are occasional temporary network
errors, but that can be improved upon separately.

Fixes golang/go#63482.

Change-Id: I5ebaf61aee4c8f3ec0031c6b9544126d5343ec20
Reviewed-on: https://go-review.googlesource.com/c/build/+/586036
Reviewed-by: Dmitri Shuralyov <[email protected]>
LUCI-TryBot-Result: Go LUCI <[email protected]>
Reviewed-by: Dmitri Shuralyov <[email protected]>
Auto-Submit: Dmitri Shuralyov <[email protected]>
Reviewed-by: Carlos Amedee <[email protected]>
@cagedmantis
Copy link
Contributor

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

@dmitshur dmitshur added the NeedsFix The path to resolution is known, but the work has not been done. label Jul 10, 2024
@gopherbot
Copy link
Contributor

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

@dmitshur
Copy link
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-riscv Issues solely affecting the riscv64 architecture. Builders x/build issues (builders, bots, dashboards) NeedsFix The path to resolution is known, but the work has not been done. new-builder OS-FreeBSD
Projects
Archived in project
Development

No branches or pull requests

4 participants