@@ -3,44 +3,28 @@ FROM debian:bookworm-slim AS base
33ARG BUILD_VERSION="OSPI"
44
55# #######################################
6- # # 1st stage compiles OpenSprinkler runtime dependency raspi-gpio
7- FROM base AS raspi-gpio-build
8-
9- ENV DEBIAN_FRONTEND=noninteractive
10- RUN apt-get update
11- RUN apt-get install -y git gcc make automake
12- RUN rm -rf /var/lib/apt/lists/*
13- RUN mkdir /raspi-gpio
14- WORKDIR /raspi-gpio
15- RUN git clone --depth 1 https://github.com/RPi-Distro/raspi-gpio.git .
16- RUN autoreconf -f -i
17- RUN (./configure || cat config.log)
18- RUN make
19-
20- # #######################################
21- # # 2nd stage compiles OpenSprinkler code
6+ # # 1st stage compiles OpenSprinkler code
227FROM base AS os-build
238
249ENV DEBIAN_FRONTEND=noninteractive
25- RUN apt-get update && apt-get install -y bash g++ make libmosquittopp-dev libssl-dev
10+ RUN apt-get update && apt-get install -y bash g++ make libmosquittopp-dev libssl-dev libi2c-dev libgpiod-dev libgpiod2 gpiod
2611RUN rm -rf /var/lib/apt/lists/*
2712COPY . /OpenSprinkler
2813WORKDIR /OpenSprinkler
2914RUN make clean
3015RUN make VERSION=${BUILD_VERSION}
3116
3217# #######################################
33- # # 3rd stage is minimal runtime + executable
18+ # # 2nd stage is minimal runtime + executable
3419FROM base
3520
3621ENV DEBIAN_FRONTEND=noninteractive
37- RUN apt-get update && apt-get install -y libstdc++6 libmosquittopp1
22+ RUN apt-get update && apt-get install -y libstdc++6 libmosquittopp1 libi2c0 libgpiod2
3823RUN rm -rf /var/lib/apt/lists/*
3924RUN mkdir /OpenSprinkler
4025RUN mkdir -p /data/logs
4126
4227COPY --from=os-build /OpenSprinkler/OpenSprinkler /OpenSprinkler/OpenSprinkler
43- COPY --from=raspi-gpio-build /raspi-gpio/raspi-gpio /usr/bin/raspi-gpio
4428WORKDIR /OpenSprinkler
4529
4630# -- Logs and config information go into the volume on /data
0 commit comments