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

12 Коммитов

Автор SHA1 Сообщение Дата
Heschi Kreinick c31a5bb4f2 cmd/buildlet/stage0: add LUCI environment setup
Improve run-worker to successfully start up LUCI. It depends on sudo, so
add it to all of our images.

The resulting image is up and running as a LUCI worker, and debugnewvm
on it also works fine.

Change-Id: Ibcac4acf5f9849e5847ae926e333002108c08a0d
Reviewed-on: https://go-review.googlesource.com/c/build/+/508866
Run-TryBot: Heschi Kreinick <heschi@google.com>
Auto-Submit: Heschi Kreinick <heschi@google.com>
Reviewed-by: Carlos Amedee <carlos@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
2023-07-13 18:06:13 +00:00
Heschi Kreinick d91711000a env,cmd/buildlet/stage0: add bootstrapswarm to stage0 layer
We want to move our Docker-based builders over to LUCI. Rather than
building a second set of images, add the LUCI bootstrap command to the
stage0 layer, along with a script that selects which to run based on the
GCE project ID.

It's sort of silly to put this in cmd/buildlet, but I didn't want to
make another image and then have to teach xb about it, or undertake a
big yak shave to get rid of xb. Since the image is built from the root
of the module it doesn't matter much.

This doesn't do any of the necessary steps to make LUCI work once the
bootstrap command runs. That'll come later.

Change-Id: Iaa911cf86a9f52efd688836cfaa6f0e4a11ed884
Reviewed-on: https://go-review.googlesource.com/c/build/+/506876
Run-TryBot: Heschi Kreinick <heschi@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Carlos Amedee <carlos@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Heschi Kreinick <heschi@google.com>
2023-07-12 20:16:52 +00:00
Brad Fitzpatrick 4ef0deba65 env/crosscompile: update the three cross compile envs from Jessie to Buster
The earlier fix to remove IN_KUBERNETES in buildlet/stage0/stage0.go
in CL 201739 caused Kubernetes-based cross compilation builds on fail
to start up because I forgot to rebuild & push those container images.

But when I went to re-push them, I found they're too old (Debian
Jessie) and don't build anymore. So update them to Debian Buster.

While I'm here, remove the Debian release name from their image name,
as this won't be the last time we need to upgrade them. Unlike real
builders, the OS release isn't the point of these containers, as they
don't run tests. They exist only to do builds, so the OS isn't
interesting or worth calling out.

Updates golang/go#34956

Change-Id: Iee4691a821421b161a9333b4441f83ff45d1ffec
Reviewed-on: https://go-review.googlesource.com/c/build/+/202021
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2019-10-19 04:31:59 +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
Filippo Valsorda 86f50f009a all: replace "gcloud docker" with "docker"
From the "gcloud docker" output:

WARNING: `gcloud docker` will not be supported for Docker client
versions above 18.03. Please use `gcloud auth configure-docker` to
configure `docker` to use `gcloud` as a credential helper, then use
`docker` as you would for non-GCR registries.

Not adding "gcloud auth configure-docker" to the Makefiles as it spams
and there are implicit required authentication steps already anyway.

Change-Id: I5bd1177e82d30a6590126a307bee01d0acee9d6a
Reviewed-on: https://go-review.googlesource.com/108560
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-04-20 23:51:18 +00:00
Kevin Burke eebd280ca5 env: fix Makefile typos
Change-Id: I0629392c698204dad4e466c86d392d05bc613868
Reviewed-on: https://go-review.googlesource.com/40851
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-04-15 15:49:28 +00:00
Brad Fitzpatrick 5b0ec29935 env: use gcloud docker -- push
The '--' separating gcloud commands from docker commands will become
mandatory soon, and this quiets gcloud spam warning about.

Change-Id: I6ddec79c5f1fe28135a5e7a20c616536e4ddab98
Reviewed-on: https://go-review.googlesource.com/40475
Reviewed-by: Jessica Frazelle <me@jessfraz.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-04-12 18:28:40 +00:00
Jess Frazelle adda3456a7 build/env: change armhf builder from stretch to jessie
The far superior linux distro of champions.

Updates golang/go#17105

Change-Id: I5ea0cd2361753f61bb74bf3d4dea6c181f1427fa
Reviewed-on: https://go-review.googlesource.com/29687
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2016-09-24 00:26:42 +00:00
Jess Frazelle c727f25d9b build/env: add cross compile toolchain for armhf
Moved arm to armel, if anyone wants that in the future.

Change-Id: I57db5c8dff12c02cd2ceb4bd657d5fa63040985c
Reviewed-on: https://go-review.googlesource.com/29684
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2016-09-23 22:46:30 +00:00
Jess Frazelle a0418082eb build/env: add linux-libc-dev to provide asm/erro.h
Change-Id: I08d918d9bda6186f8eac52468e9d915fe5805e29
Reviewed-on: https://go-review.googlesource.com/29682
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2016-09-23 22:18:18 +00:00
Jess Frazelle 47e0d583cb build/env: cleanup COPY in cross-compile builders
Change-Id: I2b680b65a47f3932762279626e2e03fd6552ad92
Reviewed-on: https://go-review.googlesource.com/29680
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2016-09-23 21:38:58 +00:00
Jess Frazelle 56d60b94d1 build/env: add Dockerfile for cross-compiling from x86 to arm
Moved cross-compile builders to env/crosscompile

Tested it works:

$ readelf --headers go/bin/go
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           ARM
  Version:                           0x1
  Entry point address:               0xc3a80
  Start of program headers:          52 (bytes into file)
  Start of section headers:          276 (bytes into file)
  Flags:                             0x5000002, has entry point, Version5 EABI
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         7
  Size of section headers:           40 (bytes)
  Number of section headers:         23
  Section header string table index: 7

Change-Id: I3db71fa954575c29bb0a12a07c9bf84c4c96d88e
Reviewed-on: https://go-review.googlesource.com/29679
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2016-09-23 21:32:27 +00:00