forked from linux-test-project/ltp
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This adds a regular container (or Docker) file which builds LTP from source. This is initially intended for testing the LTP itself. The resulting container has just the LTP installation and runtime dependencies. However it is still quite large, probably due to debug symbols. The container can be built with a command like: podman build -t tumbleweed/ltp \ --build-arg PREFIX=registry.opensuse.org/opensuse/ \ --build-arg DISTRO_NAME=tumbleweed \ --build-arg DISTRO_RELEASE=20230925 . Or just podman build . which will create an Alpine container. It contains Kirk in /opt/kirk. So cd /opt/kirk && ./kirk -f ltp -r syscalls will run some tests. Note a much smaller container can be found at: https://registry.opensuse.org/cgi-bin/cooverview?srch_term=project%3D%5Ebenchmark+container%3D.* This is created with SUSE's build system which does not use container files Signed-off-by: Richard Palethorpe <[email protected]>
- Loading branch information
Richard Palethorpe
committed
Sep 28, 2023
1 parent
77ce69a
commit 3dc98b9
Showing
4 changed files
with
62 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Containerfile |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
ARG PREFIX=docker.io/ | ||
ARG DISTRO_NAME=alpine | ||
ARG DISTRO_RELEASE=3.18 | ||
|
||
FROM $PREFIX$DISTRO_NAME:$DISTRO_RELEASE AS build | ||
ARG LTPROOT=/opt/ltp | ||
ARG DISTRO_NAME=alpine | ||
ARG DISTRO_RELEASE=3.18 | ||
|
||
RUN mkdir /build | ||
WORKDIR /build | ||
COPY . /build | ||
RUN ./ci/${DISTRO_NAME}.sh | ||
RUN git clean -fdX | ||
RUN ./build.sh -p $LTPROOT -i | ||
|
||
FROM $PREFIX$DISTRO_NAME:$DISTRO_RELEASE | ||
ARG LTPROOT=/opt/ltp | ||
ARG KIRKROOT=/opt/kirk | ||
ARG DISTRO_NAME=alpine | ||
|
||
COPY --from=build /build/ci/${DISTRO_NAME}-runtime.sh $LTPROOT/runtime-deps.sh | ||
RUN $LTPROOT/runtime-deps.sh | ||
|
||
COPY --from=build $LTPROOT $LTPROOT | ||
ENV LTPROOT=$LTPROOT | ||
ENV PATH=$LTPROOT/testcases/bin:$LTPROOT/bin:$PATH | ||
|
||
RUN mkdir -p $KIRKROOT | ||
COPY --from=build /build/tools/kirk $KIRKROOT | ||
|
||
USER ltp |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#!/bin/sh -eux | ||
|
||
apk add \ | ||
acl \ | ||
keyutils \ | ||
libaio \ | ||
libacl \ | ||
libcap \ | ||
libselinux \ | ||
libsepol \ | ||
libtirpc \ | ||
numactl \ | ||
openssl \ | ||
py3-msgpack | ||
|
||
adduser -D -g "Unprivileged LTP user" ltp |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
#!/bin/sh -eux | ||
|
||
zyp="zypper --non-interactive install --force-resolution --no-recommends" | ||
|
||
$zyp \ | ||
iproute2 \ | ||
keyutils \ | ||
libaio1 \ | ||
libmnl0 \ | ||
libnuma1 \ | ||
libtirpc3 | ||
|
||
useradd ltp |