#!/usr/bin/env groovy /* * job name: firmware-repo */ def CopyFirmware(project) { copyArtifacts([ filter: 'rpms/*/*.rpm', flatten: true, projectName: project, selector: lastSuccessful(), target: "rpms/$project" ]) } def CopyFirmwareOld(project) { copyArtifacts([ filter: 'rpmbuild/rpm/RPMS/*/*.rpm,rpmbuild/rpm/SRPMS/*.rpm', flatten: true, projectName: project, selector: lastSuccessful(), target: "rpms/$project" ]) } pipeline { agent { node 'sys-rhel7-x64' } options { buildDiscarder(logRotator(numToKeepStr: '3')) disableConcurrentBuilds() } triggers { upstream(upstreamProjects: 'seabios,u-boot,coreboot,edk2,ipxe', threshold: hudson.model.Result.SUCCESS) } stages { stage ('cleanup') { steps { dir('rpms') { deleteDir() } } } stage ('copy firmware') { steps { CopyFirmware('coreboot') CopyFirmware('edk2') CopyFirmware('ipxe') CopyFirmware('seabios') CopyFirmware('u-boot') CopyFirmwareOld('qboot-old') CopyFirmwareOld('sgabios-old') } } stage ('create repo') { steps { sh 'createrepo rpms' sh 'find rpms -print' archiveArtifacts 'rpms/*/*' } } } }