Zero-downtime deployments.
Change-Id: I744755891347ba9c55e51218265c69c667a5721e
diff --git a/.mvn/maven.config b/.mvn/maven.config
new file mode 100644
index 0000000..f8d5e4d
--- /dev/null
+++ b/.mvn/maven.config
@@ -0,0 +1 @@
+-Drevision=0.1.0-SNAPSHOT
diff --git a/build.xml b/build.xml
index ffa6512..7a3e0b0 100644
--- a/build.xml
+++ b/build.xml
@@ -2,6 +2,11 @@
<project default="package">
+ <tstamp>
+ <format property="version.date" pattern="yyyyMMddhhmmss"/>
+ </tstamp>
+
+ <property name="version.tag" value="1.${version.date}"/>
<property name="web-dir" location="src/main/resources/META-INF/resources"/>
<target name="yarn" depends="yarn.check" if="yarn.run">
@@ -88,13 +93,15 @@
<target name="deploy" description="Deploy JAR to Kubernetes">
<exec executable="./mvnw">
<arg value="package"/>
+ <arg value="-Drevision=${version.tag}"/>
<arg value="-Dquarkus.container-image.build=true"/>
<arg value="-Dquarkus.container-image.push=true"/>
</exec>
<exec executable="kubectl">
- <arg value="delete"/>
- <arg value="pods"/>
- <arg value="-lapp=mulkcms2"/>
+ <arg value="set"/>
+ <arg value="image"/>
+ <arg value="deployments/mulkcms2"/>
+ <arg value="mulkcms2=docker.benkard.de/mulk/mulkcms2:${version.tag}"/>
</exec>
<exec executable="kubectl">
<arg value="get"/>
diff --git a/pom.xml b/pom.xml
index 856fa4d..3018980 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
<groupId>eu.mulk</groupId>
<artifactId>mulkcms2</artifactId>
- <version>0.1.0-SNAPSHOT</version>
+ <version>${revision}</version>
<properties>
<maven.compiler.parameters>true</maven.compiler.parameters>