| pipeline { |
| agent any |
| triggers { |
| gerrit customUrl: '', |
| gerritProjects: [ |
| [branches: [[compareType: 'PLAIN', pattern: 'master']], |
| compareType: 'PLAIN', |
| disableStrictForbiddenFileVerification: false, |
| pattern: 'master']], |
| triggerOnEvents: [ |
| commentAddedContains('!build'), |
| patchsetCreated(excludeDrafts: true, excludeNoCodeChange: true)] |
| } |
| options { |
| ansiColor('xterm') |
| } |
| parameters { |
| string(name: 'GERRIT_REFSPEC', |
| defaultValue: 'refs/heads/master', |
| description: 'The Gerrit refspec to fetch.') |
| } |
| stages { |
| stage('SCM Checkout') { |
| steps { |
| checkout changelog: true, poll: false, |
| scm: [$class: 'GitSCM', |
| branches: [[name: 'FETCH_HEAD']], |
| doGenerateSubmoduleConfigurations: false, |
| extensions: [ |
| [$class: 'CloneOption', noTags: true, reference: '', shallow: true], |
| [$class: 'WipeWorkspace']], |
| submoduleCfg: [], |
| userRemoteConfigs: [[refspec: '${GERRIT_REFSPEC}', url: 'https://${JAMI_GERRIT_URL}/dhtnet']]] |
| } |
| } |
| stage('Build') { |
| steps { |
| script { |
| docker.build("dhtnet:${env.BUILD_ID}", "--target test .") |
| } |
| } |
| } |
| stage('Show result') { |
| steps { |
| sh """ |
| id=\$(docker create dhtnet:${env.BUILD_ID}) |
| docker cp \$id:/result.summary result.summary |
| cat result.summary |
| docker cp \$id:/coverage coverage |
| docker rm -v \$id |
| """ |
| } |
| } |
| stage('Upload') { |
| steps { |
| sshagent(['5825b39b-dfc6-435f-918e-12acc1f56221']) { |
| sh("rsync -a coverage ${env.SSH_HOST_DL_RING_CX}:/srv/repository/ring/docs/dhtnet/") |
| } |
| } |
| } |
| } |
| } |