Fix hostname setting for Centos.
[csit.git] / bootstrap-verify-perf-ligato.sh
index 10470dc..79fdba6 100644 (file)
@@ -81,14 +81,15 @@ else
     echo "Unable to identify job type based on JOB_NAME variable: ${JOB_NAME}"
     exit 1
 fi
+dpkg -x vpp/build-root/vpp_${VPP_STABLE_VER}.deb /tmp/vpp
 
 # Compress all VPP debs and remove temporary directory
-tar -zcvf ${SCRIPT_DIR}/vpp.tar.gz vpp/*  && rm -R vpp
+tar -zcvf ${SCRIPT_DIR}/vpp.tar.gz vpp/* && rm -R vpp
 
 LIGATO_REPO_URL=$(cat ${SCRIPT_DIR}/LIGATO_REPO_URL)
 VPP_AGENT_STABLE_VER=$(cat ${SCRIPT_DIR}/VPP_AGENT_STABLE_VER)
 VPP_AGENT_STABLE_COMMIT="$( expr match `cat VPP_AGENT_STABLE_VER` '.*g\(.*\)' )"
-DOCKER_DEB="docker-ce_17.06.2~ce-0~ubuntu_amd64.deb"
+DOCKER_DEB="docker-ce_17.09.0~ce-0~ubuntu_amd64.deb"
 
 # Clone & checkout stable vnf-agent
 cd .. && git clone ${LIGATO_REPO_URL}/vpp-agent
@@ -114,25 +115,50 @@ if [ $? != 0 ]; then
 fi
 
 # Pull ligato/dev_vpp_agent docker image and re-tag as local
-sudo docker pull ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}
-sudo docker tag ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}\
-    dev_vpp_agent:latest
+if [[ ${VPP_AGENT_STABLE_VER} == g* ]] ;
+then
+    sudo docker pull ligato/dev-vpp-agent:${VPP_AGENT_STABLE_COMMIT}
+    sudo docker tag ligato/dev-vpp-agent:${VPP_AGENT_STABLE_COMMIT}\
+        dev_vpp_agent:latest
+else
+    sudo docker pull ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}
+    sudo docker tag ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}\
+        dev_vpp_agent:latest
+fi
 sudo docker images
+# Start dev_vpp_agent container as daemon
+sudo docker run --rm -itd --name agentcnt dev_vpp_agent bash
+# Copy latest vpp api into running container
+sudo docker cp /tmp/vpp/usr/share/vpp/api agentcnt:/usr/share/vpp
+# Recompile vpp-agent
+sudo docker exec -i agentcnt \
+    script -qec '. ~/.bashrc; cd /root/go/src/github.com/ligato/vpp-agent && make generate && make install'
+if [ $? != 0 ]; then
+    echo "Failed to build vpp-agent in Docker image."
+    exit 1
+fi
+# Extract vpp-agent
+rm -rf agent
+mkdir -p agent
+sudo docker cp agentcnt:/root/go/bin/vpp-agent agent/
+sudo docker cp agentcnt:/root/go/bin/vpp-agent-ctl agent/
+sudo docker cp agentcnt:/root/go/bin/agentctl agent/
+tar -zcvf ${SCRIPT_DIR}/../vpp-agent/docker/prod_vpp_agent/agent.tar.gz agent
+# Kill running container
+sudo docker rm -f agentcnt
 
 # Build prod_vpp_agent docker image
 cd ${SCRIPT_DIR}/../vpp-agent/docker/prod_vpp_agent/ &&\
     mv ${SCRIPT_DIR}/vpp.tar.gz . &&\
-    ./extract_agent_files.sh &&\
-    sudo docker build -t prod_vpp_agent --no-cache . &&\
-    ./shrink.sh
+    sudo docker build -t prod_vpp_agent --no-cache .
 # Export Docker image
-sudo docker save prod_vpp_agent_shrink | gzip > prod_vpp_agent_shrink.tar.gz
+sudo docker save prod_vpp_agent | gzip > prod_vpp_agent.tar.gz
 # If image build fails, complain clearly and exit
 if [ $? != 0 ]; then
     echo "Failed to build vpp-agent Docker image."
     exit 1
 fi
-DOCKER_IMAGE="$( readlink -f prod_vpp_agent_shrink.tar.gz | tr '\n' ' ' )"
+DOCKER_IMAGE="$( readlink -f prod_vpp_agent.tar.gz | tr '\n' ' ' )"
 
 cd ${SCRIPT_DIR}