Skip to content

Commit

Permalink
ioc: add support for installing packages with pip.
Browse files Browse the repository at this point in the history
  • Loading branch information
gustavosr8 committed Jul 3, 2024
1 parent ad02b00 commit dc63fef
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
9 changes: 9 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ ARG RUNDIR
ARG ENTRYPOINT=/usr/local/bin/lnls-run
ARG RUNTIME_PACKAGES
ARG RUNTIME_TAR_PACKAGES
ARG RUNTIME_PIP_PACKAGES

RUN apt update -y && \
apt install -y --no-install-recommends \
Expand All @@ -24,6 +25,13 @@ COPY --from=build-image /usr/local/lib /usr/local/lib
COPY --from=build-image /usr/local/bin/lnls-get-n-unpack /usr/local/bin/lnls-get-n-unpack
RUN lnls-get-n-unpack -r $RUNTIME_TAR_PACKAGES && \
ldconfig
RUN if [ -n "$RUNTIME_PIP_PACKAGES" ]; then \
apt update && \
apt install -y --no-install-recommends pip && \
pip install $RUNTIME_PIP_PACKAGES; \
apt clean && \
rm -rf /var/lib/apt/lists/*
fi

COPY --from=build-image /usr/local/bin/lnls-run /usr/local/bin/lnls-run

Expand All @@ -44,6 +52,7 @@ FROM build-image AS build-stage
ARG REPONAME
ARG BUILD_PACKAGES
ARG BUILD_TAR_PACKAGES
ARG BUILD_PIP_PACKAGES

RUN if [ -n "$BUILD_PACKAGES" ]; then \
apt update && \
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,9 @@ stages even when they are not needed.
Additional build and runtime packages to be installed can be listed in `args`,
under the `BUILD_PACKAGES` and `RUNTIME_PACKAGES` keys, respectively. It is not
necessary to quote them - e.g. `BUILD_PACKAGES: python3 python3-requests`.
Packages essential to all (or most) IOCs should be added to [this repository's
`Dockerfile`](./Dockerfile).
Packages that strictly need to be installed via `pip` can be listed under the
`BUILD_PIP_PACKAGES` and `RUNTIME_PIP_PACKAGES` keys. Packages essential to all
(or most) IOCs should be added to [this repository's `Dockerfile`](./Dockerfile).

The template above assumes the containers will be uploaded to the GitHub
registry.
Expand Down

0 comments on commit dc63fef

Please sign in to comment.