MYNT-EYE-S-SDK/Jenkinsfile

118 lines
3.0 KiB
Plaintext
Raw Permalink Normal View History

2018-10-24 09:10:22 +03:00
pipeline {
agent {
2018-10-29 06:08:19 +02:00
// docker { image 'ros:kinetic-ros-base-xenial' }
docker { image 'joinaero/kinetic-ros-opencv-xenial' }
2018-10-24 09:10:22 +03:00
}
2018-10-24 11:47:29 +03:00
/*
environment {
// FindOpenCV.cmake
OpenCV_DIR = '/opt/ros/kinetic/share/OpenCV-3.3.1-dev'
}
*/
2018-10-24 09:10:22 +03:00
stages {
stage('Prepare') {
steps {
2018-10-24 11:47:29 +03:00
echo "WORKSPACE: ${env.WORKSPACE}"
2018-10-24 09:10:22 +03:00
echo 'apt-get ..'
2019-08-26 13:15:37 +03:00
sh '''
apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
apt-get update
'''
2018-10-24 09:10:22 +03:00
}
}
stage('Init') {
steps {
echo 'make init ..'
sh 'make init INIT_OPTIONS=-y'
2018-10-24 11:47:29 +03:00
// echo 'skip get submodules and make test'
// sh './scripts/init.sh -y'
2018-10-24 09:10:22 +03:00
}
}
stage('Build') {
steps {
echo 'make build ..'
2018-10-24 11:47:29 +03:00
sh '. /opt/ros/kinetic/setup.sh; make build'
2018-10-24 09:10:22 +03:00
}
}
stage('Install') {
steps {
echo 'make install ..'
2018-10-24 11:47:29 +03:00
sh '. /opt/ros/kinetic/setup.sh; make install SUDO='
2018-10-24 09:10:22 +03:00
}
}
2019-08-26 13:15:37 +03:00
2018-10-24 09:10:22 +03:00
stage('Samples') {
steps {
echo 'make samples ..'
2018-10-24 11:47:29 +03:00
sh '. /opt/ros/kinetic/setup.sh; make samples SUDO='
2018-10-24 09:10:22 +03:00
}
}
2019-09-20 05:01:28 +03:00
/*
2018-10-24 09:10:22 +03:00
stage('Tools') {
steps {
echo 'make tools ..'
2018-10-24 11:47:29 +03:00
sh '. /opt/ros/kinetic/setup.sh; make tools SUDO='
2018-10-24 09:10:22 +03:00
}
}
2019-09-20 05:01:28 +03:00
*/
2018-10-24 09:10:22 +03:00
stage('ROS') {
steps {
echo 'make ros ..'
sh '''
2018-10-24 11:47:29 +03:00
. /opt/ros/kinetic/setup.sh
2018-10-24 09:10:22 +03:00
rosdep install --from-paths wrappers/ros/src --ignore-src --rosdistro kinetic -y
make ros SUDO=
'''
}
}
/*
stage('Clean') {
steps {
echo 'clean ..'
sh '''
rm -rf /var/lib/apt/lists/*
'''
}
}
*/
}
post {
always {
echo 'This will always run'
2019-08-30 10:38:24 +03:00
/*
2019-08-26 13:15:37 +03:00
dingTalk accessToken: '7dca6ae9b1b159b8b4b375e858b71f2e6cec8f73fa20d07552d09791261b2344',
imageUrl: 'http://icon-park.com/imagefiles/loading7_gray.gif',
message: '开始构建',
jenkinsUrl: "${JENKINS_URL}"
2019-08-30 10:38:24 +03:00
*/
2019-08-26 13:15:37 +03:00
2018-10-24 09:10:22 +03:00
}
success {
echo 'This will run only if successful'
2019-08-30 10:38:24 +03:00
/*
2019-08-26 13:15:37 +03:00
dingTalk accessToken: '7dca6ae9b1b159b8b4b375e858b71f2e6cec8f73fa20d07552d09791261b2344',
imageUrl: 'http://icons.iconarchive.com/icons/paomedia/small-n-flat/1024/sign-check-icon.png',
message: '构建成功',
jenkinsUrl: "${JENKINS_URL}"
2019-08-30 10:38:24 +03:00
*/
2018-10-24 09:10:22 +03:00
}
failure {
echo 'This will run only if failed'
2019-08-26 13:15:37 +03:00
dingTalk accessToken: '7dca6ae9b1b159b8b4b375e858b71f2e6cec8f73fa20d07552d09791261b2344',
imageUrl: 'http://www.iconsdb.com/icons/preview/soylent-red/x-mark-3-xxl.png',
message: '构建失败',
jenkinsUrl: "${JENKINS_URL}"
2018-10-24 09:10:22 +03:00
}
unstable {
echo 'This will run only if the run was marked as unstable'
}
changed {
echo 'This will run only if the state of the Pipeline has changed'
2019-08-26 13:15:37 +03:00
echo 'For example, if the Pipeline was previously failing but is now successful11'
2018-10-24 09:10:22 +03:00
}
}
}