aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordanielhanrahan <daniel.hanrahan@est.tech>2022-10-18 13:20:13 +0100
committerDaniel Hanrahan <daniel.hanrahan@est.tech>2022-10-18 20:32:24 +0000
commit5bd5f408e469203d92a9d65e612a46638f205095 (patch)
tree3a8fa33c31868113196bceaef3d946254f5ba0b0
parent8d3f1294010a78b5a25a115dddb2c64cf018379c (diff)
OpenSuse docker file for db-migrator
Create OpenSuse docker file Add build profile for OpenSuse docker image Issue-ID: POLICY-4309 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I80ec31c62096f9aefa2b729a4e024f63d04e62ad
-rw-r--r--policy-db-migrator/src/main/docker/suse.Dockerfile55
-rw-r--r--pom.xml11
2 files changed, 66 insertions, 0 deletions
diff --git a/policy-db-migrator/src/main/docker/suse.Dockerfile b/policy-db-migrator/src/main/docker/suse.Dockerfile
new file mode 100644
index 00000000..bce31340
--- /dev/null
+++ b/policy-db-migrator/src/main/docker/suse.Dockerfile
@@ -0,0 +1,55 @@
+#-------------------------------------------------------------------------------
+# Dockerfile
+# ============LICENSE_START=======================================================
+# Copyright (C) 2022 Nordix Foundation.
+# ================================================================================
+# 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=========================================================
+#-------------------------------------------------------------------------------
+FROM opensuse/leap:15.4
+
+LABEL maintainer="Policy Team"
+LABEL org.opencontainers.image.title="Policy db-migrator"
+LABEL org.opencontainers.image.description="Policy db-migrator image based on OpenSuse"
+LABEL org.opencontainers.image.url="https://github.com/onap/policy-docker"
+LABEL org.opencontainers.image.vendor="ONAP Policy Team"
+LABEL org.opencontainers.image.licenses="Apache-2.0"
+LABEL org.opencontainers.image.created="${git.build.time}"
+LABEL org.opencontainers.image.version="${git.build.version}"
+LABEL org.opencontainers.image.revision="${git.commit.id.abbrev}"
+
+ENV JAVA_HOME /usr/lib64/jvm/java-11-openjdk-11
+ENV POLICY_ETC /opt/app/policy/etc
+ENV POLICY_PROFILE /opt/app/policy/etc/profile.d
+ENV POLICY_BIN /opt/app/policy/bin
+
+RUN zypper -n -q install --no-recommends cpio findutils mariadb-client netcat-openbsd postgresql util-linux && \
+ zypper -n -q update && \
+ zypper -n -q clean --all && \
+ groupadd --system policy && \
+ useradd --system --shell /bin/sh -G policy policy && \
+ mkdir -p $POLICY_PROFILE $POLICY_BIN && \
+ chown -R policy:policy $POLICY_ETC $POLICY_BIN
+
+COPY --chown=policy:policy ./env.sh $POLICY_PROFILE/
+COPY --chown=policy:policy ./db-migrator $POLICY_BIN/
+COPY --chown=policy:policy ./db-migrator-pg $POLICY_BIN/
+COPY --chown=policy:policy ./prepare_upgrade.sh $POLICY_BIN/
+COPY --chown=policy:policy ./prepare_downgrade.sh $POLICY_BIN/
+COPY --chown=policy:policy ./config/policyadmin/sql /home/policy/sql
+COPY --chown=policy:policy ./config/policyadmin/postgres /home/policy/postgres
+
+WORKDIR $POLICY_BIN
+USER policy:policy
diff --git a/pom.xml b/pom.xml
index a98254e4..80c922ec 100644
--- a/pom.xml
+++ b/pom.xml
@@ -75,5 +75,16 @@
<module>policy-db-migrator</module>
</modules>
</profile>
+ <profile>
+ <id>dockersuse</id>
+ <modules>
+ <module>policy-jre</module>
+ <module>policy-jdk</module>
+ <module>policy-db-migrator</module>
+ </modules>
+ <properties>
+ <docker.dbm.dockerFile>suse.Dockerfile</docker.dbm.dockerFile>
+ </properties>
+ </profile>
</profiles>
</project>