Support defining version in parent pom only (#25)

* Support defining version in parent pom only

* Add install task to makefile
diff --git a/.gitignore b/.gitignore
index 2dcdfea..31885d9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,4 +15,5 @@
 derby.log
 pass.txt
 out
-job-repository.db
\ No newline at end of file
+job-repository.db
+.flattened-pom.xml
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 76af8f3..d6b7bdf 100644
--- a/Makefile
+++ b/Makefile
@@ -13,23 +13,32 @@
 GIT_REV_SHORT = $(shell git rev-parse --short HEAD)
 MAVEN_BINARY ?= mvn
 
+ifeq ("$(INFRA_JDK_11)", "true")
+  INFRA_JAVA_VERSION = "11"
+else
+  INFRA_JAVA_VERSION = "1.8"
+endif
+
 package:
-	$(MAVEN_BINARY) clean package
+	$(MAVEN_BINARY) clean package -Djdk.version=$(INFRA_JAVA_VERSION)
+
+install:
+	$(MAVEN_BINARY) clean install -Djdk.version=$(INFRA_JAVA_VERSION)
 
 test:
-	$(MAVEN_BINARY) clean test
+	$(MAVEN_BINARY) clean test -Djdk.version=$(INFRA_JAVA_VERSION)
 
 update-version:
-	$(MAVEN_BINARY) versions:set -DnewVersion=$(new-version) -DgenerateBackupPoms=false
+	$(MAVEN_BINARY) versions:set-property -Dproperty=revision -DnewVersion=$(new-version) -DgenerateBackupPoms=false -Djdk.version=$(INFRA_JAVA_VERSION)
 
 rpm:
-	$(MAVEN_BINARY) clean package -Dbuild-rpm -DskipTests
+	$(MAVEN_BINARY) clean package -Dbuild-rpm -DskipTests -Djdk.version=$(INFRA_JAVA_VERSION)
 
 deb:
-	$(MAVEN_BINARY) clean package -Dbuild-deb -DskipTests
+	$(MAVEN_BINARY) clean package -Dbuild-deb -DskipTests -Djdk.version=$(INFRA_JAVA_VERSION)
 
 docker-build:
-	$(MAVEN_BINARY) clean package docker:build -DskipTests -Dbuild-deb
+	$(MAVEN_BINARY) clean package docker:build -DskipTests -Dbuild-deb -Djdk.version=$(INFRA_JAVA_VERSION)
 
 docker-push:
-	$(MAVEN_BINARY) clean package docker:build docker:push -DskipTests -Dbuild-deb
+	$(MAVEN_BINARY) clean package docker:build docker:push -DskipTests -Dbuild-deb -Djdk.version=$(INFRA_JAVA_VERSION)
diff --git a/ambari-infra-assembly/pom.xml b/ambari-infra-assembly/pom.xml
index ef9953c..ef5ddc4 100644
--- a/ambari-infra-assembly/pom.xml
+++ b/ambari-infra-assembly/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <artifactId>ambari-infra</artifactId>
     <groupId>org.apache.ambari</groupId>
-    <version>2.0.0.0-SNAPSHOT</version>
+    <version>${revision}</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>ambari-infra-assembly</artifactId>
diff --git a/ambari-infra-manager-it/pom.xml b/ambari-infra-manager-it/pom.xml
index db4ca9c..5edab8a 100644
--- a/ambari-infra-manager-it/pom.xml
+++ b/ambari-infra-manager-it/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <artifactId>ambari-infra</artifactId>
     <groupId>org.apache.ambari</groupId>
-    <version>2.0.0.0-SNAPSHOT</version>
+    <version>${revision}</version>
   </parent>
 
   <name>Ambari Infra Manager Integration Tests</name>
diff --git a/ambari-infra-manager/pom.xml b/ambari-infra-manager/pom.xml
index 80dddb1..d821cd5 100644
--- a/ambari-infra-manager/pom.xml
+++ b/ambari-infra-manager/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <artifactId>ambari-infra</artifactId>
     <groupId>org.apache.ambari</groupId>
-    <version>2.0.0.0-SNAPSHOT</version>
+    <version>${revision}</version>
   </parent>
   <name>Ambari Infra Manager</name>
   <url>http://maven.apache.org</url>
diff --git a/ambari-infra-solr-client/pom.xml b/ambari-infra-solr-client/pom.xml
index a4abc9a..1401eec 100644
--- a/ambari-infra-solr-client/pom.xml
+++ b/ambari-infra-solr-client/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <artifactId>ambari-infra</artifactId>
     <groupId>org.apache.ambari</groupId>
-    <version>2.0.0.0-SNAPSHOT</version>
+    <version>${revision}</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <url>http://maven.apache.org</url>
diff --git a/ambari-infra-solr-plugin/pom.xml b/ambari-infra-solr-plugin/pom.xml
index e9bec08..516b582 100644
--- a/ambari-infra-solr-plugin/pom.xml
+++ b/ambari-infra-solr-plugin/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <artifactId>ambari-infra</artifactId>
     <groupId>org.apache.ambari</groupId>
-    <version>2.0.0.0-SNAPSHOT</version>
+    <version>${revision}</version>
   </parent>
   <name>Ambari Infra Solr Plugin</name>
   <url>http://maven.apache.org</url>
diff --git a/pom.xml b/pom.xml
index 5791f39..2941b55 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,10 +20,11 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.apache.ambari</groupId>
   <artifactId>ambari-infra</artifactId>
-  <version>2.0.0.0-SNAPSHOT</version>
+  <version>${revision}</version>
   <packaging>pom</packaging>
 
   <properties>
+    <revision>3.0.0.0-SNAPSHOT</revision>
     <jdk.version>1.8</jdk.version>
     <solr.version>7.6.0</solr.version>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -173,6 +174,30 @@
     </pluginManagement>
     <plugins>
       <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>flatten-maven-plugin</artifactId>
+        <version>1.0.0</version>
+        <configuration>
+          <updatePomFile>true</updatePomFile>
+        </configuration>
+        <executions>
+          <execution>
+            <id>flatten</id>
+            <phase>process-resources</phase>
+            <goals>
+              <goal>flatten</goal>
+            </goals>
+          </execution>
+          <execution>
+            <id>flatten.clean</id>
+            <phase>clean</phase>
+            <goals>
+              <goal>clean</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
         <inherited>false</inherited>
         <artifactId>maven-assembly-plugin</artifactId>
         <executions>