mirror of
https://github.com/clearlinux/graphene.git
synced 2026-10-04 07:58:22 +00:00
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.
137 lines
5.3 KiB
Plaintext
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"'
|
|
}
|
|
}
|
|
}
|