Files
graphene/Jenkinsfiles/Linux-18.04
Dmitrii Kuvaiskii 7d99d4788c [LibOS,Pal] Remove Graphene IPC completely
Graphene IPC (GIPC) was introduced to perform faster bulk IPC by sharing pages as copy-on-write
across processes. This feature became stale, and it was shown that recent Linux kernels (4.2+)
have zero-copy transfers over UNIX sockets and exhibit similar performance. GIPC is not built and
not tested in Jenkins. Also, GIPC does not work under SGX. This commit completely removes GIPC.
2019-12-30 12:17:51 -08:00

137 lines
5.3 KiB
Plaintext

pipeline {
agent {
dockerfile { filename 'Jenkinsfiles/ubuntu-18.04.dockerfile' }
}
stages {
stage('Lint') {
steps {
sh '''
./.ci/run-pylint -f text || :
./.ci/run-pylint -f json | ./.ci/prfilter
./.ci/run-shellcheck || :
./.ci/run-shellcheck -f json | ./.ci/prfilter
'''
}
}
stage('Build') {
steps {
sh '''
make -j 8 WERROR=1
make -j 8 WERROR=1 test
'''
}
}
stage('Test') {
steps {
sh '''
cd Pal/regression
make regression
'''
sh '''
cd LibOS/shim/test/regression
make regression
'''
sh '''
cd LibOS/shim/test/fs
make test
'''
sh '''
cd LibOS/shim/test/apps/ltp
make
make ltp.xml
'''
timeout(time: 5, unit: 'MINUTES') {
sh '''
cd LibOS/shim/test/apps/python-simple
PYTHONVERSION=python3.6 make check
'''
}
timeout(time: 5, unit: 'MINUTES') {
sh '''
cd LibOS/shim/test/apps/python-scipy-insecure
PYTHONVERSION=python3.6 make check
'''
}
sh '''
cd LibOS/shim/test/apps/bash
make regression
'''
timeout(time: 5, unit: 'MINUTES') {
sh '''
cd LibOS/shim/test/apps/curl
make check
'''
}
timeout(time: 5, unit: 'MINUTES') {
sh '''
cd LibOS/shim/test/apps/gcc
make check
'''
}
timeout(time: 15, unit: 'MINUTES') {
sh '''
cd LibOS/shim/test/apps/lmbench
make test N_RUNS=1 ENOUGH=100
'''
}
timeout(time: 10, unit: 'MINUTES') {
sh '''
cd LibOS/shim/test/apps/redis
make
make start-graphene-server &
sleep 1
./src/src/redis-benchmark
'''
}
sh '''
cd LibOS/shim/test/apps/lighttpd
make
make start-graphene-server &
sleep 1
LOOP=1 CONCURRENCY_LIST="1 32" ./benchmark-http.sh 127.0.0.1:8003
'''
sh '''
cd LibOS/shim/test/apps/nginx
make
make start-graphene-server &
sleep 1
LOOP=1 CONCURRENCY_LIST="1 32" ./benchmark-http.sh 127.0.0.1:8002
'''
sh '''
cd LibOS/shim/test/apps/apache
make
make start-graphene-server &
sleep 1
LOOP=1 CONCURRENCY_LIST="1 32" ./benchmark-http.sh 127.0.0.1:8001
'''
}
post {
always {
archiveArtifacts 'LibOS/shim/test/apps/ltp/ltp.xml'
junit 'Pal/regression/pal-regression.xml'
junit 'LibOS/shim/test/regression/libos-regression.xml'
junit 'LibOS/shim/test/apps/ltp/ltp.xml'
}
}
}
stage('Deploy') {
steps {
sh 'echo Deploying code'
}
}
}
post {
success {
echo 'Deployment successful'
}
failure {
echo 'Failure while on the pipeline'
}
unstable {
echo 'Pipeline marked as "unstable"'
}
}
}