// -*- 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() | |
] | |
} | |
} | |
} | |
} | |
} |