為了讓jenkins執(zhí)行構(gòu)建時(shí)吹榴,更加的自動(dòng)化,這里的自動(dòng)化主要是針對(duì)于docker容器的翎迁。
【構(gòu)建】在jenkins構(gòu)建selenium腳本時(shí)符匾,能夠自動(dòng)判斷slenium grid(此部分,slenium grid采用docker的zalenium鏡像)害碾。筆者將這個(gè)判斷的功能寫(xiě)入成了一個(gè)shell腳本矢劲,將其命名為"ifzalenium.sh"。
#此腳本---用來(lái)判斷是否運(yùn)行了zalenium容器
#----------------------------------------------------------
#判斷是否存在elgalu/selenium 鏡像
docker images | grep elgalu/selenium &> /dev/null
#如果不存在慌随,使用docker-compose啟動(dòng)相關(guān)的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啟動(dòng)相關(guān)的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
jenkins.png