blob: 3be9db42d272fe04003eab390cbaa262159ae5b1 [file] [log] [blame]
Leopold Schabel822341a2020-02-03 21:51:47 +01001#
2# The CI only rebuilds this Dockerfile if its hash changes.
3# Do not reference any external files, since modifications to them won't trigger a rebuild.
4#
5
Leopold Schabelaf5ec372020-03-11 13:33:17 +01006FROM fedora:31
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +02007
8RUN dnf -y upgrade && \
9 dnf -y install \
10 "@Development Tools" \
11 g++ \
12 libuuid-devel \
13 python3 \
14 nasm \
15 acpica-tools \
16 gettext-devel \
17 autoconf \
18 bison \
19 libtool \
20 automake \
21 flex \
22 glibc-static \
23 elfutils-libelf-devel \
24 libblkid-devel \
25 lz4 \
26 bc \
27 hostname \
28 which \
29 swtpm-tools \
30 rsync \
Hendrik Hofstadt3e6018f2019-10-28 21:29:42 +010031 qemu-system-x86-core \
Leopold Schabel383d4bb2019-11-14 22:53:58 +010032 postgresql \
Leopold Schabela4516f92019-12-04 20:27:05 +000033 expect \
34 grpc-cli \
Serge Bazanski7a1b10c2020-02-11 10:02:21 +010035 nc \
36 python-unversioned-command
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020037
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020038# Install Bazel binary
39RUN curl -o /usr/local/bin/bazel \
Leopold Schabelaf5ec372020-03-11 13:33:17 +010040 https://releases.bazel.build/2.2.0/release/bazel-2.2.0-linux-x86_64 && \
41 echo 'b2f002ea0e6194a181af6ac84cd94bd8dc797722eb2354690bebac92dda233ff /usr/local/bin/bazel' | sha256sum --check && \
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020042 chmod +x /usr/local/bin/bazel
43
44# Use a shared Go module cache for gazelle
45# https://github.com/bazelbuild/bazel-gazelle/pull/535
46ENV GO_REPOSITORY_USE_HOST_CACHE=1
47
48# --userns=keep-id uses the workdir as $HOME otherwise
49RUN mkdir /user
50ENV HOME=/user
51
52WORKDIR /work