aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xdocker_push_manifest.sh3
-rw-r--r--policy-base/alpine/README.md3
-rw-r--r--policy-jdk/alpine/README.md (renamed from policy-common/alpine/README.md)3
-rw-r--r--policy-jdk/alpine/pom.xml (renamed from policy-common/alpine/pom.xml)16
-rw-r--r--policy-jdk/alpine/src/main/docker/Dockerfile54
-rw-r--r--policy-jdk/debian-slim/README.md3
-rw-r--r--policy-jdk/debian-slim/pom.xml154
-rw-r--r--policy-jdk/debian-slim/src/main/docker/Dockerfile48
-rw-r--r--policy-jdk/pom.xml (renamed from policy-common/pom.xml)4
-rw-r--r--policy-jre/alpine/README.md3
-rw-r--r--policy-jre/alpine/pom.xml154
-rw-r--r--policy-jre/alpine/src/main/docker/Dockerfile (renamed from policy-common/alpine/src/main/docker/Dockerfile)53
-rw-r--r--policy-jre/debian-slim/README.md4
-rw-r--r--policy-jre/debian-slim/pom.xml (renamed from policy-base/alpine/pom.xml)14
-rw-r--r--policy-jre/debian-slim/src/main/docker/Dockerfile (renamed from policy-base/alpine/src/main/docker/Dockerfile)38
-rw-r--r--policy-jre/pom.xml (renamed from policy-base/pom.xml)4
-rw-r--r--pom.xml5
17 files changed, 498 insertions, 65 deletions
diff --git a/docker_push_manifest.sh b/docker_push_manifest.sh
index 48ad65e2..210529fa 100755
--- a/docker_push_manifest.sh
+++ b/docker_push_manifest.sh
@@ -1,6 +1,7 @@
#!/bin/bash -ex
# ============LICENSE_START=======================================================
# Copyright (C) 2019 ENEA AB. All rights reserved.
+# Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -21,7 +22,7 @@
# shellcheck source=/dev/null
source version.properties
-IMAGES="onap/policy-base-alpine onap/policy-common-alpine"
+IMAGES="onap/policy-jre-alpine onap/policy-jre-debian onap/policy-jdk-alpine onap/policy-jdk-debian"
ARCHES="amd64 arm64"
TIMESTAMP=$(date -u +"%Y%m%d%H%M%S")
MT_RELEASE='v0.9.0'
diff --git a/policy-base/alpine/README.md b/policy-base/alpine/README.md
deleted file mode 100644
index 71204051..00000000
--- a/policy-base/alpine/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-The base image for Policy project images.
-Contains basic set of packages used in every Policy app container.
-
diff --git a/policy-common/alpine/README.md b/policy-jdk/alpine/README.md
index 1ac70df5..0798eab7 100644
--- a/policy-common/alpine/README.md
+++ b/policy-jdk/alpine/README.md
@@ -1,2 +1,3 @@
The common image for Policy project images.
-Contains common set of packages used in most Policy apps containers.
+Contains common set of packages used in most Policy apps containers
+needing maven and a full JDK.
diff --git a/policy-common/alpine/pom.xml b/policy-jdk/alpine/pom.xml
index b36221c4..b5df9e81 100644
--- a/policy-common/alpine/pom.xml
+++ b/policy-jdk/alpine/pom.xml
@@ -1,6 +1,7 @@
<!--
============LICENSE_START=======================================================
Copyright (C) 2019 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -25,14 +26,14 @@
<parent>
<groupId>org.onap.policy.docker</groupId>
- <artifactId>policy-common</artifactId>
+ <artifactId>policy-jdk</artifactId>
<version>2.0.0-SNAPSHOT</version>
</parent>
<packaging>pom</packaging>
- <artifactId>policy-common-alpine</artifactId>
- <name>Policy alpine common docker image</name>
- <description>Policy alpine common docker image</description>
+ <artifactId>policy-jdk-alpine</artifactId>
+ <name>Policy alpine jdk docker image</name>
+ <description>Policy alpine jdk docker image</description>
<build>
<finalName>${project.artifactId}-${project.version}</finalName>
@@ -76,8 +77,7 @@
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.28.0</version>
-
+
<configuration>
<verbose>true</verbose>
<apiVersion>1.23</apiVersion>
@@ -85,7 +85,7 @@
<pushRegistry>${docker.push.registry}</pushRegistry>
<images>
<image>
- <name>onap/policy-common-alpine:latest-${project.docker.arch}</name>
+ <name>onap/policy-jdk-alpine:latest-${project.docker.arch}</name>
<build>
<cleanup>try</cleanup>
<dockerFile>Dockerfile</dockerFile>
@@ -129,7 +129,7 @@
<goal>push</goal>
</goals>
<configuration>
- <image>onap/policy-common-alpine</image>
+ <image>onap/policy-jdk-alpine</image>
</configuration>
</execution>
</executions>
diff --git a/policy-jdk/alpine/src/main/docker/Dockerfile b/policy-jdk/alpine/src/main/docker/Dockerfile
new file mode 100644
index 00000000..a258a314
--- /dev/null
+++ b/policy-jdk/alpine/src/main/docker/Dockerfile
@@ -0,0 +1,54 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Tieto. All rights reserved.
+# Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+# Docker file to build a base image for all policy components images
+#
+# $JAVA_HOME is set to /usr/lib/jvm/java-11-openjdk
+# more details at https://hub.docker.com/_/openjdk
+
+FROM alpine:latest
+
+LABEL maintainer="Policy Team"
+
+ENV POLICY_HOME=/opt/app/policy
+
+RUN apk update \
+ && apk add --no-cache \
+ bash \
+ busybox-extras \
+ coreutils \
+ curl \
+ findutils \
+ grep \
+ httpie \
+ jq \
+ maven \
+ nss \
+ openjdk11 \
+ openssh \
+ procps \
+ py-pip \
+ python \
+ unzip \
+ wget \
+ zip \
+ && addgroup -S policy \
+ && adduser -S --shell /bin/bash -G policy policy \
+ && mkdir -p ${POLICY_HOME}/etc/ssl \
+ && chown -R policy:policy ${POLICY_HOME}
diff --git a/policy-jdk/debian-slim/README.md b/policy-jdk/debian-slim/README.md
new file mode 100644
index 00000000..0798eab7
--- /dev/null
+++ b/policy-jdk/debian-slim/README.md
@@ -0,0 +1,3 @@
+The common image for Policy project images.
+Contains common set of packages used in most Policy apps containers
+needing maven and a full JDK.
diff --git a/policy-jdk/debian-slim/pom.xml b/policy-jdk/debian-slim/pom.xml
new file mode 100644
index 00000000..2b231498
--- /dev/null
+++ b/policy-jdk/debian-slim/pom.xml
@@ -0,0 +1,154 @@
+<!--
+ ============LICENSE_START=======================================================
+ Copyright (C) 2019 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ SPDX-License-Identifier: Apache-2.0
+ ============LICENSE_END=========================================================
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.policy.docker</groupId>
+ <artifactId>policy-jdk</artifactId>
+ <version>2.0.0-SNAPSHOT</version>
+ </parent>
+
+ <packaging>pom</packaging>
+ <artifactId>policy-jdk-debian</artifactId>
+ <name>Policy debian-slim jdk docker image</name>
+ <description>Policy debian-slim jdk docker image</description>
+
+ <build>
+ <finalName>${project.artifactId}-${project.version}</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.groovy.maven</groupId>
+ <artifactId>gmaven-plugin</artifactId>
+ <version>1.0</version>
+ <executions>
+ <execution>
+ <phase>pre-clean</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <source>
+ println 'Project version: ' + project.properties['dist.project.version'];
+ def versionArray;
+ if ( project.properties['dist.project.version'] != null ) {
+ versionArray = project.properties['dist.project.version'].split('-');
+ }
+
+ if ( project.properties['dist.project.version'].endsWith("-SNAPSHOT") ) {
+ project.properties['project.docker.latesttag.version']=versionArray[0] + "-SNAPSHOT-latest";
+ } else {
+ project.properties['project.docker.latesttag.version']=versionArray[0] + "-STAGING-latest";
+ }
+
+ println 'New tag for docker: ' + project.properties['project.docker.latesttag.version'];
+ if ( "aarch64".equals(System.properties['os.arch']) ) {
+ project.properties['project.docker.arch'] = "arm64";
+ } else {
+ project.properties['project.docker.arch'] = System.properties['os.arch'];
+ }
+ println 'Using arch for docker: ' + project.properties['project.docker.arch'];
+ </source>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+
+ <configuration>
+ <verbose>true</verbose>
+ <apiVersion>1.23</apiVersion>
+ <pullRegistry>${docker.pull.registry}</pullRegistry>
+ <pushRegistry>${docker.push.registry}</pushRegistry>
+ <images>
+ <image>
+ <name>onap/policy-jdk-debian:latest-${project.docker.arch}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFile>Dockerfile</dockerFile>
+ <tags>
+ <tag>${project.version}-${project.docker.arch}</tag>
+ <tag>${project.docker.latesttag.version}-${project.docker.arch}</tag>
+ </tags>
+ <args>
+ <BUILD_VERSION>${docker.build.version}</BUILD_VERSION>
+ </args>
+ </build>
+ </image>
+ </images>
+ </configuration>
+
+ <executions>
+ <execution>
+ <id>clean-images</id>
+ <phase>pre-clean</phase>
+ <goals>
+ <goal>remove</goal>
+ </goals>
+ <configuration>
+ <removeAll>true</removeAll>
+ </configuration>
+ </execution>
+
+ <execution>
+ <id>generate-images</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>build</goal>
+ </goals>
+ </execution>
+
+ <execution>
+ <id>push-images</id>
+ <phase>deploy</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <image>onap/policy-jdk-debian</image>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-install-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
+
diff --git a/policy-jdk/debian-slim/src/main/docker/Dockerfile b/policy-jdk/debian-slim/src/main/docker/Dockerfile
new file mode 100644
index 00000000..55b47d1b
--- /dev/null
+++ b/policy-jdk/debian-slim/src/main/docker/Dockerfile
@@ -0,0 +1,48 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+# Docker file to build a base image for all policy components images
+#
+
+FROM maven:3.6-jdk-11
+
+LABEL maintainer="Policy Team"
+
+ARG MAVEN_VERSION=3.6.3
+ARG SHA=c35a1803a6e70a126e80b2b3ae33eed961f83ed74d18fcd16909b2d44d7dada3203f1ffe726c17ef8dcca2dcaa9fca676987befeadc9b9f759967a8cb77181c0
+ARG BASE_URL="https://www.apache.org/dyn/mirrors/mirrors.cgi?cca2=us&preferred=http://apache.claz.org/&action=download&filename=maven/maven-3/${MAVEN_VERSION}/binaries"
+
+ENV POLICY_HOME=/opt/app/policy
+
+RUN apt-get -y update \
+ && apt-get -y install \
+ curl \
+ httpie \
+ jq \
+ less \
+ python \
+ python-pip \
+ ssh \
+ unzip \
+ wget \
+ zip \
+ && mkdir /usr/lib/jvm \
+ && ln -s /usr/local/openjdk-11 /usr/lib/jvm/java-11-openjdk \
+ && adduser --shell /bin/bash --disabled-password policy \
+ && mkdir -p ${POLICY_HOME}/etc/ssl \
+ && chown -R policy:policy ${POLICY_HOME}
diff --git a/policy-common/pom.xml b/policy-jdk/pom.xml
index d63bf4e5..f0959453 100644
--- a/policy-common/pom.xml
+++ b/policy-jdk/pom.xml
@@ -1,6 +1,7 @@
<!--
============LICENSE_START=======================================================
Copyright (C) 2019 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -26,7 +27,7 @@
<version>2.0.0-SNAPSHOT</version>
</parent>
- <artifactId>policy-common</artifactId>
+ <artifactId>policy-jdk</artifactId>
<packaging>pom</packaging>
<name>Policy Common Docker images</name>
@@ -47,6 +48,7 @@
<id>docker</id>
<modules>
<module>alpine</module>
+ <module>debian-slim</module>
</modules>
</profile>
</profiles>
diff --git a/policy-jre/alpine/README.md b/policy-jre/alpine/README.md
new file mode 100644
index 00000000..1701b2a4
--- /dev/null
+++ b/policy-jre/alpine/README.md
@@ -0,0 +1,3 @@
+The common image for Policy project images.
+Contains common set of packages used in most Policy apps containers
+needing a JRE, but not a full JDK.
diff --git a/policy-jre/alpine/pom.xml b/policy-jre/alpine/pom.xml
new file mode 100644
index 00000000..302364cd
--- /dev/null
+++ b/policy-jre/alpine/pom.xml
@@ -0,0 +1,154 @@
+<!--
+ ============LICENSE_START=======================================================
+ Copyright (C) 2019 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ SPDX-License-Identifier: Apache-2.0
+ ============LICENSE_END=========================================================
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.policy.docker</groupId>
+ <artifactId>policy-jre</artifactId>
+ <version>2.0.0-SNAPSHOT</version>
+ </parent>
+
+ <packaging>pom</packaging>
+ <artifactId>policy-jre-alpine</artifactId>
+ <name>Policy alpine jre docker image</name>
+ <description>Policy alpine jre docker image</description>
+
+ <build>
+ <finalName>${project.artifactId}-${project.version}</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.groovy.maven</groupId>
+ <artifactId>gmaven-plugin</artifactId>
+ <version>1.0</version>
+ <executions>
+ <execution>
+ <phase>pre-clean</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <source>
+ println 'Project version: ' + project.properties['dist.project.version'];
+ def versionArray;
+ if ( project.properties['dist.project.version'] != null ) {
+ versionArray = project.properties['dist.project.version'].split('-');
+ }
+
+ if ( project.properties['dist.project.version'].endsWith("-SNAPSHOT") ) {
+ project.properties['project.docker.latesttag.version']=versionArray[0] + "-SNAPSHOT-latest";
+ } else {
+ project.properties['project.docker.latesttag.version']=versionArray[0] + "-STAGING-latest";
+ }
+
+ println 'New tag for docker: ' + project.properties['project.docker.latesttag.version'];
+ if ( "aarch64".equals(System.properties['os.arch']) ) {
+ project.properties['project.docker.arch'] = "arm64";
+ } else {
+ project.properties['project.docker.arch'] = System.properties['os.arch'];
+ }
+ println 'Using arch for docker: ' + project.properties['project.docker.arch'];
+ </source>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+
+ <configuration>
+ <verbose>true</verbose>
+ <apiVersion>1.23</apiVersion>
+ <pullRegistry>${docker.pull.registry}</pullRegistry>
+ <pushRegistry>${docker.push.registry}</pushRegistry>
+ <images>
+ <image>
+ <name>onap/policy-jre-alpine:latest-${project.docker.arch}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFile>Dockerfile</dockerFile>
+ <tags>
+ <tag>${project.version}-${project.docker.arch}</tag>
+ <tag>${project.docker.latesttag.version}-${project.docker.arch}</tag>
+ </tags>
+ <args>
+ <BUILD_VERSION>${docker.build.version}</BUILD_VERSION>
+ </args>
+ </build>
+ </image>
+ </images>
+ </configuration>
+
+ <executions>
+ <execution>
+ <id>clean-images</id>
+ <phase>pre-clean</phase>
+ <goals>
+ <goal>remove</goal>
+ </goals>
+ <configuration>
+ <removeAll>true</removeAll>
+ </configuration>
+ </execution>
+
+ <execution>
+ <id>generate-images</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>build</goal>
+ </goals>
+ </execution>
+
+ <execution>
+ <id>push-images</id>
+ <phase>deploy</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <image>onap/policy-jre-alpine</image>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-install-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
+
diff --git a/policy-common/alpine/src/main/docker/Dockerfile b/policy-jre/alpine/src/main/docker/Dockerfile
index ba8d2d17..72704140 100644
--- a/policy-common/alpine/src/main/docker/Dockerfile
+++ b/policy-jre/alpine/src/main/docker/Dockerfile
@@ -1,5 +1,6 @@
# ============LICENSE_START=======================================================
# Copyright (C) 2019 Tieto. All rights reserved.
+# Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -16,33 +17,37 @@
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
+# Docker file to build a base image for all policy components images
#
-# Docker file to build an image that contains common packages for Policy components
-#
-FROM onap/policy-base-alpine:latest-${project.docker.arch}
+# $JAVA_HOME is set to /usr/lib/jvm/java-11-openjdk
+# more details at https://hub.docker.com/_/openjdk
-LABEL maintainer="Policy Team"
+FROM alpine:latest
-ARG BUILD_VERSION=${BUILD_VERSION}
+LABEL maintainer="Policy Team"
-ENV BUILD_VERSION ${BUILD_VERSION}
ENV POLICY_HOME=/opt/app/policy
-# Install common packages used in 6 out of 7 images
-RUN apk add --no-cache \
- busybox-extras \
- httpie \
- jq \
- maven \
- py-pip \
- python
-
-# Create policy user and group
-RUN addgroup -S policy && \
- adduser -S --shell /bin/bash -G policy policy
-
-# Create common directories and change owner
-RUN mkdir -p \
- ${POLICY_HOME}/etc/ssl \
- && chown -R policy:policy ${POLICY_HOME} ${POLICY_HOME}/etc/ssl
-
+RUN apk update \
+ && apk add --no-cache \
+ bash \
+ busybox-extras \
+ coreutils \
+ curl \
+ findutils \
+ grep \
+ httpie \
+ jq \
+ nss \
+ openjdk11-jre \
+ openssh \
+ procps \
+ py-pip \
+ python \
+ unzip \
+ wget \
+ zip \
+ && addgroup -S policy \
+ && adduser -S --shell /bin/bash -G policy policy \
+ && mkdir -p ${POLICY_HOME}/etc/ssl \
+ && chown -R policy:policy ${POLICY_HOME}
diff --git a/policy-jre/debian-slim/README.md b/policy-jre/debian-slim/README.md
new file mode 100644
index 00000000..40c870eb
--- /dev/null
+++ b/policy-jre/debian-slim/README.md
@@ -0,0 +1,4 @@
+The common image for Policy project images.
+Contains basic set of packages used in every Policy app container
+needing a JRE, but not a full JDK.
+
diff --git a/policy-base/alpine/pom.xml b/policy-jre/debian-slim/pom.xml
index d58a7772..b49710c0 100644
--- a/policy-base/alpine/pom.xml
+++ b/policy-jre/debian-slim/pom.xml
@@ -1,6 +1,7 @@
<!--
============LICENSE_START=======================================================
Copyright (C) 2019 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -25,14 +26,14 @@
<parent>
<groupId>org.onap.policy.docker</groupId>
- <artifactId>policy-base</artifactId>
+ <artifactId>policy-jre</artifactId>
<version>2.0.0-SNAPSHOT</version>
</parent>
<packaging>pom</packaging>
- <artifactId>policy-base-alpine</artifactId>
- <name>Policy alpine base docker image</name>
- <description>Policy alpine base docker image</description>
+ <artifactId>policy-jre-debian</artifactId>
+ <name>Policy debian-slim jre docker image</name>
+ <description>Policy debian-slim jre docker image</description>
<build>
<finalName>${project.artifactId}-${project.version}</finalName>
@@ -76,7 +77,6 @@
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.28.0</version>
<configuration>
<verbose>true</verbose>
<apiVersion>1.23</apiVersion>
@@ -85,7 +85,7 @@
<images>
<image>
- <name>onap/policy-base-alpine:latest-${project.docker.arch}</name>
+ <name>onap/policy-jre-debian:latest-${project.docker.arch}</name>
<build>
<cleanup>try</cleanup>
<dockerFile>Dockerfile</dockerFile>
@@ -126,7 +126,7 @@
<goal>push</goal>
</goals>
<configuration>
- <image>onap/policy-base-alpine</image>
+ <image>onap/policy-jre-debian</image>
</configuration>
</execution>
</executions>
diff --git a/policy-base/alpine/src/main/docker/Dockerfile b/policy-jre/debian-slim/src/main/docker/Dockerfile
index e131ae67..0d2a6d91 100644
--- a/policy-base/alpine/src/main/docker/Dockerfile
+++ b/policy-jre/debian-slim/src/main/docker/Dockerfile
@@ -1,5 +1,5 @@
# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Tieto. All rights reserved.
+# Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,23 +18,27 @@
# Docker file to build a base image for all policy components images
#
-# $JAVA_HOME is set to /usr/lib/jvm/java-1.8-openjdk
-# more details at https://hub.docker.com/_/openjdk
-FROM openjdk:8-alpine
+FROM openjdk:11.0.5-jre-slim
LABEL maintainer="Policy Team"
-# used in 7 out of 7 images
-RUN apk add --no-cache \
- bash \
- coreutils \
- curl \
- findutils \
- grep \
- nss \
- openssh \
- procps \
- unzip \
- wget \
- zip
+ENV POLICY_HOME=/opt/app/policy
+
+RUN apt-get -y update \
+ && apt-get -y install \
+ curl \
+ httpie \
+ jq \
+ less \
+ python \
+ python-pip \
+ ssh \
+ unzip \
+ wget \
+ zip \
+ && mkdir /usr/lib/jvm \
+ && ln -s /usr/local/openjdk-11 /usr/lib/jvm/java-11-openjdk \
+ && adduser --shell /bin/bash --disabled-password policy \
+ && mkdir -p ${POLICY_HOME}/etc/ssl \
+ && chown -R policy:policy ${POLICY_HOME}
diff --git a/policy-base/pom.xml b/policy-jre/pom.xml
index ac4eaca3..7e494937 100644
--- a/policy-base/pom.xml
+++ b/policy-jre/pom.xml
@@ -1,6 +1,7 @@
<!--
============LICENSE_START=======================================================
Copyright (C) 2019 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -26,7 +27,7 @@
<version>2.0.0-SNAPSHOT</version>
</parent>
- <artifactId>policy-base</artifactId>
+ <artifactId>policy-jre</artifactId>
<packaging>pom</packaging>
<name>Policy Base Docker images</name>
@@ -46,6 +47,7 @@
<id>docker</id>
<modules>
<module>alpine</module>
+ <module>debian-slim</module>
</modules>
</profile>
</profiles>
diff --git a/pom.xml b/pom.xml
index 60a7b343..90d37053 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,6 +1,7 @@
<!--
============LICENSE_START=======================================================
Copyright (C) 2018 Ericsson, Tieto. All rights reserved.
+ Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -44,8 +45,8 @@
<profile>
<id>docker</id>
<modules>
- <module>policy-base</module>
- <module>policy-common</module>
+ <module>policy-jre</module>
+ <module>policy-jdk</module>
</modules>
</profile>
</profiles>