summaryrefslogtreecommitdiff
path: root/JenkinsFile-master
blob: ed458766a110716a35fd38ef7417de5e04457310 (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
46
47
48
49
50
51
52
53
54
55
56
57
node("linux") {
    
    env.CC = "ccache gcc"
    env.CXX = "ccache g++"
    env.MAKEFLAGS = "-j3"
    env.GST_UNINSTALLED_ROOT="${env.WORKSPACE}"

    stage('Checkout') {
        checkout([$class: 'RepoScm',
                manifestRepositoryUrl:'git+ssh://git.arracacha.collabora.co.uk/git/gst-manifest.git',
                manifestBranch:"refs/tags/${params.build_tag}",
                jobs:4,
                currentBranch:true,
                quiet:true,
                depth:0])
    }
    
    stage('Cleanup') {
        sh 'rm -f **/tests/check/*/*.xml'
    }
    
    stage ('Build') {
        sh "./gstreamer/scripts/gst-uninstalled ./gst-ci-scripts/ci-build.sh fast-build-only"
    }
    
    wrap([$class: 'Xvfb', additionalOptions: '', assignedLabels: '', installationName: 'default', parallelBuild: true]) {
	stage ('Check') {
            env.GST_CHECKS_IGNORE="test_allocate_udp_ports_multicast,test_allocate_udp_ports_client_settings,test_reorder_buffer,test_redirect_yes"
            env.GST_CHECK_XML=1
            sh "./gstreamer/scripts/gst-uninstalled ./gst-ci-scripts/ci-build.sh check"
    
	    step([$class: 'XUnitBuilder',
		    testTimeMargin: '3000', thresholdMode: 1,
		    thresholds: [[$class: 'FailedThreshold',
			    failureNewThreshold: '',
			    failureThreshold: '4',
			    unstableNewThreshold: '',
			    unstableThreshold: '1'],
			[$class: 'SkippedThreshold',
			    failureNewThreshold: '',
			    failureThreshold: '',
			    unstableNewThreshold: '',
			    unstableThreshold: '']],
		    tools: [[$class: 'CheckType',
			    deleteOutputFiles: true,
			    failIfNotNew: true,
			    pattern: '**/tests/check/*/*.xml',
			    skipNoTestFiles: true,
			    stopProcessingIfError: true]]])
	}
    }

    stage('Post Cleanup') {
        sh 'find output/ -ctime +3 | xargs rm -Rf'
    }
    // FIXME: IRC Notification
}