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: do the buildongce -make_basepin work automatically in the coordinator in the background #21305

Closed
bradfitz opened this issue Aug 4, 2017 · 4 comments
Labels
Builders x/build issues (builders, bots, dashboards) FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done.
Milestone

Comments

@bradfitz
Copy link
Contributor

bradfitz commented Aug 4, 2017

Whenever somebody creates a new GCE image, it's important for latency reasons to create a base disk from that VM image in the region we use to run buildlet VMs.

If such a disk exists, future disk creations are Copy-On-Write and get created nearly instantly.

If a disk doesn't (and there's no hidden cache disk in the region from a recent creation), then you wait a bit for the copy from storage.

So buildongce -make-basepin auto-creates our "basepin" disks if needed.

I don't know why I shoved that functionality into the buildongce tool. Maybe it should be its own tool.

But in any case, we should have references to it from each env/**/{README,Makefile} so people updating these images in the future know to run it, or have the Makefiles auto-run it.

/cc @jessfraz @andybons @adams-sarah @cybrcodr

@gopherbot gopherbot added this to the Unreleased milestone Aug 4, 2017
@gopherbot gopherbot added the Builders x/build issues (builders, bots, dashboards) label Aug 4, 2017
@bradfitz
Copy link
Contributor Author

bradfitz commented May 8, 2018

Actually, repurpose this bug. Let's just make it automatically happen in the background in the coordinator.

@bradfitz bradfitz changed the title x/build: plop references to buildongce -make_basepin x/build: do the buildongce -make_basepin work automatically in the coordinator in the background May 8, 2018
@bradfitz bradfitz self-assigned this May 8, 2018
@bradfitz bradfitz added NeedsFix The path to resolution is known, but the work has not been done. and removed Documentation labels May 8, 2018
@gopherbot
Copy link

Change https://golang.org/cl/112162 mentions this issue: internal/buildgo: add new Client type, move MakeBasepin code from buildongce

gopherbot pushed a commit to golang/build that referenced this issue May 8, 2018
…ldongce

* adds new buildgo.Client type to hold primarily a
  buildenv.Environment and a google.Credentials

* starts to unify, document, and otherwise clean up
  how we look up authentication info.

* use the new buildgo.Client type in the "buildongce"
  (poorly named) cluster bootstrap tool.

* moves the "basepin" creation code from buildongce into
  a new method on buildgo.Client, for later use in the
  coordinator for golang/go#21305

Change-Id: I976b60c992bf67589e7f85fc5a9133f8cbb32e70
Reviewed-on: https://go-review.googlesource.com/112162
Reviewed-by: Bryan C. Mills <bcmills@google.com>
@gopherbot
Copy link

Change https://golang.org/cl/179419 mentions this issue: cmd/coordinator: make basepin disk creation automatic

@gopherbot
Copy link

Change https://golang.org/cl/179617 mentions this issue: cmd/coordinator: add missing code from CL 179419

gopherbot pushed a commit to golang/build that referenced this issue May 30, 2019
I flubbed my git in CL 179419. This was supposed to be included.

Also updates some logging after watching it spam during testing.

Updates golang/go#21305

Change-Id: Icbf32a064d8725c46ffddd422938bd8ff208c829
Reviewed-on: https://go-review.googlesource.com/c/build/+/179617
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
@golang golang locked and limited conversation to collaborators May 29, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Builders x/build issues (builders, bots, dashboards) FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done.
Projects
None yet
Development

No branches or pull requests

2 participants