Sfoglia il codice sorgente

Moved tests from Dockerfile to Travis

Kadin Buckton 7 anni fa
parent
commit
a39a16a4a9
3 ha cambiato i file con 42 aggiunte e 17 eliminazioni
  1. 40 8
      .travis.yml
  2. 2 5
      Dockerfile
  3. 0 4
      scripts/deploy.sh

+ 40 - 8
.travis.yml

@@ -1,8 +1,40 @@
-sudo: required
-language: minimal
-services:
-- docker
-
-script:
-- sh scripts/deploy.sh
-
+jobs:
+  include:
+    - stage: build
+      language: minimal
+      services:
+        - docker
+      script:
+        - docker build -t $IMAGE_NAME:$TRAVIS_COMMIT .
+        - echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin
+        - docker push $IMAGE_NAME:$TRAVIS_COMMIT
+    - stage: deploy
+      if: (NOT type IN (pull_request)) AND (branch = master)
+      language: minimal
+      services:
+        - docker
+      script:
+        - docker pull $IMAGE_NAME:$TRAVIS_COMMIT
+        - docker tag $IMAGE_NAME:$TRAVIS_COMMIT $IMAGE_NAME:latest
+        - echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin
+        - docker push $IMAGE_NAME:latest
+    - stage: test
+      sudo: required
+      dist: bionic
+      language: python
+      addons:
+        chrome: stable
+      python:
+        - 3.6
+      services:
+        - docker
+        - xvfb
+      script:
+        - sudo apt update
+        - sudo apt install --force-yes chromium-browser chromium-chromedriver
+        - pip3 install --upgrade pip
+        - pip3 install -U seleniumbase pytest
+        - docker run -d -p 127.0.0.1:8080:8080/tcp $IMAGE_NAME:$TRAVIS_COMMIT
+        - sleep 10
+        - cd tests
+        - pytest --headless -n 8 --reruns 10 --reruns-delay 2

+ 2 - 5
Dockerfile

@@ -7,12 +7,9 @@ COPY . /src/nitter
 WORKDIR /src/nitter
 WORKDIR /src/nitter
 
 
 RUN apk update \
 RUN apk update \
-    && apk add python3 python3-dev bash libsass libsass-dev chromium chromium-chromedriver libffi libffi-dev openssl-dev \
-    && pip3 install --upgrade pip && pip3 install -U seleniumbase pytest \
+    && apk add libsass-dev libffi-dev openssl-dev \
     && nimble build -y -d:release -d:hostname=${HOSTNAME} \
     && nimble build -y -d:release -d:hostname=${HOSTNAME} \
-    && nimble scss \
-    && mkdir -p ./tmp \
-    && bash -c "./nitter & cd tests && pytest --headless -n 8 --reruns 5 --reruns-delay 1 && kill %1"
+    && nimble scss
 
 
 FROM alpine
 FROM alpine
 WORKDIR /src/
 WORKDIR /src/

+ 0 - 4
scripts/deploy.sh

@@ -1,4 +0,0 @@
-#!/bin/sh
-docker build -t $IMAGE_NAME . \
-&& echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin \
-&& docker push $IMAGE_NAME:latest