diff options
Diffstat (limited to 'autorelease/scripts/generate-jjbs/gen-csit-jjbs.sh')
-rwxr-xr-x | autorelease/scripts/generate-jjbs/gen-csit-jjbs.sh | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/autorelease/scripts/generate-jjbs/gen-csit-jjbs.sh b/autorelease/scripts/generate-jjbs/gen-csit-jjbs.sh new file mode 100755 index 000000000..539e91115 --- /dev/null +++ b/autorelease/scripts/generate-jjbs/gen-csit-jjbs.sh @@ -0,0 +1,79 @@ +#!/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. +# + +# csit plans root dir +ROOT=`git rev-parse --show-toplevel`/autorelease + +BUILD_DIR=$ROOT/build +JJB_DIR=$BUILD_DIR/ci-management/jjb + +WORKSPACE=`git rev-parse --show-toplevel` +PLANS_DIR=`git rev-parse --show-toplevel`/test/csit/plans + +source $ROOT/scripts/generate-jjbs/workarounds.sh + + +TMPDIR=`mktemp -d --suffix="-docker-log"` +$ROOT/scripts/ls-microservice-repos.py | cut -d ' ' -f 1 > $TMPDIR/microservices.txt + +find $PLANS_DIR -mindepth 1 -maxdepth 1 -type d -printf "%f\n" | sort | while read repo; do + + OUTFILE=$JJB_DIR/$repo/${repo}-csit.yaml + cat > $OUTFILE <<EOF +--- +- project: + name: ${repo}-csit + jobs: + - 'integration-verify-{project}-csit-{functionality}' + - '{project}-csit-{functionality}' + project: '${repo}' + functionality: +EOF + find $PLANS_DIR/$repo -mindepth 1 -maxdepth 1 -type d -printf "%f\n" | sort | while read func; do + echo $repo / $func + cat >> $OUTFILE <<EOF + - '${func}': + trigger_jobs: +EOF + + docker kill `docker ps -a -q` + docker rm `docker ps -a -q` + + $WORKSPACE/test/csit/run-csit.sh plans/${repo}/${func} + mkdir -p $TMPDIR/${repo} + cp $WORKSPACE/archives/_docker-images.log $TMPDIR/${repo}/${func}.txt + + docker kill `docker ps -a -q` + docker rm `docker ps -a -q` + + + for image in `grep openoint $TMPDIR/${repo}/${func}.txt | grep -f $TMPDIR/microservices.txt | sort`; do + microservice=`echo $image | cut -d '/' -f 2` + cat >> $OUTFILE <<EOF + - 'integration-${microservice}-merge-docker' +EOF + done + + done + + cat >> $OUTFILE <<EOF + robot-options: '' + branch: 'master' +EOF +done + +echo $TMPDIR |