Граф коммитов

791 Коммитов

Автор SHA1 Сообщение Дата
Katie Hockman d32424dc8b cmd/release: remove the tour from the releases
This removes the tour from the release binary for go1.12.x and later
releases, lowering the size of each release. It will now redirect to
tour.golang.org, unless the user runs "go get -u golang.org/x/tour" to
cache it locally, in which case the local copy will be preferred.

The release size was 170.0 MiB for go1.11rc1, this change reduces the
size by 6.3 MiB, a 3.7% reduction. After this change, and others which
reduced the release size, the release candidate is now 115.2 MiB.

Updates golang/go#27151

Change-Id: I6687c34f3d4ae161c5e6df1f7af8cf3adc016fc4
Reviewed-on: https://go-review.googlesource.com/131156
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-24 19:14:47 +00:00
Katie Hockman 2cb401a52b cmd/gopherbot: allow backporting to the upcoming Go release
This change gives gopherbot support to backport to the next major
release (current release + 1). Previously, attempting a backport to
a future release would create backports for the last two major
Go releases. These changes will not affected "please backport" comments
which do not indicate a backport number, as gopherbot should not open
an issue for the future release without being explicitly asked to do so.

Fixes golang/go#27040

Change-Id: I0096680c2ce2e164e6d80203bcf257dadaa97138
Reviewed-on: https://go-review.googlesource.com/131077
Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-08-23 21:00:43 +00:00
Katie Hockman 8dcad780e3 cmd/release: remove the blog from the releases
This removes the blog from the release binary, greatly lowering the size
of each release. It will now redirect to blog.golang.org, unless the user
runs "go get -u golang.org/x/blog" to cache it locally, in which case the
release-shipped godoc will prefer the local copy of the blog.

Currently, the blog is growing at ~2MB a year, thus including the blog in
every new go version release will continue to grow the releases over time.

The release size was 170MB for go1.11rc1, this change reduces the size
by 34MB, a 20% reduction.

Fixes golang/go#21917

Change-Id: I53bf0c416c2085da10b6bb70f8aa6cae8e826dc3
Reviewed-on: https://go-review.googlesource.com/130575
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-22 01:10:48 +00:00
Brad Fitzpatrick f7da0f8f06 all: warn if user hasn't run gcloud auth application-default login
"gcloud auth application-default login" is NOT the same as
"gcloud auth login"

... which is super confusing.

Add a check for users.

We should probably add this in more places over time. Baby steps.

Change-Id: I4584f5b84b941fa6893eccd09fd61e8850538607
Reviewed-on: https://go-review.googlesource.com/130195
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
2018-08-21 02:14:17 +00:00
Brad Fitzpatrick 5e1479f69a cmd/release: remove go/pkg/${GOOS}_${GOARCH}/cmd from releases
This saves a bunch of space, and users don't typically rebuild
cmd/compile, cmd/link, etc. If they want to, they still can, but
they'll have to pay the cost of rebuilding dependent libaries. No need
to ship them just in case.

On linux-amd64, this reduces the tar.gz size from 177,294,517 to
156,487,264 bytes, a 19.8 MiB, 12% reduction.

Change-Id: I784dcf2c6f15f8eee8b9eaa501a8d982b2627288
Reviewed-on: https://go-review.googlesource.com/129955
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-08-20 17:55:46 +00:00
Brad Fitzpatrick a57116b231 cmd/gopherbot: add task to remove "wait-release" from CLs for tree opening
Only runs manually. We can run this whenever the tree reopens.

Change-Id: I003a8b69fd212ec3040a26855796ba997f1a5943
Reviewed-on: https://go-review.googlesource.com/129817
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-08-20 17:00:42 +00:00
He Liu ef878539c7 cmd/gopherbot, cmd/gopherstats: update the use of github api
To integrate with go-github api changes that breaks the compiling:

- https://github.com/google/go-github/pull/910
- https://github.com/google/go-github/pull/972

Change-Id: I5597f50b9c44fe42acec1128617a25e1fdd09e10
GitHub-Last-Rev: 07754f92aa
GitHub-Pull-Request: golang/build#11
Reviewed-on: https://go-review.googlesource.com/129075
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
2018-08-17 02:02:47 +00:00
Brad Fitzpatrick 5524b9ef25 all: stop using service accounts, prefer user creds
It's better to authenticate with an identity (e.g. foo@google.com),
rather than all of us copy/pasting a service account JSON (a glorified
access token) around and the server not knowing who's who.

