mirror of
https://github.com/golang/go
synced 2024-10-01 01:18:32 -06:00
dashboard: add Debian sid builder
Update golang/go#8382 LGTM=rsc R=adg, rsc CC=golang-codereviews https://golang.org/cl/150090044
This commit is contained in:
parent
aca3a63806
commit
51805171bd
@ -54,6 +54,7 @@ var images = map[string]*imageInfo{
|
|||||||
"gobuilders/linux-x86-base": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.base.tar.gz"},
|
"gobuilders/linux-x86-base": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.base.tar.gz"},
|
||||||
"gobuilders/linux-x86-gccgo": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.gccgo.tar.gz"},
|
"gobuilders/linux-x86-gccgo": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.gccgo.tar.gz"},
|
||||||
"gobuilders/linux-x86-nacl": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.nacl.tar.gz"},
|
"gobuilders/linux-x86-nacl": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.nacl.tar.gz"},
|
||||||
|
"gobuilders/linux-x86-sid": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.sid.tar.gz"},
|
||||||
}
|
}
|
||||||
|
|
||||||
type buildConfig struct {
|
type buildConfig struct {
|
||||||
@ -84,6 +85,8 @@ func main() {
|
|||||||
dashURL: "https://build.golang.org/gccgo",
|
dashURL: "https://build.golang.org/gccgo",
|
||||||
tool: "gccgo",
|
tool: "gccgo",
|
||||||
})
|
})
|
||||||
|
addBuilder(buildConfig{name: "linux-386-sid", image: "gobuilders/linux-x86-sid"})
|
||||||
|
addBuilder(buildConfig{name: "linux-amd64-sid", image: "gobuilders/linux-x86-sid"})
|
||||||
|
|
||||||
if (*just != "") != (*rev != "") {
|
if (*just != "") != (*rev != "") {
|
||||||
log.Fatalf("--just and --rev must be used together")
|
log.Fatalf("--just and --rev must be used together")
|
||||||
@ -378,7 +381,7 @@ func startBuilding(conf buildConfig, rev string) (*buildStatus, error) {
|
|||||||
container := strings.TrimSpace(string(all))
|
container := strings.TrimSpace(string(all))
|
||||||
go func() {
|
go func() {
|
||||||
all, err := exec.Command("docker", "wait", container).CombinedOutput()
|
all, err := exec.Command("docker", "wait", container).CombinedOutput()
|
||||||
log.Printf("docker wait %s: %v, %s", container, err, strings.TrimSpace(string(all)))
|
log.Printf("docker wait %s/%s: %v, %s", container, rev, err, strings.TrimSpace(string(all)))
|
||||||
donec <- builderRev{conf.name, rev}
|
donec <- builderRev{conf.name, rev}
|
||||||
exec.Command("docker", "rm", container).Run()
|
exec.Command("docker", "rm", container).Run()
|
||||||
}()
|
}()
|
||||||
|
14
dashboard/env/linux-x86-sid/Dockerfile
vendored
Normal file
14
dashboard/env/linux-x86-sid/Dockerfile
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# Copyright 2014 The Go Authors. All rights reserved.
|
||||||
|
# Use of this source code is governed by a BSD-style
|
||||||
|
# license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
FROM debian:sid
|
||||||
|
MAINTAINER golang-dev <golang-dev@googlegroups.com>
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
ADD /scripts/install-apt-deps.sh /scripts/
|
||||||
|
RUN /scripts/install-apt-deps.sh
|
||||||
|
|
||||||
|
ADD /scripts/build-go-builder.sh /scripts/
|
||||||
|
RUN GO_REV=073fc578434b BUILDER_REV=8845ca94a310 /scripts/build-go-builder.sh && test -f /usr/local/bin/builder
|
12
dashboard/env/linux-x86-sid/Makefile
vendored
Normal file
12
dashboard/env/linux-x86-sid/Makefile
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# Copyright 2014 The Go Authors. All rights reserved.
|
||||||
|
# Use of this source code is governed by a BSD-style
|
||||||
|
# license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
docker: Dockerfile
|
||||||
|
docker build -t gobuilders/linux-x86-sid .
|
||||||
|
|
||||||
|
docker-linux.sid.tar.gz: docker
|
||||||
|
docker save gobuilders/linux-x86-sid | gzip | (cd ../../coordinator/buildongce && go run create.go --write_object=go-builder-data/docker-linux.sid.tar.gz)
|
||||||
|
|
||||||
|
check: docker
|
||||||
|
docker run gobuilders/linux-x86-sid /usr/local/bin/builder -rev=fa76e8393654 -buildroot=/ -v -report=false linux-amd64-sid
|
20
dashboard/env/linux-x86-sid/scripts/build-go-builder.sh
vendored
Executable file
20
dashboard/env/linux-x86-sid/scripts/build-go-builder.sh
vendored
Executable file
@ -0,0 +1,20 @@
|
|||||||
|
set -ex
|
||||||
|
|
||||||
|
export GOPATH=/gopath
|
||||||
|
export GOROOT=/goroot
|
||||||
|
PREFIX=/usr/local
|
||||||
|
: ${GO_REV:?"need to be set to the golang repo revision used to build the builder."}
|
||||||
|
: ${BUILDER_REV:?"need to be set to the go.tools repo revision for the builder."}
|
||||||
|
|
||||||
|
mkdir -p $GOROOT
|
||||||
|
curl -s https://storage.googleapis.com/gobuilder/go-snap.tar.gz | tar x --no-same-owner -zv -C $GOROOT
|
||||||
|
(cd $GOROOT/src && hg pull -r $GO_REV -u && find && ./make.bash)
|
||||||
|
|
||||||
|
GO_TOOLS=$GOPATH/src/code.google.com/p/go.tools
|
||||||
|
mkdir -p $GO_TOOLS
|
||||||
|
curl -s https://storage.googleapis.com/gobuilder/go.tools-snap.tar.gz | tar x --no-same-owner -zv -C $GO_TOOLS
|
||||||
|
|
||||||
|
mkdir -p $PREFIX/bin
|
||||||
|
(cd $GO_TOOLS && hg pull -r $BUILDER_REV -u && GOBIN=$PREFIX/bin /goroot/bin/go install code.google.com/p/go.tools/dashboard/builder)
|
||||||
|
|
||||||
|
rm -fR $GOROOT/bin $GOROOT/pkg $GOPATH
|
17
dashboard/env/linux-x86-sid/scripts/install-apt-deps.sh
vendored
Executable file
17
dashboard/env/linux-x86-sid/scripts/install-apt-deps.sh
vendored
Executable file
@ -0,0 +1,17 @@
|
|||||||
|
set -ex
|
||||||
|
|
||||||
|
apt-get update
|
||||||
|
# For running curl to get the hg starter tarballs (faster than hg clone).
|
||||||
|
apt-get install -y --no-install-recommends curl ca-certificates
|
||||||
|
# Optionally used by some net/http tests:
|
||||||
|
apt-get install -y --no-install-recommends strace
|
||||||
|
# For building Go's bootstrap 'dist' prog
|
||||||
|
apt-get install -y --no-install-recommends gcc libc6-dev
|
||||||
|
# For 32-bit builds:
|
||||||
|
# TODO(bradfitz): move these into a 386 image that derives from this one.
|
||||||
|
apt-get install -y --no-install-recommends libc6-dev-i386 gcc-multilib
|
||||||
|
# For interacting with the Go source & subrepos:
|
||||||
|
apt-get install -y --no-install-recommends mercurial git-core
|
||||||
|
|
||||||
|
apt-get clean
|
||||||
|
rm -fr /var/lib/apt/lists
|
Loading…
Reference in New Issue
Block a user