| // -*- mode: groovy -*- |
| pipeline { |
| |
| agent { |
| kubernetes { |
| cloud 'kubernetes' |
| label 'mulkcms2-v1' |
| yaml """ |
| apiVersion: v1 |
| kind: Pod |
| metadata: {} |
| spec: |
| containers: |
| - name: main |
| image: adoptopenjdk:14-hotspot-bionic |
| tty: true |
| command: |
| - /bin/cat |
| } |
| """ |
| } |
| } |
| |
| stages { |
| |
| stage('Build & Test') { |
| steps { |
| container('main') { |
| cache(maxCacheSize: 1000, caches: [ |
| [$class: 'ArbitraryFileCache', excludes: '', includes: '**/*', path: "$HOME/.m2"], |
| [$class: 'ArbitraryFileCache', excludes: '', includes: '**/*', path: "$HOME/.yarn-cache"], |
| ]) { |
| ansiColor('xterm') { |
| sh """ |
| apt-get -y update |
| apt-get -y install --no-install-recommends npm |
| npm install -g yarn |
| yarn config set cache-folder $HOME/.yarn-cache |
| ./mvnw package -Dquarkus.container-image.build=true -Dquarkus.container-image.push=true |
| """ |
| } |
| } |
| } |
| } |
| } |
| |
| stage('Archive artifacts') { |
| steps { |
| container('main') { |
| recordIssues tools: [ |
| mavenConsole(), |
| java() |
| ] |
| } |
| } |
| } |
| |
| } |
| } |