diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties
index 56bb016..9dda3b6 100644
--- a/.mvn/wrapper/maven-wrapper.properties
+++ b/.mvn/wrapper/maven-wrapper.properties
@@ -1 +1 @@
-distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.0/apache-maven-3.5.0-bin.zip
\ No newline at end of file
+distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.2/apache-maven-3.5.2-bin.zip
diff --git a/CHANGELOG b/CHANGELOG
index 69e0e74..0f7e0ad 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -4,7 +4,12 @@ CHANGELOG
0.5.0
-----
-*
+* Add `Before`, `After` and `Around` combinators
+* Use `kemitix-maven-tiles`
+* Add `BeanBuilder` experiment
+* Upgrade `lombok` to 1.16.20
+* Upgrade assertj to 3.9.1
+* jenkins: test on both java 8 and 9
0.4.0
-----
diff --git a/Jenkinsfile b/Jenkinsfile
deleted file mode 100644
index f3a55d2..0000000
--- a/Jenkinsfile
+++ /dev/null
@@ -1,20 +0,0 @@
-pipeline {
- agent any
- stages {
- stage('Build') {
- steps {
- checkout([
- $class: 'GitSCM',
- branches: [[name: '**']],
- doGenerateSubmoduleConfigurations: false,
- extensions: [[$class: 'CleanBeforeCheckout']],
- submoduleCfg: [],
- userRemoteConfigs: [[credentialsId: 'github-kemitix', url: 'git@github.com:kemitix/mon.git']]
- ])
- sh './mvnw clean install'
- junit '**/target/surefire-reports/*.xml'
- archiveArtifacts '**/target/*.jar'
- }
- }
- }
-}
diff --git a/Jenkinsfile.groovy b/Jenkinsfile.groovy
new file mode 100644
index 0000000..3f87b24
--- /dev/null
+++ b/Jenkinsfile.groovy
@@ -0,0 +1,46 @@
+final String gitRepoUrl = 'git@github.com:kemitix/mon.git'
+final String mvn = "mvn --batch-mode --update-snapshots"
+
+pipeline {
+ agent any
+ stages {
+ stage('Prepare') {
+ steps {
+ git url: gitRepoUrl, branch: '**', credentialsId: 'github-kemitix'
+ }
+ }
+ stage('Build') {
+ parallel {
+ stage('Java 8') {
+ steps {
+ withMaven(maven: 'maven 3.5.2', jdk: 'JDK 1.8') {
+ sh 'mvn clean install'
+ }
+ }
+ }
+ // requires maven-failsafe-plugin:2.21 when it is released
+// stage('Java 9') {
+// steps {
+// withMaven(maven: 'maven 3.5.2', jdk: 'JDK 9') {
+// sh 'mvn clean install'
+// }
+// }
+// }
+ }
+ }
+ stage('Reporting') {
+ steps {
+ junit '**/target/surefire-reports/*.xml'
+ archiveArtifacts '**/target/*.jar'
+ }
+ }
+ stage('Deploy') {
+ when { expression { (env.GIT_BRANCH == 'master') } }
+ steps {
+ withMaven(maven: 'maven 3.5.2', jdk: 'JDK 1.8') {
+ sh "${mvn} deploy --activate-profiles release -DskipTests=true"
+ }
+ }
+ }
+ }
+}
diff --git a/lombok.config b/lombok.config
new file mode 100644
index 0000000..00ebb3e
--- /dev/null
+++ b/lombok.config
@@ -0,0 +1 @@
+lombok.addGeneratedAnnotation=false
diff --git a/pom.xml b/pom.xml
index da5660b..383e4de 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,12 +16,12 @@
1.8
4.12
- 3.8.0
- 1.16.18
+ 3.9.1
+ 1.16.20
2.10
- 0.5.2
-
- 2.20
+ 0.6.1
+ 2.20.1
+ 2.20.1
net.kemitix.mon
4.0.1
@@ -42,7 +42,7 @@
org.assertj
assertj-core
- ${assertj-core.version}
+ ${assertj.version}
test