1
0
Fork 0

Merge pull request 'Adding .deb builds' (#9) from main into release

Reviewed-on: https://codeberg.org/retropikzel/compile-scheme/pulls/9
This commit is contained in:
retropikzel 2025-12-11 11:49:21 +01:00
commit 813d7caf76
3 changed files with 27 additions and 29 deletions

View File

@ -1,5 +1,6 @@
FROM debian:trixie-slim
RUN apt-get update && apt-get install -y gcc make git libffi-dev docker.io
FROM debian:trixie
RUN apt-get update && apt-get install -y \
gcc make git libffi-dev docker.io
WORKDIR /cache
RUN git clone https://github.com/ashinn/chibi-scheme.git --depth=1
WORKDIR /cache/chibi-scheme

49
Jenkinsfile vendored
View File

@ -3,14 +3,14 @@ pipeline {
agent {
dockerfile {
label 'docker-x86_64'
filename 'Dockerfile.jenkins'
args '--user=root --privileged -v /var/run/docker.sock:/var/run/docker.sock'
filename 'Dockerfile.jenkins'
args '--user=root --privileged -v /var/run/docker.sock:/var/run/docker.sock'
}
}
options {
disableConcurrentBuilds()
buildDiscarder(logRotator(numToKeepStr: '10', artifactNumToKeepStr: '10'))
buildDiscarder(logRotator(numToKeepStr: '10', artifactNumToKeepStr: '10'))
}
parameters {
@ -20,37 +20,36 @@ pipeline {
stages {
stage('Build and install') {
when { not { branch 'release' } }
steps {
sh "make build-chibi"
sh "make install"
sh "make install"
}
}
stage('Test') {
parallel {
stage('R6RS') {
steps {
script {
R7RS_SCHEMES.split().each { SCHEME ->
stage("${SCHEME} R6RS") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "make SCHEME=${SCHEME} test-r6rs-docker"
}
}
stage('R6RS') {
when { not { branch 'release' } }
steps {
script {
R6RS_SCHEMES.split().each { SCHEME ->
stage("${SCHEME} R6RS") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "make SCHEME=${SCHEME} test-r6rs-docker"
}
}
}
}
}
}
stage('R7RS') {
steps {
script {
R7RS_SCHEMES.split().each { SCHEME ->
stage("${SCHEME} R7RS") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "make SCHEME=${SCHEME} test-r7rs-docker"
}
}
stage('R7RS') {
when { not { branch 'release' } }
steps {
script {
R7RS_SCHEMES.split().each { SCHEME ->
stage("${SCHEME} R7RS") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "make SCHEME=${SCHEME} test-r7rs-docker"
}
}
}
@ -61,7 +60,7 @@ pipeline {
stage('.deb package') {
steps {
sh "make deb"
archiveArtifacts artifacts: '*.deb', allowEmptyArchive: true, fingerprint: true, onlyIfSuccessful: true
archiveArtifacts artifacts: '*.deb', allowEmptyArchive: true, fingerprint: true, onlyIfSuccessful: true
}
}
}

View File

@ -102,7 +102,6 @@ test-r6rs:
mkdir -p ${R6RSTMP}
cp -r r6rs-testfiles/* ${R6RSTMP}/
cd ${R6RSTMP} && COMPILE_R7RS=${SCHEME} compile-scheme -I ./libs -o main --debug main.sps
cd ${R6RSTMP} && file main
cd ${R6RSTMP} && ./main 1 2 3 > test-result.txt
@grep "Test successfull (\"1\" \"2\" \"3\")" ${R6RSTMP}/test-result.txt || (echo "Test failed, output: " && cat ${R6RSTMP}/test-result.txt && exit 1)
@ -115,7 +114,6 @@ test-r7rs:
mkdir -p ${R7RSTMP}
cp -r r7rs-testfiles/* ${R7RSTMP}/
cd ${R7RSTMP} && COMPILE_R7RS=${SCHEME} compile-scheme -I ./libs -o main --debug main.scm
cd ${R7RSTMP} && file main
-cd ${R7RSTMP} && ./main 1 2 3 > test-result.txt 2>&1
@grep "Test successfull (\"1\" \"2\" \"3\")" ${R7RSTMP}/test-result.txt || (echo "Test failed, output: " && cat ${R7RSTMP}/test-result.txt && exit 1)