node { stage('Git fetch') { git poll: false, changelog: false, url: 'https://XXX/gitlab/test.git', credentialsId: 'DOL', branch: 'master' } def appium_ready = false withDockerServer([uri: "tcp://localhost:2376"]) { parallel Cucumber: { stage ('Starting Cucumber') { try { docker.image('docker_ruby').inside('--user root:root --net=host') { echo 'Waiting for Appium' waitUntil { sleep 2 return (appium_ready == true) } try {
// #### Show start HERE #### sh 'cucumber -t @add_unread -t ~@wip'
} catch ( error ) { cucumber 'report.json' } cucumber 'report.json' } } catch ( error ) { sh 'curl http://localhost:4444/lifecycle-manager/LifecycleServlet?action=shutdown || echo "Selenium server unreachable";exit 1' //shutdown selenium & fail } sh 'curl http://localhost:4444/lifecycle-manager/LifecycleServlet?action=shutdown || echo "Selenium server unreachable"' } }, Appium: { stage ('Starting Appium') { docker.image('docker_appium').inside('--user root:root --net=host') { sh 'adb devices; cd scripts && ./start_environment_new.sh 2>&1 >/dev/null' appium_ready = true sh 'PID_SEL=`cat /tmp/selenium.pid`; while( ps -p $PID_SEL > /dev/null ); do sleep 5;done' // wait doesn't work } } } }}
[Pipeline] }
[Pipeline] // stage
[Pipeline] withDockerServer
[Pipeline] {
[Pipeline] parallel
[Pipeline] [Cucumber] { (Branch: Cucumber)
[Pipeline] [Appium] { (Branch: Appium)
[Pipeline] [Cucumber] stage
[Pipeline] [Cucumber] { (Starting Cucumber)
[Pipeline] [Appium] stage
[Pipeline] [Appium] { (Starting Appium)
[Pipeline] [Cucumber] sh
[Cucumber] [voicemail_ta_android] Running shell script
[Pipeline] [Appium] sh
[Cucumber] + docker inspect -f . docker_ruby
[Appium] [voicemail_ta_android] Running shell script
[Appium] + docker inspect -f . docker_appium
[Cucumber] .
[Appium] .
[Pipeline] [Cucumber] withDockerContainer
[Cucumber] Jenkins seems to be running inside container 9350a6f58ccb1d0000b7fcac229dee8079a191aed4452b1403e3ee4b43f92c63
[Cucumber] $ docker run -t -d -u 1000:1000 --user root:root --net=host -w /var/jenkins_home/workspace/voicemail_ta_android --volumes-from 9350a6f58ccb1d0000b7fcac229dee8079a191aed4452b1403e3ee4b43f92c63 -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** --entrypoint cat docker_ruby
[Pipeline] [Cucumber] {
[Pipeline] [Appium] withDockerContainer
[Appium] Jenkins seems to be running inside container 9350a6f58ccb1d0000b7fcac229dee8079a191aed4452b1403e3ee4b43f92c63
[Appium] $ docker run -t -d -u 1000:1000 --user root:root --net=host -w /var/jenkins_home/workspace/voicemail_ta_android --volumes-from 9350a6f58ccb1d0000b7fcac229dee8079a191aed4452b1403e3ee4b43f92c63 -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** --entrypoint cat docker_appium
[Pipeline] [Appium] {
[Pipeline] [Cucumber] echo
[Cucumber] Waiting for Appium
[Pipeline] [Cucumber] waitUntil
[Pipeline] [Cucumber] {
[Pipeline] [Appium] sh
[Appium] [voicemail_ta_android] Running shell script
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.25 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.3 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.36 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.43 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.51 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.62 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Cucumber] }
[Cucumber] Will try again after 0.74 sec
[Pipeline] [Cucumber] {
[Pipeline] [Cucumber] sleep
[Cucumber] Sleeping for 2 sec
[Pipeline] [Appium] }
[Appium] $ docker stop --time=1 fd73d4d5c85464418c551dc5232d6ba29ab3f6c12b25617bc94ade803f3da8c6
[Appium] $ docker rm -f fd73d4d5c85464418c551dc5232d6ba29ab3f6c12b25617bc94ade803f3da8c6