blob: d2e2d97ee50eda14118289de6b8597660c70e412 [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
Lorenz Brunc452a8d2020-04-20 14:09:39 +02006FROM fedora:32
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +02007
8RUN dnf -y upgrade && \
Lorenz Brunfd166512020-04-01 17:29:45 +02009 dnf -y install \
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020010 "@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 \
Lorenz Brunfd166512020-04-01 17:29:45 +020036 python-unversioned-command \
37 openssl-devel
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020038
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020039# Install Bazel binary
40RUN curl -o /usr/local/bin/bazel \
Lorenz Brunc452a8d2020-04-20 14:09:39 +020041 https://releases.bazel.build/2.2.0/release/bazel-2.2.0-linux-x86_64 && \
42 echo 'b2f002ea0e6194a181af6ac84cd94bd8dc797722eb2354690bebac92dda233ff /usr/local/bin/bazel' | sha256sum --check && \
43 chmod +x /usr/local/bin/bazel
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +020044
45# Use a shared Go module cache for gazelle
46# https://github.com/bazelbuild/bazel-gazelle/pull/535
47ENV GO_REPOSITORY_USE_HOST_CACHE=1
48
49# --userns=keep-id uses the workdir as $HOME otherwise
50RUN mkdir /user
51ENV HOME=/user
52
53WORKDIR /work