All checks were successful
gitea-deepak/gogmagog/pipeline/head This commit looks good
71 lines
1.5 KiB
Groovy
71 lines
1.5 KiB
Groovy
pipeline {
|
|
agent any
|
|
tools {
|
|
go 'go-1.15.6'
|
|
}
|
|
environment {
|
|
GO115MODULE = 'on'
|
|
CGO_ENABLED = 0
|
|
GOPATH = '/tmp/gopath'
|
|
}
|
|
stages {
|
|
stage('Pre Test') {
|
|
steps {
|
|
echo 'Installing dependencies'
|
|
sh 'go version'
|
|
sh 'go get -u golang.org/x/lint/golint'
|
|
}
|
|
}
|
|
stage('Compile') {
|
|
steps {
|
|
sh './do.sh build'
|
|
}
|
|
}
|
|
stage('Test') {
|
|
parallel{
|
|
stage('go vet') {
|
|
steps {
|
|
echo 'Running vetting'
|
|
sh './do.sh _vet'
|
|
}
|
|
}
|
|
stage('test') {
|
|
environment {
|
|
PATH="${env.PATH}:${env.GOPATH}/bin"
|
|
}
|
|
steps {
|
|
echo 'Running test'
|
|
|
|
sh './do.sh _test'
|
|
|
|
sh "go get github.com/tebeka/go2xunit"
|
|
sh "go2xunit < tests.out -output tests.xml"
|
|
junit "tests.xml"
|
|
|
|
// convert coverage
|
|
sh "go get github.com/t-yuki/gocover-cobertura"
|
|
sh "gocover-cobertura < coverage.out > coverage.xml"
|
|
cobertura coberturaReportFile: 'coverage.xml'
|
|
|
|
}
|
|
}
|
|
stage('lint') {
|
|
environment {
|
|
PATH="${env.PATH}:${env.GOPATH}/bin"
|
|
}
|
|
steps {
|
|
sh './do.sh _lint'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
post {
|
|
always {
|
|
mail (bcc: '',
|
|
body: "Project: ${env.JOB_NAME} <br>Build Number: ${env.BUILD_NUMBER} <br> Build URL: ${env.BUILD_URL}", cc: '', charset: 'UTF-8', from: 'jenkins@jenkins.deepak.science', mimeType: 'text/html', replyTo: 'dmallubhotla+jenkins@gmail.com', subject: "${env.JOB_NAME} #${env.BUILD_NUMBER}: Build ${currentBuild.currentResult}", to: "dmallubhotla+ci@gmail.com")
|
|
}
|
|
}
|
|
}
|