diff options
-rw-r--r-- | lenovo/README.md | 30 | ||||
-rw-r--r-- | lenovo/assembly.xml | 4 | ||||
-rw-r--r-- | lenovo/docker/Dockerfile | 102 | ||||
-rwxr-xr-x | lenovo/docker/build_image.sh | 93 | ||||
-rwxr-xr-x | lenovo/run.sh | 57 |
5 files changed, 146 insertions, 140 deletions
diff --git a/lenovo/README.md b/lenovo/README.md index 3751a585..d03e776e 100644 --- a/lenovo/README.md +++ b/lenovo/README.md @@ -1,15 +1,15 @@ -# Copyright (c) 2017-2018 Lenovo Systems, Inc. -# -# 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. - -# Micro service of MultiCloud plugin for thinkcloud. +# Copyright (c) 2019 Lenovo Systems, Inc.
+#
+# 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.
+
+# Micro service of MultiCloud plugin for Lenovo thinkcloud.
diff --git a/lenovo/assembly.xml b/lenovo/assembly.xml index 97ee7411..d7c98d96 100644 --- a/lenovo/assembly.xml +++ b/lenovo/assembly.xml @@ -16,7 +16,7 @@ <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd"> - <id>thinkcloud</id> + <id>lenovo</id> <formats> <format>zip</format> </formats> @@ -73,5 +73,5 @@ </includes> </fileSet> </fileSets> - <baseDirectory>thinkcloud</baseDirectory> + <baseDirectory>lenovo</baseDirectory> </assembly> diff --git a/lenovo/docker/Dockerfile b/lenovo/docker/Dockerfile index 2a619128..9e98f3f4 100644 --- a/lenovo/docker/Dockerfile +++ b/lenovo/docker/Dockerfile @@ -1,50 +1,52 @@ -# Copyright (c) 2018 Intel Corporation. -# -# 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. - -FROM python:2.7-slim - -ARG HTTP_PROXY=${HTTP_PROXY} -ARG HTTPS_PROXY=${HTTPS_PROXY} - -ENV http_proxy $HTTP_PROXY -ENV https_proxy $HTTPS_PROXY - -ENV MSB_ADDR "127.0.0.1" -ENV MSB_PORT "80" -ENV AAI_ADDR "aai.api.simpledemo.openecomp.org" -ENV AAI_PORT "8443" -ENV AAI_SERVICE_URL "" -ENV AAI_SCHEMA_VERSION "v13" -ENV AAI_USERNAME "AAI" -ENV AAI_PASSWORD "AAI" - -EXPOSE 9010 - -RUN groupadd -r onap && useradd -r -g onap onap - -RUN apt-get update && apt-get install -y memcached wget unzip gcc && \ - cd /opt/ && \ - wget -O multicloud-openstack-thinkcloud.zip "https://nexus.onap.org/service/local/artifact/maven/redirect?r=snapshots&g=org.onap.multicloud.openstack&a=multicloud-openstack-lenovo&e=zip&v=1.3.0-SNAPSHOT" && \ - unzip -q -o -B multicloud-openstack-thinkcloud.zip && \ - chmod +x /opt/thinkcloud/*.sh &&\ - rm -f multicloud-openstack-thinkcloud.zip &&\ - pip install -r /opt/thinkcloud/requirements.txt &&\ - apt-get --purge remove -y wget unzip gcc && \ - apt-get -y autoremove && \ - chown onap:onap /opt/thinkcloud -R - -USER onap - -WORKDIR /opt/thinkcloud -CMD /bin/sh -c /opt/thinkcloud/run.sh +# Copyright (c) 2018 Intel Corporation.
+#
+# 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.
+
+FROM python:2.7-slim
+
+ARG HTTP_PROXY=${HTTP_PROXY}
+ARG HTTPS_PROXY=${HTTPS_PROXY}
+
+ENV http_proxy $HTTP_PROXY
+ENV https_proxy $HTTPS_PROXY
+
+ENV MSB_ADDR "127.0.0.1"
+ENV MSB_PORT "80"
+ENV AAI_ADDR "aai.api.simpledemo.openecomp.org"
+ENV AAI_PORT "8443"
+ENV AAI_SERVICE_URL ""
+ENV AAI_SCHEMA_VERSION "v13"
+ENV AAI_USERNAME "AAI"
+ENV AAI_PASSWORD "AAI"
+
+EXPOSE 9010
+
+RUN groupadd -r onap && useradd -r -g onap onap
+# COPY ./ /opt/lenovo/
+
+RUN apt-get update && \
+ apt-get install -y memcached wget unzip gcc && \
+ cd /opt/ && \
+ wget -O multicloud-openstack-lenovo.zip "https://nexus.onap.org/service/local/artifact/maven/redirect?r=snapshots&g=org.onap.multicloud.openstack&a=multicloud-openstack-lenovo&e=zip&v=1.3.0-SNAPSHOT" && \
+ unzip -q -o -B multicloud-openstack-lenovo.zip && \
+ chmod +x /opt/lenovo/*.sh &&\
+ rm -f multicloud-openstack-lenovo.zip &&\
+ pip install -r /opt/lenovo/requirements.txt &&\
+ apt-get --purge remove -y wget unzip gcc && \
+ apt-get -y autoremove && \
+ chown onap:onap /opt/lenovo -R
+
+USER onap
+
+WORKDIR /opt/lenovo
+CMD /bin/sh -c /opt/lenovo/run.sh
diff --git a/lenovo/docker/build_image.sh b/lenovo/docker/build_image.sh index eca84326..7e440d93 100755 --- a/lenovo/docker/build_image.sh +++ b/lenovo/docker/build_image.sh @@ -1,45 +1,48 @@ -#!/bin/bash -# Copyright (c) 2018 Intel Corporation. -# -# 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. - -DIRNAME=`dirname $0` -DOCKER_BUILD_DIR=`cd $DIRNAME/; pwd` -echo "DOCKER_BUILD_DIR=${DOCKER_BUILD_DIR}" -cd ${DOCKER_BUILD_DIR} - -BUILD_ARGS="--no-cache" -VERSION="1.3.0-SNAPSHOT" -STAGING="1.3.0-STAGING" -OS_VERSION="thinkcloud" -IMAGE_NAME="nexus3.onap.org:10003/onap/multicloud/openstack-${OS_VERSION}" - -if [ $HTTP_PROXY ]; then - BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}" -fi -if [ $HTTPS_PROXY ]; then - BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}" -fi - -function build_image { - docker build ${BUILD_ARGS} -t ${IMAGE_NAME}:${VERSION} -t ${IMAGE_NAME}:latest -t ${IMAGE_NAME}:${STAGING} . -} - -function push_image { - docker push ${IMAGE_NAME}:${VERSION} - docker push ${IMAGE_NAME}:latest - docker push ${IMAGE_NAME}:${STAGING} -} - -build_image -push_image +#!/bin/bash
+# Copyright (c) 2018 Intel Corporation.
+#
+# 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.
+
+DIRNAME=`dirname $0`
+DOCKER_BUILD_DIR=`cd $DIRNAME/; pwd`
+echo "DOCKER_BUILD_DIR=${DOCKER_BUILD_DIR}"
+cd ${DOCKER_BUILD_DIR}
+
+BUILD_ARGS="--no-cache"
+ORG="onap"
+VERSION="1.3.0-SNAPSHOT"
+STAGING="1.3.0-STAGING"
+PROJECT="multicloud"
+IMAGE="openstack-lenovo"
+DOCKER_REPOSITORY="nexus3.onap.org:10003"
+IMAGE_NAME="${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/${IMAGE}"
+
+if [ $HTTP_PROXY ]; then
+ BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
+fi
+if [ $HTTPS_PROXY ]; then
+ BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
+fi
+
+function build_image {
+ docker build ${BUILD_ARGS} -t ${IMAGE_NAME}:${VERSION} -t ${IMAGE_NAME}:latest -t ${IMAGE_NAME}:${STAGING} .
+}
+
+function push_image {
+ docker push ${IMAGE_NAME}:${VERSION}
+ docker push ${IMAGE_NAME}:latest
+ docker push ${IMAGE_NAME}:${STAGING}
+}
+
+build_image
+push_image
diff --git a/lenovo/run.sh b/lenovo/run.sh index b3d98ef3..2420d2d4 100755 --- a/lenovo/run.sh +++ b/lenovo/run.sh @@ -1,29 +1,30 @@ -#!/bin/bash -# Copyright (c) 2017-2018 Lenovo Systems, Inc. -# -# 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. - -memcached -d -m 2048 -u root -c 1024 -p 11211 -P /tmp/memcached1.pid -export PYTHONPATH=lib/share - -uwsgi --http :9010 --module thinkcloud.wsgi --master --processes 4 - -logDir="/var/log/onap/multicloud/openstack/lenovo" -if [ ! -x $logDir ]; then - mkdir -p $logDir -fi -while [ ! -f $logDir/thinkcloud.log ]; do - sleep 1 -done - +#!/bin/bash
+# Copyright (c) 2017-2018 Lenovo Systems, Inc.
+#
+# 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.
+
+memcached -d -m 2048 -u root -c 1024 -p 11211 -P /tmp/memcached1.pid
+export PYTHONPATH=lib/share
+
+#nohup python manage.py runserver 0.0.0.0:9010 2>&1 &
+nohup uwsgi --http :9010 --module thinkcloud.wsgi --master --processes 4 &
+
+logDir="/var/log/onap/multicloud/openstack/lenovo"
+if [ ! -x $logDir ]; then
+ mkdir -p $logDir
+fi
+while [ ! -f $logDir/thinkcloud.log ]; do
+ sleep 1
+done
+
tail -F $logDir/thinkcloud.log
\ No newline at end of file |