.travis.yml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. jobs:
  2. include:
  3. - stage: build
  4. if: (NOT type IN (pull_request)) AND (branch = master)
  5. language: minimal
  6. services:
  7. - docker
  8. script:
  9. - docker build -t $IMAGE_NAME:$TRAVIS_COMMIT .
  10. - echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin
  11. - docker push $IMAGE_NAME:$TRAVIS_COMMIT
  12. - stage: deploy
  13. if: (NOT type IN (pull_request)) AND (branch = master)
  14. language: minimal
  15. services:
  16. - docker
  17. script:
  18. - docker pull $IMAGE_NAME:$TRAVIS_COMMIT
  19. - docker tag $IMAGE_NAME:$TRAVIS_COMMIT $IMAGE_NAME:latest
  20. - echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin
  21. - docker push $IMAGE_NAME:latest
  22. - stage: test
  23. if: (NOT type IN (pull_request)) AND (branch = master)
  24. sudo: required
  25. dist: bionic
  26. language: python
  27. python:
  28. - 3.6
  29. services:
  30. - docker
  31. - xvfb
  32. script:
  33. - sudo apt update
  34. - sudo apt install --force-yes chromium-chromedriver
  35. - wget https://www.dropbox.com/s/ckuoaubd1crrj2k/Linux_x64_737173_chrome-linux.zip -O chrome.zip
  36. - unzip chrome.zip
  37. - cd chrome-linux
  38. - sudo rm /usr/bin/google-chrome
  39. - sudo ln -s chrome /usr/bin/google-chrome
  40. - cd ..
  41. - pip3 install --upgrade pip
  42. - pip3 install -U seleniumbase pytest
  43. - docker run -d -p 127.0.0.1:8080:8080/tcp $IMAGE_NAME:$TRAVIS_COMMIT
  44. - sleep 10
  45. - cd tests
  46. - pytest --headless -n 8 --reruns 10 --reruns-delay 2
  47. - stage: pr
  48. if: type IN (pull_request)
  49. sudo: required
  50. dist: bionic
  51. language: python
  52. python:
  53. - 3.6
  54. services:
  55. - docker
  56. - xvfb
  57. script:
  58. - sudo apt update
  59. - sudo apt install --force-yes chromium-chromedriver
  60. - wget https://www.dropbox.com/s/ckuoaubd1crrj2k/Linux_x64_737173_chrome-linux.zip -O chrome.zip
  61. - unzip chrome.zip
  62. - cd chrome-linux
  63. - sudo rm /usr/bin/google-chrome
  64. - sudo ln -s chrome /usr/bin/google-chrome
  65. - cd ..
  66. - pip3 install --upgrade pip
  67. - pip3 install -U seleniumbase pytest
  68. - docker build -t $IMAGE_NAME:$TRAVIS_COMMIT .
  69. - docker run -d -p 127.0.0.1:8080:8080/tcp $IMAGE_NAME:$TRAVIS_COMMIT
  70. - sleep 10
  71. - cd tests
  72. - pytest --headless -n 8 --reruns 10 --reruns-delay 2