summaryrefslogtreecommitdiffstats
path: root/jjb/dovetail/dovetail-run.sh
diff options
context:
space:
mode:
authorMatthewLi <matthew.lijun@huawei.com>2016-09-21 06:36:38 -0400
committerMatthewLi <matthew.lijun@huawei.com>2016-09-22 21:33:47 -0400
commitb26c94f19a8fe7807837ee2cf0c4779db206e082 (patch)
tree27a53b0d199fce4fb720d30e0576cd3855affcf4 /jjb/dovetail/dovetail-run.sh
parentef6abdcdb6f03c944bd49fc71d501ea3addf7546 (diff)
dovetail: ci job added
JIRA: DOVETAIL-14 1)ci jobs are added 2)not daily/weekly run by now, only manually triggerd, the manually trigger progress should be controlled not to disturb the normal ci running progres 3)pods/platforms used are just examples to let the tool run, more platforms will be supported. Change-Id: I865e011ceb5b9957e7b58065cd231b26caf7ab87 Signed-off-by: MatthewLi <matthew.lijun@huawei.com>
Diffstat (limited to 'jjb/dovetail/dovetail-run.sh')
-rwxr-xr-xjjb/dovetail/dovetail-run.sh46
1 files changed, 46 insertions, 0 deletions
diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh
new file mode 100755
index 000000000..c0176506f
--- /dev/null
+++ b/jjb/dovetail/dovetail-run.sh
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+#the noun INSTALLER is used in community, here is just the example to run.
+#multi-platforms are supported.
+
+set -e
+[[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
+
+# labconfig is used only for joid
+labconfig=""
+sshkey=""
+if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
+ instack_mac=$(sudo virsh domiflist undercloud | grep default | \
+ grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
+ INSTALLER_IP=$(/usr/sbin/arp -e | grep ${instack_mac} | awk {'print $1'})
+ sshkey="-v /root/.ssh/id_rsa:/root/.ssh/id_rsa"
+ if [[ -n $(sudo iptables -L FORWARD |grep "REJECT"|grep "reject-with icmp-port-unreachable") ]]; then
+ #note: this happens only in opnfv-lf-pod1
+ sudo iptables -D FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
+ sudo iptables -D FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
+ fi
+elif [[ ${INSTALLER_TYPE} == 'joid' ]]; then
+ # If production lab then creds may be retrieved dynamically
+ # creds are on the jumphost, always in the same folder
+ labconfig="-v $LAB_CONFIG/admin-openrc:/home/opnfv/openrc"
+ # If dev lab, credentials may not be the default ones, just provide a path to put them into docker
+ # replace the default one by the customized one provided by jenkins config
+fi
+
+# Set iptables rule to allow forwarding return traffic for container
+if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FORWARD | awk 'NR==3' | grep RETURN 2> ${redirect}; then
+ sudo iptables -I FORWARD -j RETURN
+fi
+
+opts="--privileged=true --rm"
+envs="-v /var/run/docker.sock:/var/run/docker.sock"
+
+# Pull the image with correct tag
+echo "Dovetail: Pulling image opnfv/dovetail:${DOCKER_TAG}"
+docker pull opnfv/dovetail:$DOCKER_TAG >$redirect
+
+# Run docker
+sudo docker run ${opts} ${envs} ${labconfig} ${sshkey} opnfv/dovetail:${DOCKER_TAG} \
+"/home/opnfv/dovetail/scripts/run.py"
+
+echo "Dovetail: done!"