aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Puzikov <dmitry.puzikov@tieto.com>2019-04-15 13:54:27 +0200
committerJames Forsyth <jf2512@att.com>2019-09-05 13:28:54 +0000
commit7d078e1683d55b5caef943591de43283414782f2 (patch)
tree15c7d5d821293914be30f51bfb560836f9efbdd3
parent6eaac9f415242d97379f7c3b72ed9c2496e51e50 (diff)
Fix project version parsing
Change-Id: I7a2c21325ecbddef806a031105b3e20eba53e405 Issue-ID: INT-760 Signed-off-by: Dmitry Puzikov <dmitry.puzikov@tieto.com> (cherry picked from commit 3f8f4a735fe4051f4ed234083028d78994a29051)
-rwxr-xr-xpom.xml51
-rwxr-xr-xsrc/main/docker/Dockerfile21
-rw-r--r--src/main/docker/aai.sh35
3 files changed, 73 insertions, 34 deletions
diff --git a/pom.xml b/pom.xml
index 880397c..950c6e9 100755
--- a/pom.xml
+++ b/pom.xml
@@ -58,7 +58,7 @@
<!-- End of Sonar Related Properties -->
<!-- Start of Docker Related Properties -->
- <docker.fabric.version>0.23.0</docker.fabric.version>
+ <docker.fabric.version>0.28.0</docker.fabric.version>
<!-- Default docker registry that maven fabric plugin will try to pull from -->
<docker.registry>docker.io</docker.registry>
<!-- Specifying the docker push registry where the image should be pushed -->
@@ -68,6 +68,10 @@
<aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/
</aai.build.directory>
<aai.docker.namespace>onap</aai.docker.namespace>
+ <!-- base image for aai-common -->
+ <aai.base.image>alpine</aai.base.image>
+ <!-- aai-common image version -->
+ <aai.base.image.version>1.6.0</aai.base.image.version>
<!-- End of Docker Related Properties -->
<license.goal.type>check</license.goal.type>
@@ -85,6 +89,7 @@
<!-- Start of Database Related Properties -->
<janusgraph.version>0.2.3</janusgraph.version>
+ <jnr.ffi.version>2.1.9</jnr.ffi.version>
<gremlin.driver.version>3.0.1-incubating</gremlin.driver.version>
<gremlin.version>3.2.2</gremlin.version>
<!-- End of Database Related Properties -->
@@ -288,6 +293,37 @@
<build>
<plugins>
<plugin>
+ <groupId>org.codehaus.groovy.maven</groupId>
+ <artifactId>gmaven-plugin</artifactId>
+ <version>1.0</version>
+ <executions>
+ <execution>
+ <phase>pre-clean</phase>
+ </execution>
+ <execution>
+ <id>parse-base</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <source>
+ def userAaiBaseImage = session.userProperties['aai.base.image'];
+ def userAaiCommonVersion = session.userProperties['aai.base.image.version'];
+ if (userAaiCommonVersion != null) {
+ project.properties['aai.base.image.version'] = userAaiCommonVersion;
+ }
+ if (userAaiBaseImage != null) {
+ project.properties['aai.base.image'] = userAaiBaseImage;
+ }
+ log.info 'Base image flavour: ' + project.properties['aai.base.image'];
+ log.info 'Base image version: ' + project.properties['aai.base.image.version'];
+ </source>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>${docker.fabric.version}</version>
@@ -423,6 +459,16 @@
</exclusion>
</exclusions>
</dependency>
+ <!--
+ indirect janusgraph-cassandra dependency
+ need to be newer than default one
+ in order to support multiple cpu archs
+ -->
+ <dependency>
+ <groupId>com.github.jnr</groupId>
+ <artifactId>jnr-ffi</artifactId>
+ <version>${jnr.ffi.version}</version>
+ </dependency>
<dependency>
<groupId>org.janusgraph</groupId>
<artifactId>janusgraph-cql</artifactId>
@@ -1031,7 +1077,7 @@
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
- <!--
+ <!--
Issue with the spring 1.5.15.RELEASE plugin is causing build errors
due to the fact that the plugin 1.5.15.RELEASE was built using maven 3.5 while
the current build version being used by our jenkins is 3.3.9
@@ -1236,4 +1282,3 @@
</repositories>
<!-- End of ONAP Specific Repositories -->
</project>
-
diff --git a/src/main/docker/Dockerfile b/src/main/docker/Dockerfile
index f1454e3..9129f09 100755
--- a/src/main/docker/Dockerfile
+++ b/src/main/docker/Dockerfile
@@ -1,15 +1,4 @@
-FROM aaionap/aai-common:1.3.0
-
-# Add the proper files into the docker image from your build
-WORKDIR /opt/app/aai-graphadmin
-
-# Expose the ports for outside linux to use
-# 8447 is the important one to be used
-EXPOSE 8449
-
-HEALTHCHECK --interval=40s --timeout=10s --retries=3 CMD nc -z -v localhost 8449 || exit 1
-
-ENTRYPOINT ["/bin/bash", "/opt/app/aai-graphadmin/docker-entrypoint.sh"]
+FROM @aai.docker.namespace@/aai-common-@aai.base.image@:@aai.base.image.version@
RUN mkdir -p /opt/aaihome/aaiadmin /opt/aai/logroot/AAI-GA
@@ -17,6 +6,14 @@ VOLUME /opt/aai/logroot/AAI-GA
VOLUME /opt/data
VOLUME /opt/tools
+HEALTHCHECK --interval=40s --timeout=10s --retries=3 CMD nc -z -v localhost 8449 || exit 1
+
+# Add the proper files into the docker image from your build
+WORKDIR /opt/app/aai-graphadmin
COPY /maven/aai-graphadmin/ .
ENV AAI_BUILD_VERSION @aai.docker.version@
+# Expose the ports for outside linux to use
+# 8449 is the important one to be used
+EXPOSE 8449
+ENTRYPOINT ["/bin/bash", "/opt/app/aai-graphadmin/docker-entrypoint.sh"] \ No newline at end of file
diff --git a/src/main/docker/aai.sh b/src/main/docker/aai.sh
index f68dc21..4d8b6ce 100644
--- a/src/main/docker/aai.sh
+++ b/src/main/docker/aai.sh
@@ -20,25 +20,22 @@
# ECOMP is a trademark and service mark of AT&T Intellectual Property.
#
-PROJECT_HOME=/opt/app/aai-graphadmin
-export PROJECT_HOME
-
-JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
-export JAVA_HOME
-
-AAIENV=dev
-export AAIENV
-
-PATH=/usr/lib/jvm/java-8-openjdk-amd64:$PATH
-
-PROJECT_OWNER=aaiadmin
-PROJECT_GROUP=aaiadmin
-PROJECT_UNIXHOMEROOT=/opt/aaihome
-export PROJECT_OWNER PROJECT_GROUP PROJECT_UNIXHOMEROOT
-umask 0022
-
+# set system related env
+# and make script compatible both with ubuntu and alpine base images
+# jre-alpine image has $JAVA_HOME set and added to $PATH
+# ubuntu image requires to set $JAVA_HOME and add java to $PATH manually
+if [ -z $JAVA_HOME ] && [ $(grep -i "ID=ubuntu" /etc/os-release | wc -w) -eq 1 ] ; then
+ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-`dpkg --print-architecture | awk -F- '{ print $NF }'`
+ export PATH=$PATH:${JAVA_HOME}/jre/bin:${JAVA_HOME}/bin
+fi
+
+# set app related env
+export PROJECT_HOME=/opt/app/aai-graphadmin
+export AAIENV=dev
+export PROJECT_OWNER=aaiadmin
+export PROJECT_GROUP=aaiadmin
+export PROJECT_UNIXHOMEROOT=/opt/aaihome
export idns_api_url=
export idnscred=
export idnstenant=
-
-
+umask 0022