Karl Palsson 11d2408289 jenkins: try and set commit status on correct commit
Logs on jenkins showed it trying to set the commit state on the wrong
commits, the master of upstream, instead of the head of the PR
2020-09-26 21:41:12 +00:00

86 lines
2.8 KiB
Groovy

pipeline {
agent {label 'locm3-usb'}
parameters {
string(name:'pr_from_git_url', description:'the git url we are going to clone the pr from')
string(name:'pr_from_sha', description:'what we are going to build')
}
stages {
stage('checkout') {
steps {
sh "echo karl we are building $pr_from_sha"
checkout([$class: 'GitSCM', branches: [[name: "$pr_from_sha"]], userRemoteConfigs: [[url: "$pr_from_git_url"]]])
step([
class: "GitHubCommitStatusSetter",
commitShaSource: [$class: "ManuallyEnteredShaSource", sha: "$pr_from_sha"],
reposSource: [$class: "ManuallyEnteredRepositorySource", url: "$pr_from_git_url"],
contextSource: [$class: "DefaultCommitContextSource"],
statusResultSource: [ $class: "DefaultStatusResultSource"]
]);
}
}
stage('prepare') {
steps {
sh label: 'preparing python', script: '''
[ -f .env3 ] || python3 -m venv .env3
. .env3/bin/activate
pip install pyusb
pip install unittest-xml-reporting
'''
}
}
stage('build') {
steps {
sh '''
. .env3/bin/activate
make -j5 V=s
make -C tests/gadget-zero all V=s
'''
}
}
stage('Testprepare') {
steps {
sh label: 'gadget0', script: '''
cd tests/gadget-zero
echo "hla_serial 53FF6E066765505136472567" > openocd.stm32f3-disco.local.cfg
echo "hla_serial 57FF6B064967485630481087" > openocd.stm32f4disco.local.cfg
'''
}
}
stage('flashin') {
steps {
dir('tests/gadget-zero') {
sh '''
make -f Makefile.stm32f3-disco flash V=1
make -f Makefile.stm32f4disco flash V=1
'''
}
}
}
stage('run-test') {
steps {
sh '''
. .env3/bin/activate
cd tests/gadget-zero
rm -rf tests
python test_gadget0.py -X
for x in tests/*; do TT=$(basename \$x); sed -i "s/testcase\\ classname=\\"/testcase\\ classname=\\"\${TT}./g" \$x/TEST-*; done
'''
}
}
}
post {
always {
junit 'tests/gadget-zero/tests/*/TEST-*.xml'
step([
$class: "GitHubCommitStatusSetter",
commitShaSource: [$class: "ManuallyEnteredShaSource", sha: "$pr_from_sha"],
reposSource: [$class: "ManuallyEnteredRepositorySource", url: "$pr_from_git_url"],
contextSource: [$class: "DefaultCommitContextSource"],
statusResultSource: [ $class: "DefaultStatusResultSource"]
]);
}
}
}