70 lines
2.1 KiB
Plaintext
70 lines
2.1 KiB
Plaintext
|
@Library('cadoles') _
|
||
|
|
||
|
pipeline {
|
||
|
agent {
|
||
|
dockerfile {
|
||
|
label 'docker'
|
||
|
filename 'Dockerfile'
|
||
|
dir 'misc/jenkins'
|
||
|
}
|
||
|
}
|
||
|
|
||
|
stages {
|
||
|
stage('Run unit tests') {
|
||
|
steps {
|
||
|
script {
|
||
|
withCredentials([
|
||
|
usernamePassword([
|
||
|
credentialsId: 'forge-jenkins',
|
||
|
usernameVariable: 'GIT_USERNAME',
|
||
|
passwordVariable: 'GIT_PASSWORD'
|
||
|
])
|
||
|
]) {
|
||
|
sh '''
|
||
|
git config credential.https://forge.cadoles.com.username "$GIT_USERNAME"
|
||
|
git config credential.https://forge.cadoles.com.helper '!f() { test "$1" = get && echo "password=$GIT_PASSWORD"; }; f'
|
||
|
export GOPRIVATE=forge.cadoles.com/arcad/edge
|
||
|
make test
|
||
|
'''
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
stage('Release') {
|
||
|
when {
|
||
|
anyOf {
|
||
|
branch 'master'
|
||
|
branch 'develop'
|
||
|
}
|
||
|
}
|
||
|
steps {
|
||
|
script {
|
||
|
withCredentials([
|
||
|
usernamePassword([
|
||
|
credentialsId: 'forge-jenkins',
|
||
|
usernameVariable: 'GITEA_RELEASE_USERNAME',
|
||
|
passwordVariable: 'GITEA_RELEASE_PASSWORD'
|
||
|
])
|
||
|
]) {
|
||
|
sh 'make gitea-release'
|
||
|
}
|
||
|
def currentVersion = sh(returnStdout: true, script: 'make full-version').trim()
|
||
|
build(
|
||
|
job: "../emissary-firmware/${env.GIT_BRANCH}",
|
||
|
parameters: [
|
||
|
[$class: 'StringParameterValue', name: 'emissaryRelease', value: currentVersion]
|
||
|
]
|
||
|
)
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
post {
|
||
|
always {
|
||
|
cleanWs()
|
||
|
}
|
||
|
}
|
||
|
}
|