From bfa1bbeb4ecb4908325d8a2ca92a91db8b0b5aa6 Mon Sep 17 00:00:00 2001 From: Julien Barbot Date: Mon, 20 Aug 2018 18:42:48 +0200 Subject: Add pnda-mirror container creation Issue-ID: DCAEGEN2-367 Change-Id: I3cdc20717890692cc4f81d6527598267b8efd798 Signed-off-by: Julien Barbot --- mvn-phase-script.sh | 4 +- pnda-mirror-container/Dockerfile | 41 +++++++++++ pnda-mirror-container/README.md | 23 +++++++ pnda-mirror-container/pom.xml | 144 +++++++++++++++++++++++++++++++++++++++ pom.xml | 1 + 5 files changed, 211 insertions(+), 2 deletions(-) create mode 100644 pnda-mirror-container/Dockerfile create mode 100644 pnda-mirror-container/README.md create mode 100644 pnda-mirror-container/pom.xml diff --git a/mvn-phase-script.sh b/mvn-phase-script.sh index 19a561a..de4d82d 100755 --- a/mvn-phase-script.sh +++ b/mvn-phase-script.sh @@ -83,11 +83,11 @@ deploy) upload_files_of_extension sh build_and_push_docker ;; - k8s-bootstrap-container|tca-cdap-container|cm-container|redis-cluster-container|healthcheck-container) + k8s-bootstrap-container|tca-cdap-container|cm-container|redis-cluster-container|healthcheck-container|pnda-mirror-container) build_and_push_docker ;; scripts|cloud_init|heat) - # upload all sh file under the root of module + # upload all sh file under the root of module upload_files_of_extension_recursively sh $MVN_PROJECT_MODULEID upload_files_of_extension_recursively py $MVN_PROJECT_MODULEID upload_files_of_extension_recursively yaml $MVN_PROJECT_MODULEID diff --git a/pnda-mirror-container/Dockerfile b/pnda-mirror-container/Dockerfile new file mode 100644 index 0000000..595463d --- /dev/null +++ b/pnda-mirror-container/Dockerfile @@ -0,0 +1,41 @@ +# ============LICENSE_START======================================================= +# org.onap.dcae +# ================================================================================ +# Copyright (c) 2018 Cisco Systems. 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. +# ============LICENSE_END========================================================= + +FROM centos:7.5.1804 as build + +ARG PNDARELEASE=develop + +RUN yum clean all && rm -rf /var/cache/yum/* && yum install gettext git -y + +RUN git clone -b $PNDARELEASE https://github.com/pndaproject/pnda.git + +WORKDIR /pnda/mirror +RUN ./create_mirror.sh +RUN rm -rf /pnda/mirror/mirror-dist/mirror_cloudera + +WORKDIR /pnda/build +RUN ./install-build-tools.sh + +RUN yum install bzip2 make which -y +RUN source ./set-pnda-env.sh \ + && ./build-pnda.sh BRANCH $PNDARELEASE + +FROM nginx:alpine + +COPY --from=build /pnda/mirror/mirror-dist /usr/share/nginx/html/ +COPY --from=build /pnda/build/pnda-dist /usr/share/nginx/html/ diff --git a/pnda-mirror-container/README.md b/pnda-mirror-container/README.md new file mode 100644 index 0000000..6312439 --- /dev/null +++ b/pnda-mirror-container/README.md @@ -0,0 +1,23 @@ +# PNDA Mirror +## Purpose +The artifacts in this directory build a Docker image based public PNDA mirror +creation scripts. The container have all the needed offline resources to +deploy a PNDA platform. + +## Running the Container +The container is intended to be launched via a Helm chart as part +of the ONAP deployment process, guided by OOM. It can be run directly +into a native Docker environment, using: +``` +docker run --name pnda-mirror -d --restart unless-stopped \ + -v /sys/fs/cgroup:/sys/fs/cgroup:ro \ + -p :8080 \ + --tmpfs /run \ + --tmpfs /run/lock \ + --security-opt seccomp:unconfined + --cap-add SYS_ADMIN \ + +``` + +We also expect that in a Kubernetes environment the external port mapping would not be +needed. diff --git a/pnda-mirror-container/pom.xml b/pnda-mirror-container/pom.xml new file mode 100644 index 0000000..7ccabb5 --- /dev/null +++ b/pnda-mirror-container/pom.xml @@ -0,0 +1,144 @@ + + + + 4.0.0 + + org.onap.dcaegen2.deployments + deployments + 1.2.0-SNAPSHOT + + org.onap.dcaegen2.deployments + pnda-mirror-container + dcaegen2-deployments-pnda-mirror-container + 5.0.0 + http://maven.apache.org + + UTF-8 + true + . + py + Python + **/*.py + + + ${project.artifactId}-${project.version} + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + clean phase script + clean + + exec + + + + ${project.artifactId} + clean + + + + + generate-sources script + generate-sources + + exec + + + + ${project.artifactId} + generate-sources + + + + + compile script + compile + + exec + + + + ${project.artifactId} + compile + + + + + package script + package + + exec + + + + ${project.artifactId} + package + + + + + test script + test + + exec + + + + ${project.artifactId} + test + + + + + install script + install + + exec + + + + ${project.artifactId} + install + + + + + deploy script + deploy + + exec + + + + ${project.artifactId} + deploy + + + + + + + + diff --git a/pom.xml b/pom.xml index ae1f1b9..417800c 100644 --- a/pom.xml +++ b/pom.xml @@ -45,6 +45,7 @@ limitations under the License. k8s-bootstrap-container tca-cdap-container healthcheck-container + pnda-mirror-container -- cgit 1.2.3-korg