| # Dockerfile for Skia Infrastructure CI environment. | 
 |  | 
 | # TODO(jcgregorio) Switch back to debian:testing after | 
 | # https://github.com/nodesource/distributions/issues/873 is resolved. | 
 | FROM debian:buster | 
 | RUN groupadd -g 2000 skia \ | 
 |   && useradd -m -u 2000 -g 2000 skia \ | 
 |   && apt-get update && apt-get upgrade -y && apt-get install -y \ | 
 |   build-essential \ | 
 |   git \ | 
 |   curl \ | 
 |   clang \ | 
 |   nodejs \ | 
 |   npm \ | 
 |   wget | 
 |  | 
 | USER skia | 
 |  | 
 | RUN mkdir -p /home/skia/golib/src \ | 
 |     && cd /home/skia \ | 
 |     && wget https://dl.google.com/go/go1.16.3.linux-amd64.tar.gz \ | 
 |     && tar -xf go1.16.3.linux-amd64.tar.gz | 
 |  | 
 | ENV GOPATH /home/skia/golib | 
 | ENV PATH $GOPATH/bin:/home/skia/go/bin:$PATH | 
 | ENV GO111MODULE on | 
 |  | 
 | RUN cd $GOPATH/src \ | 
 |   && mkdir go.skia.org \ | 
 |   && cd go.skia.org \ | 
 |   && git clone https://skia.googlesource.com/buildbot.git infra | 
 |  | 
 | # Set fake identity for git rebase. See thread in | 
 | # https://skia-review.googlesource.com/c/buildbot/+/286537/5/docker/Dockerfile#46 | 
 | RUN cd $GOPATH/src/go.skia.org/infra \ | 
 |     && git config user.email "skia@skia.org" \ | 
 |     && git config user.name "Skia" | 
 |  | 
 | # HASH must be specified. | 
 | ARG HASH | 
 | RUN if [ -z "${HASH}" ] ; then echo "HASH must be specified as a --build-arg"; exit 1; fi | 
 |  | 
 | RUN cd $GOPATH/src/go.skia.org/infra \ | 
 |   && git fetch \ | 
 |   && git reset --hard ${HASH} | 
 |  | 
 | # If patch ref is specified then update the ref to patch in a CL. | 
 | ARG PATCH_REF | 
 | RUN if [ ! -z "${PATCH_REF}" ] ; then cd $GOPATH/src/go.skia.org/infra \ | 
 |     && git fetch https://skia.googlesource.com/buildbot ${PATCH_REF} \ | 
 |     && git checkout FETCH_HEAD \ | 
 |     && git rebase ${HASH}; fi | 
 |  | 
 | RUN cd $GOPATH/src/go.skia.org/infra \ | 
 |     && go install ./... | 
 |  | 
 | # Install bazelisk, which we use to load Bazel, which is needed for 'make | 
 | # fiddle_secwrap'. | 
 | RUN go install github.com/bazelbuild/bazelisk@latest | 
 |  | 
 | ENV BAZEL $GOPATH/bin/bazelisk | 
 |  | 
 | RUN cd $GOPATH/src/go.skia.org/infra/fiddlek \ | 
 |   && make fiddle_secwrap | 
 |  | 
 | USER root | 
 |  | 
 | # USER skia | 
 | # | 
 | # RUN cd /home/skia/golib/src/go.skia.org/infra/perf \ | 
 | #     && make |