dashboard: add linux-amd64-clang builder.
Fixes golang/go#8805. LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/152790043
This commit is contained in:
parent
a7f9d5d4f8
commit
bcbfc883f4
|
@ -52,6 +52,7 @@ type imageInfo struct {
|
|||
|
||||
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-clang": {url: "http://storage.googleapis.com/go-builder-data/docker-linux.clang.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-sid": {url: "https://storage.googleapis.com/go-builder-data/docker-linux.sid.tar.gz"},
|
||||
|
@ -87,6 +88,8 @@ func main() {
|
|||
})
|
||||
addBuilder(buildConfig{name: "linux-386-sid", image: "gobuilders/linux-x86-sid"})
|
||||
addBuilder(buildConfig{name: "linux-amd64-sid", image: "gobuilders/linux-x86-sid"})
|
||||
addBuilder(buildConfig{name: "linux-386-clang", image: "gobuilders/linux-x86-clang"})
|
||||
addBuilder(buildConfig{name: "linux-amd64-clang", image: "gobuilders/linux-x86-clang"})
|
||||
|
||||
if (*just != "") != (*rev != "") {
|
||||
log.Fatalf("--just and --rev must be used together")
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
# 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.
|
||||
|
||||
# gobuilders/linux-x86-clang for building with clang instead of gcc.
|
||||
|
||||
FROM debian:wheezy
|
||||
MAINTAINER golang-dev <golang-dev@googlegroups.com>
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
ADD /sources/clang-deps.list /etc/apt/sources.list.d/
|
||||
|
||||
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
|
||||
|
||||
ENV CC /usr/bin/clang
|
|
@ -0,0 +1,15 @@
|
|||
# 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-clang .
|
||||
|
||||
docker-linux.clang.tar.gz: docker
|
||||
docker save gobuilders/linux-x86-clang | gzip | (cd ../../coordinator/buildongce && go run create.go --write_object=go-builder-data/docker-linux.clang.tar.gz)
|
||||
|
||||
check: docker
|
||||
docker run gobuilders/linux-x86-clang /usr/local/bin/builder -rev=fa76e8393654 -buildroot=/ -v -report=false linux-amd64-temp
|
||||
|
||||
check32: docker
|
||||
docker run gobuilders/linux-x86-clang /usr/local/bin/builder -rev=fa76e8393654 -buildroot=/ -v -report=false linux-386-temp
|
|
@ -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
|
|
@ -0,0 +1,19 @@
|
|||
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 wget
|
||||
wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | apt-key add -
|
||||
apt-get update
|
||||
apt-get install -y --no-install-recommends clang-3.5
|
||||
# TODO(cmang): move these into a 386 image that derives from this one.
|
||||
apt-get install -y --no-install-recommends libc6-dev-i386
|
||||
# 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
|
|
@ -0,0 +1,3 @@
|
|||
# The debian sources for stable clang builds, taken from http://llvm.org/apt/
|
||||
deb http://llvm.org/apt/wheezy/ llvm-toolchain-wheezy main
|
||||
deb-src http://llvm.org/apt/wheezy/ llvm-toolchain-wheezy main
|
Loading…
Reference in New Issue