2.jenkins构建过程中添加docker容器判断是否启动的功能

为了让jenkins执行构建时,更加的自动化,这里的自动化主要是针对于docker容器的。

【构建】在jenkins构建selenium脚本时,能够自动判断slenium grid(此部分,slenium grid采用docker的zalenium镜像)。笔者将这个判断的功能写入成了一个shell脚本,将其命名为”ifzalenium.sh”。

#此脚本---用来判断是否运行了zalenium容器

#----------------------------------------------------------

#判断是否存在elgalu/selenium 镜像
docker images | grep elgalu/selenium &> /dev/null
#如果不存在,使用docker-compose启动相关的zalnium容器
if [ $? -ne 0 ]
then
    echo "dosel/zalenium is not existed,we will docker pull it!!!"
  docker pull elgalu/selenium

else
    echo "dosel/zalenium is existed!!!"
fi

#---------------------------------------

#判断是否存在zalenium容器
docker ps | grep zalenium &> /dev/null
#如果不存在,使用docker-compose启动相关的zalnium容器
if [ $? -ne 0 ]
then
    echo "zalenium is not up,we will start up it!!!"
  
   docker-compose -f /var/lib/jenkins/workspace/oschina_selenium_docker/oschina_docker.yaml up -d

#sudo docker run -it --name zalenium -p 4444:4444 \
 #-v /var/run/docker.sock:/var/run/docker.sock \
 #-v zalenium-videos:/home/seluser/videos \
   #--privileged jamesz2011/selenium-chrome-firefox-v1 start &> /dev/null

else
    echo "zalenium is up!!!"
fi

jenkins_freestyle的shell

sudo chmod a+x ${WORKSPACE}/ifzalenium.sh
sudo dos2unix ifzalenium.sh
sudo bash -s -x < ${WORKSPACE}/ifzalenium.sh
mvn clean test

《2.jenkins构建过程中添加docker容器判断是否启动的功能》 jenkins.png

    原文作者:cooling2016
    原文地址: https://www.jianshu.com/p/530c3625e977
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