foreign-c/Jenkinsfile

47 lines
1.5 KiB
Groovy

def tests = ['primitives', 'array', 'struct', 'addressof', 'callback']
pipeline {
agent {
label 'linux'
}
options {
disableConcurrentBuilds()
buildDiscarder(logRotator(numToKeepStr: '10', artifactNumToKeepStr: '10'))
}
stages {
stage('Tests x86_64 Debian') {
agent {
docker {
label 'docker-x86_64'
image 'retropikzel1/compile-r7rs'
args '--user=root --privileged -v /var/run/docker.sock:/var/run/docker.sock'
}
}
steps {
script {
def schemes = "chicken gauche guile kawa racket sagittarius stklos ypsilon"
schemes.split().each { SCHEME ->
stage("${SCHEME}") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "COMPILE_R7RS=${SCHEME} test-r7rs test.scm"
}
}
stage("${SCHEME} logs") {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "cat .test-r7rs/tmp/*"
sh "cat .test-r7rs/Dockerfile"
sh "cat .test-r7rs/${SCHEME}/logs/*.log"
}
}
}
}
}
}
}
}