I was previously misled into using service accounts because the gcloud
tool (when run on a GCE VM) strongly urges you not to use user
accounts and says you should be using service accounts instead. But
turns out that's because it assumes you'd never use GCE for
development and only for deployment. That is, gcloud assumes you'd
only use gcloud on desktop/laptop, and then deploy your binary to GCE
where the application itself would use service accounts. (We do use
service accounts for the application, but I also develop on a GCE VM.)

Also, the precursor helper function to FindDefaultCredentials (for
"Application Default Credentials") had a different search order for
credentials and prefered the GCE VM's service account instead of the
user-specific credentials. Now that FindDefaultCredentials uses a good
order we can remove some of our old complexity.

Change-Id: Ia888e264cfb88e977f3ff1a3a4bb583db70466ab
Reviewed-on: https://go-review.googlesource.com/129416
Reviewed-by: Andrew Bonventre <andybons@golang.org>
Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-08-15 17:50:03 +00:00
Dmitri Shuralyov 176bdadd9d cmd/buildlet: use a high ssh port on Linux when running under COS
When running in GCE's Container-Optimized OS (COS), we can't use
port 22, as the system's sshd is already using it. Our container
runs in the system network namespace, not isolated as is typical
in Docker or Kubernetes. So use port 2200 instead.

Remove an unnecessary type conversion.

Updates golang/go#26969.

Change-Id: Ic85e1f14529175106b9c7397186d3e9b5cb39c1c
Reviewed-on: https://go-review.googlesource.com/129356
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-14 22:14:26 +00:00
Filippo Valsorda b5f04f91c8 cmd/releasebot: add support for release candidates
Change-Id: If6553fa2b3f4a60f409186720f961f8eba4b7376
Reviewed-on: https://go-review.googlesource.com/129235
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-08-14 17:56:38 +00:00
Dmitri Shuralyov 405d638abf devapp, cmd/gopherbot: increase RAM in k8s config
Empirically, the maintner client uses just under 2 GB RAM while running.
However, during a maintner.ErrSplit situation, the RAM need spikes
beyond 2 GB, causing the apps to crash due to a hard limit of 2 GB RAM.
Increasing it to 4 GB should let them run crash-free during net splits.

Change-Id: I79deec74c0ddac4afb9e2ffb2ab19747a06bd53a
Reviewed-on: https://go-review.googlesource.com/128361
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-13 16:56:14 +00:00
Bryan C. Mills 69da2ad2cb cmd/buildlet/stage0: fix vet formatting warnings
Change-Id: I632036f04924b0b1d2211bda1dd7741f3cf225e1
Reviewed-on: https://go-review.googlesource.com/128635
Run-TryBot: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Russ Cox <rsc@golang.org>
2018-08-09 14:42:42 +00:00
Brad Fitzpatrick 843fd8823c cmd/xb: handle case where kubectl doesn't have a current-context
Change-Id: I8bad43c80458c4c85e8ca61a162e04b04312750f
Reviewed-on: https://go-review.googlesource.com/128335
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
2018-08-07 22:15:32 +00:00
Kevin Burke 4639cd3919 cmd/racebuild: fix errors reported by go vet
Change-Id: I79b07beeb284386b1683cfb22f283b18caaee0ce
Reviewed-on: https://go-review.googlesource.com/127919
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-04 19:33:28 +00:00
Andrew Bonventre 018bec1401 cmd/gerritbot: up RAM limits in k8s config
Change-Id: I0939e245f8dd2573e099491e0e014dc8571b6ebe
Reviewed-on: https://go-review.googlesource.com/127676
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-02 22:03:54 +00:00
Brad Fitzpatrick ec760fd405 cmd/gitmirror: update docs
Change-Id: If8b2dbde8001f6b89af52b34785bd894a6454e35
Reviewed-on: https://go-review.googlesource.com/127315
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-08-01 19:43:13 +00:00
Brad Fitzpatrick 0d762918c5 cmd/gitmirror: bump resources
Change-Id: I634ffe2a7844a27e88bb958fa20836eaf500e915
Reviewed-on: https://go-review.googlesource.com/127316
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-01 19:32:51 +00:00
Robert-André Mauchin 0d6a6460c5 cmd/coordinator/buildongce: fix tests
Fixes golang/go#26476

