diff options
Diffstat (limited to 'packaging/docker/scripts/gen-dockerfiles.sh')
-rwxr-xr-x | packaging/docker/scripts/gen-dockerfiles.sh | 230 |
1 files changed, 0 insertions, 230 deletions
diff --git a/packaging/docker/scripts/gen-dockerfiles.sh b/packaging/docker/scripts/gen-dockerfiles.sh deleted file mode 100755 index 5cd926a98..000000000 --- a/packaging/docker/scripts/gen-dockerfiles.sh +++ /dev/null @@ -1,230 +0,0 @@ -#!/bin/bash -# -# Copyright 2016-2017 Huawei Technologies Co., Ltd. -# -# 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. -# -# $1 dirsrc -# $2 autorelease build - -set -e - -dirsrc=$1 - -if [ -z "$2" ]; then - BUILD="snapshots" -else - BUILD=$2 -fi - -VERSION="1.1.0-SNAPSHOT" - -# docker root dir -ROOT=`git rev-parse --show-toplevel`/test/csit/docker - -cd $ROOT -dir=$dirsrc/target -mkdir -p $dir - -if [ "$BUILD" = "snapshots" ]; then - $ROOT/scripts/gen-dockerfiles.py $dirsrc -else - $ROOT/scripts/gen-dockerfiles.py $dirsrc --build $BUILD -fi - -# Update build number in workaround files -for file in `find $dirsrc -name 80-workaround.txt`; do - sed -i "s|autorelease-[0-9]\{4\}|$BUILD|" $file -done - - -cp $ROOT/../../../distribution/LICENSE $dir -cp -f $dirsrc/*.txt $dir 2>/dev/null || : - -if [ -f $dir/20-mysql.txt ]; then - cp $ROOT/templates/init-mysql.sh $dir/init-mysql.sh -else - rm -f $dir/init-mysql.sh -fi - - -# empty 30-tomcat.txt would be created by gen-dockerfiles.py where required -if [ -f $dir/30-tomcat.txt ]; then - TOMCAT_VERSION=`$ROOT/scripts/get-tomcat-version.sh` - cat > $dir/30-tomcat.txt <<EOF -# 30-tomcat.txt - AUTOGENERATED, DO NOT MODIFY MANUALLY -# Set up tomcat -RUN wget -q http://mirrors.ocf.berkeley.edu/apache/tomcat/tomcat-8/v${TOMCAT_VERSION}/bin/apache-tomcat-${TOMCAT_VERSION}.tar.gz && tar --strip-components=1 -xf apache-tomcat-${TOMCAT_VERSION}.tar.gz && rm -f apache-tomcat-${TOMCAT_VERSION}.tar.gz && rm -rf webapps && mkdir -p webapps/ROOT -RUN echo 'export CATALINA_OPTS="\$CATALINA_OPTS -Xms64m -Xmx256m -XX:MaxPermSize=64m"' > /service/bin/setenv.sh -ENV CATALINA_HOME /service - -EOF -fi - - - -cat > $dir/docker-entrypoint.sh <<EOF -#!/bin/bash -# -# Copyright 2016-2017 Huawei Technologies Co., Ltd. -# -# 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. -# -# -# This file was auto-generated by gen-all-dockerfiles.sh; do not modify manually. -# -# $dir/docker-entrypoint.sh -# - -if [ -z "\$SERVICE_IP" ]; then - export SERVICE_IP=\`hostname -i\` -fi -echo -echo Environment Variables: -echo "SERVICE_IP=\$SERVICE_IP" - -EOF - -if [ $dirsrc != "common-services-msb" ]; then - cat >> $dir/docker-entrypoint.sh <<EOF -if [ -z "\$MSB_ADDR" ]; then - echo "Missing required variable MSB_ADDR: Microservices Service Bus address <ip>:<port>" - exit 1 -fi -echo "MSB_ADDR=\$MSB_ADDR" -echo - -# Wait for MSB initialization -echo Wait for MSB initialization -for i in {1..20}; do - curl -sS -m 1 \$MSB_ADDR > /dev/null && break - sleep \$i -done - -EOF -fi - -cat >> $dir/docker-entrypoint.sh <<EOF -echo - -# Configure service based on docker environment variables -./instance-config.sh - -EOF -if [ -f $dir/20-mysql.txt ]; then - cat >> $dir/docker-entrypoint.sh <<EOF -# Start mysql -su mysql -c /usr/bin/mysqld_safe & - -EOF -fi -if [ -f $dir/25-mongodb.txt ]; then - cat >> $dir/docker-entrypoint.sh <<EOF -# Start mongodb -mongod & - -EOF -fi -cat >> $dir/docker-entrypoint.sh <<EOF -# Perform one-time config -if [ ! -e init.log ]; then - # Perform workarounds due to defects in release binary - ./instance-workaround.sh - -EOF -if [ -f $dir/20-mysql.txt ]; then - cat >> $dir/docker-entrypoint.sh <<EOF - # Init mysql; set root password - ./init-mysql.sh - -EOF -fi -cat >> $dir/docker-entrypoint.sh <<EOF - # microservice-specific one-time initialization - ./instance-init.sh - - date > init.log -fi - -# Start the microservice -./instance-run.sh - -EOF - -cat > $dir/Dockerfile <<EOF -# -# This file was auto-generated by gen-all-dockerfiles.sh; do not modify manually. -# -# $dir/Dockerfile -# - -EOF - -cat $dir/*.txt >> $dir/Dockerfile - -for file in instance-config.sh instance-init.sh instance-run.sh instance-workaround.sh; do - if [ ! -f $dirsrc/$file ]; then - cp -n $ROOT/templates/instance-script.sh $dirsrc/$file - fi -done - -cp -f $dirsrc/instance-*.sh $dir -touch $dir/instance-config.sh -touch $dir/instance-init.sh -touch $dir/instance-run.sh -touch $dir/instance-workaround.sh -chmod +x $dir/*.sh - - -cat > $dir/pom.xml <<EOF -<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> - <groupId>org.openo.integration.docker</groupId> - <artifactId>${dirsrc}</artifactId> - <version>${VERSION}</version> - <packaging>docker</packaging> - <build> - <plugins> - <plugin> - <groupId>io.fabric8</groupId> - <artifactId>docker-maven-plugin</artifactId> - <version>0.19.0</version> - <extensions>true</extensions> - <configuration> - <images> - <image> - <name>openoint/${dirsrc}</name> - <build> - <dockerFileDir>.</dockerFileDir> - <tags> - <tag>latest</tag> - </tags> - </build> - </image> - </images> - </configuration> - </plugin> - </plugins> - </build> -</project> -EOF |