diff options
Diffstat (limited to 'Jenkinsfile.mainline')
-rw-r--r-- | Jenkinsfile.mainline | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/Jenkinsfile.mainline b/Jenkinsfile.mainline new file mode 100644 index 0000000..a7cc37a --- /dev/null +++ b/Jenkinsfile.mainline @@ -0,0 +1,81 @@ +#!/usr/bin/env groovy +/* + * job name: kernel-mainline + */ + +def KernelSource() { + dir ('source') { + checkout([ + $class: 'GitSCM', + branches: [ + [ name: '*/linux-5.7.y' ] + ], + extensions: [ + [ + $class: 'CloneOption', + timeout: 60 + ] + ], + userRemoteConfigs: [ + [ url: 'git://spunk.home.kraxel.org/linux-stable' ] + ]]) + } +} + +def KernelRPMBuild() { + sh ''' + scripts/prepare-kernel.sh + scripts/rpm-build.sh -ba kernel.spec + createrepo rpms + ''' + archiveArtifacts 'rpms/*/*' +} + +def KernelCleanup() { + dir ("build") { + deleteDir() + } + dir ("buildroot") { + deleteDir() + } + dir ("rpms") { + deleteDir() + } +} + +pipeline { + agent { + node 'dist-rhel-7-x86_64' + } + + options { + buildDiscarder(logRotator(numToKeepStr: '3')) + disableConcurrentBuilds() + } + + triggers { + pollSCM('H * * * *') + } + + stages { + + stage ('Prepare') { + steps { + KernelSource(); + } + } + + stage ("RPM Build") { + steps { + KernelRPMBuild() + } + } + + stage ("Cleanup") { + steps { + KernelCleanup() + } + } + + } +} |