Change-Id: I380e47cfc0d51d0c297a2d7e5cdb263e09bcfd9c
Reviewed-on: https://go-review.googlesource.com/124975
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-07-19 16:02:51 +00:00
Hana Kim a41435cbf9 cmd/gitmirror: fix html in handleRoot
Change-Id: Ie0ab89caedae20dbb8c38cba1f872a7539fb48f8
Reviewed-on: https://go-review.googlesource.com/121437
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-07-11 20:52:42 +00:00
Andrew Bonventre 46b9db78f1 cmd/gitmirror: update deps
Pull in google.golang.org/api/compute/v1 and
google.golang.org/api/oauth2/v2 needed by
x/build/buildenv/envs.go

Change-Id: I3abb036f18f3dc10f86626205d0c2ea0bf75078b
Reviewed-on: https://go-review.googlesource.com/120856
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-26 17:04:47 +00:00
Filippo Valsorda 82893f770d releasebot: allow resuming after the tag was created
Change-Id: I1023761af4997e51273dc636b865ab35fce7366e
Reviewed-on: https://go-review.googlesource.com/120761
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-06-25 22:38:30 +00:00
Andrew Bonventre 767337190e cmd/gopherbot: disable CGO to prevent warnings during linking
Change-Id: I5e5f351ea004e3b7e095398006cb13985ba6c91f
Reviewed-on: https://go-review.googlesource.com/120196
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-21 15:34:13 +00:00
Andrew Bonventre 4c462a87d7 cmd/gopherbot: check maintner and GitHub before adding/removing labels
This change introduces a tiered model for making changes to labels:
+ If a label exists (or does not exist in the case of removal) on an
  issue according to maintner, then no action is taken to add (or
  remove) that label.
+ Before making any requests to remove a set of labels, the GitHub
  API is checked to see which ones are already not present on the issue.
  Then it only removes the labels that exist on the issue.

Change-Id: If6693db71ad9dfc3537c462bcdbc5af8f33e5b16
Reviewed-on: https://go-review.googlesource.com/120043
Reviewed-by: Bryan C. Mills <bcmills@google.com>
2018-06-21 15:07:48 +00:00
Andrew Bonventre ad1b719e57 cmd/gopherbot: add ability for users to label issues using comments
See tests for the various acceptable range of commands.

Fixes golang/go#24785

Change-Id: If3dfded60db4879f6d7e2281a3ba014a003a2b81
Reviewed-on: https://go-review.googlesource.com/119538
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-20 17:15:00 +00:00
Filippo Valsorda 7f9f9beb17 cmd/releasebot: add support for beta releases
Change-Id: I20b4c68dd2512dc76f5751c200d487784b68670b
Reviewed-on: https://go-review.googlesource.com/119537
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-06-19 19:43:43 +00:00
Filippo Valsorda 98033f5827 cmd/releasebot: remove runDir and extraEnv object state
Change-Id: I361a42676926aaf92314a2681f519bbf21a1d612
Reviewed-on: https://go-review.googlesource.com/119536
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-06-19 19:41:48 +00:00
Filippo Valsorda 6ae3f185d4 cmd/releasebot: adapt to new minor release process
Split the process in two parts with a manual +2 and submit of the
release commit in the middle. This way the release manager doesn't need
to force submit anything, and the first stage stops before serious
write operations. This also made dry-run mode more complete and the
process easier to resume if something breaks.

Completely removed the beta and rc code as it got messy with the partial
rewrite and it would have just been broken untested code waiting to break.

Fixes golang/go#24902

Change-Id: I2cbd9bdf88e283d2ca527e5c91c620617d7e068e
Reviewed-on: https://go-review.googlesource.com/116357
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-06-13 21:27:35 +00:00
He Liu 64a630379a cmd/coordinator: fix build breakage
Change-Id: Ia20f95e96922c80616cb921cbd3eca8108e4b2fc
GitHub-Last-Rev: 5bfb2bed28
GitHub-Pull-Request: golang/build#6
Reviewed-on: https://go-review.googlesource.com/118435
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-13 01:37:22 +00:00
Filippo Valsorda f4340766fd cmd/coordinator: list in HTML host types that are entirely missing
Change-Id: Id308486b5331c3c2ea8d4cb419a690aea1541433
Reviewed-on: https://go-review.googlesource.com/108561
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-12 22:30:20 +00:00
Filippo Valsorda d8cc845c75 cmd/release: use Application Default Credentials
Using global API keys or user managed service account keys for
"personal" actions (as opposed to application ones) is discouraged, as
it does not map to a specific user identity.

Change-Id: I945cfc3ad581a9c1df2289c6b77891164258802d
Reviewed-on: https://go-review.googlesource.com/117315
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-06-12 17:58:38 +00:00
Brad Fitzpatrick ab8120588e cmd/buildlet/stage0: force buildlet URL for s390x cross compile builder
Fixes golang/go#25760

