31 lines
1.0 KiB
Docker
31 lines
1.0 KiB
Docker
# Create a virtual environment with all tools installed
|
|
# ref: https://hub.docker.com/_/ubuntu
|
|
FROM ubuntu:rolling AS env
|
|
LABEL maintainer="mizux.dev@gmail.com"
|
|
# Install system build dependencies
|
|
RUN apt-get update -qq \
|
|
&& apt-get install -yq git wget curl libssl-dev build-essential \
|
|
&& apt-get install -yq python3-dev python3-pip \
|
|
&& apt-get install -yq default-jdk \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
# Install Bazel
|
|
RUN curl https://bazel.build/bazel-release.pub.gpg | apt-key add -
|
|
RUN echo "deb [arch=amd64] https://storage.googleapis.com/bazel-apt stable jdk1.8" | tee /etc/apt/sources.list.d/bazel.list
|
|
RUN apt-get update -qq \
|
|
&& apt-get install -yq bazel \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
CMD [ "/bin/bash" ]
|
|
|
|
# Create lib directory
|
|
WORKDIR /home/lib
|
|
# Bundle lib source
|
|
COPY . .
|
|
|
|
FROM env as build
|
|
RUN bazel build --curses=no --copt='-Wno-sign-compare' //...:all
|
|
|
|
FROM build as test
|
|
RUN bazel test -c opt --curses=no --copt='-Wno-sign-compare' //...:all
|