6008cdb62ba060ad09cbcb30e7f8551983b4576f
[buildbot.git] / docker / buildworker / Dockerfile
1 FROM debian:11
2 MAINTAINER OpenWrt Maintainers
3
4 ARG DEBIAN_FRONTEND=noninteractive
5 ARG BUILDBOT_VERSION=2.10.1
6 ARG OPENWRT_VERSION=unknown
7
8 ENV BUILDWORKER_MASTER builds.openwrt.org:9990
9 ENV BUILDWORKER_ADMIN contact@openwrt.org
10 ENV BUILDWORKER_DESCRIPTION Docker Container https://git.openwrt.org/$OPENWRT_VERSION
11
12 USER root
13
14 RUN \
15 apt-get update && \
16 apt-get install -y \
17 build-essential \
18 ccache \
19 curl \
20 gawk \
21 g++-multilib \
22 gcc-multilib \
23 genisoimage \
24 git-core \
25 gosu \
26 libdw-dev \
27 libelf-dev \
28 libncurses5-dev \
29 locales \
30 pv \
31 pwgen \
32 python \
33 python3 \
34 python3-pip \
35 qemu-utils \
36 rsync \
37 signify-openbsd \
38 subversion \
39 swig \
40 unzip \
41 wget && \
42 apt-get clean && \
43 localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
44
45 RUN pip3 install -U pip
46 RUN pip3 install \
47 "buildbot-worker==$BUILDBOT_VERSION" \
48 pyelftools \
49 pyOpenSSL \
50 service_identity
51
52 ENV LANG=en_US.utf8
53
54 COPY docker/buildworker/files/entry.sh /entry.sh
55 COPY docker/buildworker/files/start.sh /start.sh
56
57 RUN \
58 groupadd buildbot && \
59 useradd \
60 --create-home --home-dir /builder \
61 --comment "OpenWrt buildbot" \
62 --gid buildbot --shell /bin/bash buildbot && \
63 chown buildbot:buildbot /builder && \
64 chmod 0755 /entry.sh /start.sh
65
66 VOLUME [ "/builder" ]
67 ENTRYPOINT [ "/entry.sh" ]
68 CMD [ "/start.sh" ]