Change-Id: Ia3072824b3898dbd1b11b8b2b4fdc10cc967735b
Reviewed-on: https://go-review.googlesource.com/116695
Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-06-06 18:05:13 +00:00
Bryan C. Mills 01f5214fec cmd/racebuild: use multi-line match for README regexp
In https://golang.org/cl/115375 I had neglected to test against a
non-empty README file, and accidentally wrote a regexp that never
matches.

Change-Id: I676cb11abea7e0f5bf337aab640ebc2478295a9b
Reviewed-on: https://go-review.googlesource.com/115377
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-31 18:02:37 +00:00
Bryan C. Mills 11ce5df82e cmd/racebuild: improve reproducibility of .syso builds
Use a known version of MinGW on Windows. (On other platforms, we use
whatever compiler is already installed on the system image.)

Test at a well-defined Go commit.

Record the Go and LLVM commits for each platform independently.
Extracting the C++ toolchain version is left for future work, but it
should be recoverable from the resulting .syso file anyway.

Change-Id: I9af1d2a6f540a4d276b87074864564bf989e4731
Reviewed-on: https://go-review.googlesource.com/115375
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-30 20:39:49 +00:00
Andrew Bonventre 6a76835c86 cmd/gerritbot: don’t abort if git sees a private key
In the case of golang/crypto#46, the change includes a private
key as part of tests. Disable this check in git when creating
changes.

Change-Id: I3457e7f9c431afaf8e1ea89545eac409f78f88ad
Reviewed-on: https://go-review.googlesource.com/114958
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-29 15:33:39 +00:00
Andrew Bonventre ac70dcd741 cmd/gerritbot: update deps
To pull in golang.org/x/time/rate needed by maintner.

Change-Id: I0edda73b30ef781ac6c34ac456cdf9b835822684
Reviewed-on: https://go-review.googlesource.com/114836
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-27 18:00:03 +00:00
Andrew Bonventre f74d56a996 cmd/gerritbot: don’t abort when PR has zero commits
A PR could report zero commits if the user deletes their fork. See
https://api.github.com/repos/golang/go/pulls/25559 as an example of
this. Since it doesn’t affect the ability to check out
pulls/<PR NUM>/head, it doesn’t affect GerritBot’s ability to
apply the change.

Additionally, don’t stop iterating through PRs if something goes
wrong with one or more of them. Report the error and then continue.

Fixes golang/go#24618

Change-Id: Ibfe6b17da7c62016343812f3a5fe31a0eb0a95f4
Reviewed-on: https://go-review.googlesource.com/114835
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-27 17:59:56 +00:00
Brad Fitzpatrick d2ccb7b8ac cmd/gopherbot: support milestoning neglected issues to Unplanned
The new "kicktrain" mode is disabled by default and needs to be run
by hand with --only-run=kicktrain so we can use this in the future.

I just used this to move 132 Go 1.11 issues to Unplanned.

Change-Id: Id6d9d2065fc6970ed14151fe368d3ae5ccaf9957
Reviewed-on: https://go-review.googlesource.com/114011
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-05-24 14:51:28 +00:00
Brad Fitzpatrick c8d18b7b8d env, buildlet/stage0, xb: build stage0 hermetically, add xb docker support
We used to build the buildlet/stage0 binary once, upload it to GCS,
and then future Docker builds of environments would slurp it down back
off the network (unversioned) and back that copy into its image
forever.

