File: Dockerfile

package info (click to toggle)
rauc 1.15-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 6,336 kB
  • sloc: ansic: 36,989; python: 3,354; sh: 1,391; xml: 53; makefile: 41
file content (99 lines) | stat: -rw-r--r-- 2,340 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
FROM debian:bookworm

# Add backports for pkcs11-provider
RUN echo "deb http://deb.debian.org/debian bookworm-backports main" \
  > /etc/apt/sources.list.d/backports.list

# Required for building
RUN apt-get update -q && apt-get install -q -y --no-install-recommends \
  gcc \
  g++ \
  meson \
  libtool \
  libglib2.0-dev \
  libcurl3-dev \
  libssl-dev \
  libdbus-1-dev \
  libjson-glib-dev \
  libfdisk-dev \
  libnl-genl-3-dev

# Required for building the cgi example
RUN apt-get install -q -y --no-install-recommends \
  autoconf \
  automake \
  make \
  xz-utils

# Required for testing
RUN apt-get install -q -y --no-install-recommends \
  acl \
  squashfs-tools \
  dosfstools \
  lcov \
  slirp \
  python3-pyasn1 \
  python3-pyasn1-modules \
  python3-pytest \
  python3-pydbus \
  python3-dasbus \
  python3-sphinx \
  python3-sphinx-rtd-theme \
  dbus \
  dbus-x11 \
  grub-common \
  opensc \
  opensc-pkcs11 \
  libengine-pkcs11-openssl \
  pkcs11-provider \
  fakeroot \
  faketime \
  pseudo \
  time \
  tree \
  kmod \
  uncrustify \
  casync \
  qemu-system-x86 \
  procps \
  mtd-utils \
  mmc-utils \
  python3-aiohttp \
  python3-requests \
  nginx-light \
  fdisk

# Required for test environment setup
RUN apt-get install -q -y --no-install-recommends \
  sudo \
  python3-pip \
  git \
  curl && \
  curl -sLo /usr/bin/codecov https://codecov.io/bash && \
  chmod +x /usr/bin/codecov

# Install softhsm2 only on working architectures (32 bit arm seems broken)
RUN test "$(uname -m)" = "armv7l" && exit 0; \
    apt-get install -q -y --no-install-recommends softhsm2

# Build and install the optional desync (pinned to version 0.9.3) only on x86_64
ENV GOPATH=/go
RUN test "$(uname -m)" != "x86_64" && exit 0; \
    apt-get install -q -y --no-install-recommends golang && \
    git clone https://github.com/folbricht/desync.git /tmp/desync && \
    cd /tmp/desync/cmd/desync && \
    git checkout c508eeb0865a5a7c2c9b1158a5f0414265d869df && \
    go install && \
    cp /go/bin/desync /usr/bin/desync && \
    rm -rf /tmp/desync /go

# Create required directories for bind mounts
RUN mkdir -p /lib/modules /var/run/dbus

# Remove apt lists
RUN rm -rf /var/lib/apt/lists/*

RUN adduser --disabled-password --comment "" rauc-ci && \
    echo "rauc-ci ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/rauc-ci

USER rauc-ci