Fixing Jenkins tests

This commit is contained in:
retropikzel 2025-07-10 07:27:18 +03:00
parent 3e46bffeb7
commit e3d9b2bfbe
3 changed files with 7 additions and 6 deletions

8
Jenkinsfile vendored
View File

@ -18,15 +18,15 @@ pipeline {
implementations.each { implementation->
stage("${implementation} install") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "timeout 60 docker build --build-arg SCHEME=${implementation} --tag=r7rs-pffi-test-${implementation} -f dockerfiles/Dockerfile.snow-chibi-install-test ."
sh "timeout 60 docker run -v ${WORKSPACE}:/workdir -w /workdir -t r7rs-pffi-test-${implementation} sh -c \"make clean package install-jenkins SCHEME=${implementation} && cp tests/hello.scm /tmp/ && cd /tmp && SCHEME=${implementation} compile-r7rs -o hello hello.scm && ./hello\""
sh "docker build --build-arg SCHEME=${implementation} --tag=r7rs-pffi-test-${implementation} -f dockerfiles/Dockerfile.snow-chibi-install-test ."
sh "docker run -v ${WORKSPACE}:/workdir -w /workdir -t r7rs-pffi-test-${implementation} sh -c \"make clean package install-jenkins SCHEME=${implementation} && cp tests/hello.scm /tmp/ && cd /tmp && SCHEME=${implementation} compile-r7rs -o hello hello.scm && ./hello\""
}
}
tests.each { test ->
stage("${implementation} ${test}") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "timeout 600 docker build --build-arg COMPILE_R7RS=${implementation} --tag=r7rs-pffi-test-${implementation} -f dockerfiles/Dockerfile.test ."
sh "timeout 600 docker run -v ${WORKSPACE}:/workdir -w /workdir -t r7rs-pffi-test-${implementation} sh -c \"make SCHEME=${implementation} TEST=${test} clean test\""
sh "docker build --build-arg COMPILE_R7RS=${implementation} --tag=r7rs-pffi-test-${implementation} -f dockerfiles/Dockerfile.test ."
sh "docker run -v ${WORKSPACE}:/workdir -w /workdir -t r7rs-pffi-test-${implementation} sh -c \"make SCHEME=${implementation} TEST=${test} clean test\""
}
}
}

View File

@ -1,3 +1,4 @@
ARG SCHEME=chibi
FROM debian:bookworm AS build
RUN apt-get update && apt-get install -y git make chicken-bin build-essential
RUN chicken-install r7rs
@ -20,9 +21,9 @@ RUN apt-get update && apt-get install -y \
markdown \
pandoc \
weasyprint
COPY --from=build /usr/local/bin/compile-r7rs /usr/local-other/bin/compile-r7rs
RUN git clone https://github.com/ashinn/chibi-scheme.git --depth=1
RUN cd chibi-scheme && make && make install
COPY --from=build /usr/local/bin/compile-r7rs /usr/local/bin/compile-r7rs
ARG SCHEME=chibi
ENV COMPILE_R7RS=${SCHEME}
RUN mkdir -p ${HOME}/.snow && echo "()" > ${HOME}/.snow/config.scm

View File

@ -19,7 +19,7 @@ RUN apt-get update && apt-get install -y \
build-essential \
libffi-dev \
libmbedtls-dev
COPY --from=build /usr/local/bin/compile-r7rs /usr/local-other/bin/compile-r7rs
COPY --from=build /usr/local/bin/compile-r7rs /usr/local/bin/compile-r7rs
ARG SCHEME=chibi
ENV COMPILE_R7RS=${SCHEME}
RUN mkdir -p ${HOME}/.snow && echo "()" > ${HOME}/.snow/config.scm