* This time, switch back to Python 2, use "pytest" to generate JUnit XML report that gets exposed through Jenkins, then archive the Linux executable.
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
| pipeline {
 | |
|     agent none
 | |
|     stages {
 | |
|         stage('Build') {
 | |
|             agent {
 | |
|                 docker {
 | |
|                     image 'python:2-alpine'
 | |
|                 }
 | |
|             }
 | |
|             steps {
 | |
|                 sh 'python -m py_compile sources/add2vals.py sources/calc.py'
 | |
|             }
 | |
|         }
 | |
|         stage('Test') {
 | |
|             agent {
 | |
|                 docker {
 | |
|                     image 'qnib/pytest'
 | |
|                 }
 | |
|             }
 | |
|             steps {
 | |
|                 sh 'py.test --verbose --junit-xml test-reports/results.xml sources/test_calc.py'
 | |
|             }
 | |
|             post {
 | |
|                 always {
 | |
|                     junit 'test-reports/results.xml'
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|         stage('Deliver') {
 | |
|             agent {
 | |
|                 docker {
 | |
|                     image 'cdrx/pyinstaller-linux:python2'
 | |
|                 }
 | |
|             }
 | |
|             steps {
 | |
|                 sh 'pyinstaller --onefile sources/add2vals.py'
 | |
|             }
 | |
|             post {
 | |
|                 success {
 | |
|                     archiveArtifacts 'dist/add2vals'
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |