49 lines
842 B
Plaintext
49 lines
842 B
Plaintext
pipeline {
|
|
agent {
|
|
dockerfile {
|
|
label 'linux'
|
|
dir 'ci'
|
|
}
|
|
}
|
|
|
|
environment {
|
|
/* Avoid cache poisoning by other jobs. */
|
|
GOCACHE = "${env.WORKSPACE_TMP}/go-build"
|
|
GOPATH = "${env.WORKSPACE_TMP}/go"
|
|
}
|
|
|
|
options {
|
|
disableConcurrentBuilds()
|
|
buildDiscarder(logRotator(
|
|
numToKeepStr: '20',
|
|
daysToKeepStr: '30',
|
|
))
|
|
}
|
|
|
|
stages {
|
|
stage('Check') {
|
|
steps {
|
|
sh 'cargo check --all --all-features'
|
|
sh 'cargo fmt -- --check'
|
|
sh 'cargo clippy --all --all-features -- --deny warnings'
|
|
}
|
|
}
|
|
|
|
stage('Build') {
|
|
steps {
|
|
sh 'cargo build'
|
|
sh 'cargo build --all --all-features'
|
|
}
|
|
}
|
|
|
|
stage('Test') {
|
|
steps {
|
|
sh 'cargo test --all --all-features'
|
|
}
|
|
}
|
|
}
|
|
post {
|
|
cleanup { cleanWs() }
|
|
}
|
|
}
|