47 lines
1.4 KiB
Plaintext
47 lines
1.4 KiB
Plaintext
|
node(label: 'raspberrypi') {
|
||
|
def dists = ["stretch", "jessie", "wheezy"]
|
||
|
def srcdir = "${WORKSPACE}/src"
|
||
|
|
||
|
stage('Checkout') {
|
||
|
sh "rm -fr ${srcdir}"
|
||
|
sh "mkdir ${srcdir}"
|
||
|
dir(srcdir) {
|
||
|
checkout scm
|
||
|
}
|
||
|
}
|
||
|
|
||
|
for (int i = 0; i < dists.size(); ++i) {
|
||
|
def dist = dists[i]
|
||
|
def pkgdir = "package-${dist}"
|
||
|
def results = "results-${dist}"
|
||
|
|
||
|
stage("Prepare source for ${dist}") {
|
||
|
sh "rm -fr ${pkgdir}"
|
||
|
sh "${srcdir}/prepare-build.sh ${dist} ${pkgdir}"
|
||
|
}
|
||
|
|
||
|
stage("Build for ${dist}") {
|
||
|
sh "rm -fr ${results}"
|
||
|
sh "mkdir -p ${results}"
|
||
|
dir(pkgdir) {
|
||
|
sh "DIST=${dist} pdebuild --use-pdebuild-internal --debbuildopts -b --buildresult ${WORKSPACE}/${results}"
|
||
|
}
|
||
|
archiveArtifacts artifacts: "${results}/*.deb", fingerprint: true
|
||
|
}
|
||
|
|
||
|
stage("Test install on ${dist}") {
|
||
|
sh "/build/repo/validate-packages.sh ${dist} ${results}/dump1090-fa_*.deb ${results}/dump1090_*.deb"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (env.BRANCH_NAME == "master" || env.BRANCH_NAME == "dev") {
|
||
|
stage("Deploy to staging repo") {
|
||
|
for (int i = 0; i < dists.size(); ++i) {
|
||
|
def dist = dists[i]
|
||
|
def results = "results-${dist}"
|
||
|
sh "/build/repo/deploy-packages.sh ${dist} ${results}/*.deb"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|