env/js-wasm, dashboard: add start of a js-wasm builder

Updates golang/go#18892

Change-Id: I4b16afe8f0ce74f6ecd022f8bca14ada94ab308f
Reviewed-on: https://go-review.googlesource.com/112736
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
Brad Fitzpatrick 2018-05-11 05:54:32 +00:00
Родитель 6ae8750e84
Коммит 4b011fe7b6
3 изменённых файлов: 64 добавлений и 0 удалений

Просмотреть файл

@ -62,6 +62,12 @@ var Hosts = map[string]*HostConfig{
buildletURLTmpl: "http://storage.googleapis.com/$BUCKET/buildlet.linux-amd64",
env: []string{"GOROOT_BOOTSTRAP=/go1.4"},
},
"host-js-wasm": &HostConfig{
Notes: "Container with node.js for testing js/wasm.",
ContainerImage: "js-wasm:latest",
buildletURLTmpl: "http://storage.googleapis.com/$BUCKET/buildlet.linux-amd64",
env: []string{"GOROOT_BOOTSTRAP=/go1.4"},
},
"host-s390x-cross-kube": &HostConfig{
Notes: "Container with s390x cross-compiler.",
ContainerImage: "linux-s390x-stretch:latest",
@ -1120,6 +1126,17 @@ func init() {
numTryTestHelpers: 3,
env: []string{"GOOS=nacl", "GOARCH=amd64p32", "GOHOSTOS=linux", "GOHOSTARCH=amd64"},
})
addBuilder(BuildConfig{
Name: "js-wasm",
HostType: "host-js-wasm",
TryBot: false,
MaxAtOnce: 2,
numTryTestHelpers: 0,
env: []string{
"GOOS=js", "GOARCH=wasm", "GOHOSTOS=linux", "GOHOSTARCH=amd64",
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/workdir/go/misc/wasm",
},
})
addBuilder(BuildConfig{
Name: "openbsd-amd64-60",
HostType: "host-openbsd-amd64-60",

16
env/js-wasm/Dockerfile поставляемый Normal file
Просмотреть файл

@ -0,0 +1,16 @@
# Copyright 2018 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 {{REPO}}/linux-x86-sid:latest
MAINTAINER golang-dev <golang-dev@googlegroups.com>
ENV DEBIAN_FRONTEND noninteractive
# Add node.js to run the js/wasm tests.
RUN apt-get update && apt-get install -y \
--no-install-recommends \
nodejs \
&& rm -rf /var/lib/apt/lists/*
CMD ["/usr/local/bin/stage0"]

31
env/js-wasm/Makefile поставляемый Normal file
Просмотреть файл

@ -0,0 +1,31 @@
# Copyright 2018 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.
IMAGE_NAME=$(shell basename $(CURDIR))
STAGING_REPO=gcr.io/go-dashboard-dev
PROD_REPO=gcr.io/symbolic-datum-552
usage:
echo "Use staging, prod, or dev targets. For dev, specify your Docker repository with the REPO=foo argument." ; exit 1
staging: Dockerfile
sed 's|{{REPO}}|'"$(STAGING_REPO)"'|g' Dockerfile > Dockerfile.make
docker build -t $(STAGING_REPO)/$(IMAGE_NAME):latest -f Dockerfile.make .
docker push $(STAGING_REPO)/$(IMAGE_NAME):latest
rm Dockerfile.make
prod: Dockerfile
sed 's|{{REPO}}|'"$(PROD_REPO)"'|g' Dockerfile > Dockerfile.make
docker build -t $(PROD_REPO)/$(IMAGE_NAME):latest -f Dockerfile.make .
docker push $(PROD_REPO)/$(IMAGE_NAME):latest
rm Dockerfile.make
# You must provide a REPO=your-repo-name arg when you make
# this target. REPO is the name of the Docker repository
# that will be prefixed to the name of the image being built.
dev: Dockerfile
sed 's|{{REPO}}|'"$(REPO)"'|g' Dockerfile > Dockerfile.make
docker build -t $(REPO)/$(IMAGE_NAME):latest -f Dockerfile.make .
docker push $(REPO)/$(IMAGE_NAME):latest
rm Dockerfile.make