42 lines
1.1 KiB
Groovy
42 lines
1.1 KiB
Groovy
pipeline {
|
|
agent {
|
|
docker {
|
|
image 'debian:stretch-slim'
|
|
}
|
|
}
|
|
|
|
stages {
|
|
stage('Requirements') {
|
|
steps {
|
|
sh 'apt-get -y update && apt-get -y install git python-pip cloc && pip install platformio'
|
|
}
|
|
}
|
|
stage('Build') {
|
|
steps {
|
|
sh 'pio run'
|
|
}
|
|
post {
|
|
always {
|
|
archiveArtifacts '.pioenvs/nodemcu/firmware.bin, .pioenvs/nodemcu/firmware.elf'
|
|
}
|
|
}
|
|
}
|
|
stage('Coverage') {
|
|
steps {
|
|
sh 'cloc --by-file --xml --out=.test/cloc.xml src include'
|
|
}
|
|
post {
|
|
always {
|
|
recordIssues(tools: [taskScanner(ignoreCase: true, includePattern: 'src/*.*', normalTags: 'TODO')])
|
|
sloccountPublish encoding: '', pattern: '.test/cloc.xml'
|
|
}
|
|
}
|
|
}
|
|
stage('Upload') {
|
|
steps {
|
|
sh 'make otaupload'
|
|
}
|
|
}
|
|
}
|
|
}
|