aboutsummaryrefslogtreecommitdiffstats
path: root/jenkinsfile.firmware.sync
blob: 6d98dfd40c7a04cf5b4b874b6d2fb201c33ed801 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/usr/bin/env groovy
/*
 * job name: firmware-sync
 */

def base = "snape.kraxel.org:/public/vhosts/www.kraxel.org/repos"
def dest = "jenkins"

pipeline {
    agent any

    options {
	buildDiscarder(logRotator(numToKeepStr: '3'))
	disableConcurrentBuilds()
    }

    triggers {
	upstream(upstreamProjects: 'firmware-repo',
		 threshold: hudson.model.Result.SUCCESS)
    }

    stages {
        stage ('cleanup') {
            steps {
                dir('rpms') {
                    deleteDir()
                }
            }
        }
        stage ('copy repo') {
            steps {
		copyArtifacts([
		    filter: 'rpms/*/*',
		    projectName: "firmware-repo",
		    selector: lastSuccessful(),
		])
            }
        }
        stage ('rsync repo') {
            steps {
                sh "scripts/rsync-rpm-repo.sh rpms/ $base/$dest/"
            }
        }
    }
}