Now the buildlet/stage0 binary gets hermetically built as part of
env/*/Dockerfiles and GCS uploads/downloads aren't involved.

While we're at it, move more docker logic out of Makefiles and into
xb, including things like building dependent images (stage0) and
verifying the versions of dependent layers (e.g. that "golang:1.10" is
Go 1.10.2, and not Go 1.10 or Go 1.10.1).

Change-Id: I2a08d951b9fa8143fb3aee3ec7c2cc78d216962e
Reviewed-on: https://go-review.googlesource.com/113135
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-05-21 17:49:41 +00:00
Andrew Bonventre 69b0ecb046 cmd/buzzkill: add binary to delete snippets from play.golang.org
We usually do this manually via the GCP Datastore console. Provide
a binary to do it more easily.

Change-Id: I30dca595a4f81781bcb63ed8b09365b09961efcc
Reviewed-on: https://go-review.googlesource.com/113718
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-20 17:07:54 +00:00
Bryan C. Mills 94deb14bfb cmd/racebuild: install Git and GCC on the Windows builder
Note that compiler-rt/lib/tsan/go/build.bat has been broken since
https://reviews.llvm.org/D28596 (git commit
6ef4606343358c8f0365f7741b5033c42fbabb0e), so we have to use an older
version until it can be fixed.

compiler-rt commit ae08a22cc215448aa3ad5a6fb099f6df77e9fa01 is the
most recent one that builds, but it fails tests (golang/go#22687).

Updates golang/go#24354.
Updates golang/go#22687.

Change-Id: I36ba47fc955111143707224068e687168dbda4ff
Reviewed-on: https://go-review.googlesource.com/112895
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:49:31 +00:00
Bryan C. Mills 763dc24586 cmd/racebuild: add linux/ppc64le
Updates golang/go#19273.
Updates golang/go#24354.
Updates golang/go#23731.

Change-Id: Iad8870b265e7e3b56b5219d3367ccef70dcc0679
Reviewed-on: https://go-review.googlesource.com/112881
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:31:49 +00:00
Bryan C. Mills 573e35cfde cmd/racebuild: add netbsd/amd64
Updates golang/go#24354.
Updates golang/go#19273.
Updates golang/go#24322.

Change-Id: Ia67fde51d7698ca94d86c4697fd153a551a8ceee
Reviewed-on: https://go-review.googlesource.com/112880
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:31:39 +00:00
Bryan C. Mills fd4e4b63d9 cmd/racebuild: update darwin to use 10.12
Updates golang/go#24354.

Change-Id: Id9b409d019a79d9d3901df1f55ef69a5405e3351
Reviewed-on: https://go-review.googlesource.com/112879
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:31:34 +00:00
Bryan C. Mills ea056f3c87 cmd/racebuild: destroy in-flight gomotes on interrupt
Updates golang/go#24354.

Change-Id: I8db0dd81a669b1e75fc82295292d2d57d1c1935b
Reviewed-on: https://go-review.googlesource.com/112878
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:31:26 +00:00
Bryan C. Mills 329130d5c4 cmd/racebuild: stream stderr from gomote when building a single platform
Updates golang/go#24354.

Change-Id: I3953f3863b722691ff9ee17b764ef7258ca89f48
Reviewed-on: https://go-review.googlesource.com/112877
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:31:07 +00:00
Bryan C. Mills d1518ba491 cmd/racebuild: simplify debugging
Print output directly to the racebuild log instead of separate log
files per builder.

Cancel all builders at the first error: if there is something wrong
with the Go or compiler-rt commit, it's probably wrong globally.

Add a --platforms flag to attempt only a subset of builds: that way,
we can update only a subset (e.g., to work around OS-specific bugs) or
iterate on a single failing platform without attempting all the other
platforms at the same time.

Sanity-check the platforms table at init to ensure that there are no
duplicates for the same OS/arch combination.

Updates golang/go#24354.

Change-Id: Ic4d4ab32ca6cc13a150c9bbfcc2e5fbd3742d704
Reviewed-on: https://go-review.googlesource.com/112876
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:30:37 +00:00
Bryan C. Mills 7bb4e0b802 cmd/racebuild: clarify LLVM revision in usage comment
LLVM uses Subversion for their primary repository, so one might expect
that the rev passed to racebuild would be a Subversion revision
number. It is actually a git commit hash.

Updates golang/go#24354.

Change-Id: I8528f4f80477e256d889e3bbc98de6309f449c1c
Reviewed-on: https://go-review.googlesource.com/112875
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-05-11 22:11:06 +00:00
Brad Fitzpatrick 6ae8750e84 all: use Container-Optimized VMs instead of Kubernetes for buildlet containers
Fixes golang/go#25108

Change-Id: I084669b52b699700ed26a7fdd890d9205a8b9dc9
Reviewed-on: https://go-review.googlesource.com/111267
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-05-11 03:29:07 +00:00
Brad Fitzpatrick 2d3a6f76cb cmd/buildlet: detect a noexec tmpfs /workdir on Linux and remount it exec
Google's Container-Optimized Linux's konlet container start-up program
creates any requested tmpfs mounts as noexec. That doesn't work for
doing builds in, so remount it as executable.

This is required to run builds on COS instead of GKE.

Updates golang/go#25108

Change-Id: I9b719caf9180a03bafefa5b3b4b47ee43b9e5c1c
Reviewed-on: https://go-review.googlesource.com/112715
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-05-10 20:09:03 +00:00
Brad Fitzpatrick e6f02a5d40 internal/buildgo: add new Client type, move MakeBasepin code from buildongce
* 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>
2018-05-08 21:12:55 +00:00