Add python3.6-dev
[functest-xtesting.git] / .travis.yml
index af67f47..bc724ac 100644 (file)
+---
 sudo: required
-language: bash
 services: docker
 language: generic
 
 before_script:
   - sudo apt-get -y install qemu-user-static
+  - sudo add-apt-repository -y ppa:jonathonf/python-3.6
+  - sudo apt-get update
+  - sudo apt-get install python3.6 python3.6-dev
+  - sudo pip install tox
   - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}"
   - (cd .. && git clone https://github.com/estesp/manifest-tool)
+  - (cd ../manifest-tool && git checkout v0.9.0)
   - (cd ../manifest-tool && sudo -E make && sudo -E make install)
 
 jobs:
   include:
-    - stage: build functest-core images
-      script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs=""
-        - aarch64_dirs="docker/core"
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/core"
-        - aarch64_dirs=""
-    - stage: publish functest-core manifests
+    - stage: run unit tests
       script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64,linux/arm64 \
-          --template ${DOCKER_USERNAME}/functest-core:x86_64-latest \
-          --template ${DOCKER_USERNAME}/functest-core:aarch64-latest \
-          --target ${DOCKER_USERNAME}/functest-core:latest
-    - stage: build all functest images
+        tox -e docs,pep8,pylint,yamllint,ansiblelint,bashate,py27,py36,cover
+    - stage: build xtesting images
       script: sudo -E bash build.sh
       env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs=""
-        - aarch64_dirs="docker/healthcheck"
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs=""
-        - aarch64_dirs="docker/smoke"
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs=""
-        - aarch64_dirs="docker/features"
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs=""
-        - aarch64_dirs="docker/components"
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/healthcheck"
-        - aarch64_dirs=""
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/smoke"
-        - aarch64_dirs=""
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/features"
-        - aarch64_dirs=""
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/components"
-        - aarch64_dirs=""
-    - script: sudo -E bash build.sh
-      env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/vnf"
-        - aarch64_dirs=""
+        - REPO="${DOCKER_USERNAME}"
+        - arch="amd64"
     - script: sudo -E bash build.sh
       env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/restapi"
-        - aarch64_dirs=""
+        - REPO="${DOCKER_USERNAME}"
+        - arch="arm"
     - script: sudo -E bash build.sh
       env:
-        - repo="${DOCKER_USERNAME}"
-        - x86_64_dirs="docker/parser"
-        - aarch64_dirs=""
-    - stage: publish all manifests
+        - REPO="${DOCKER_USERNAME}"
+        - arch="arm64"
+    - stage: publish xtesting manifests
       script: >
         sudo manifest-tool push from-args \
-          --platforms linux/amd64,linux/arm64 \
-          --template ${DOCKER_USERNAME}/functest-healthcheck:x86_64-latest \
-          --template ${DOCKER_USERNAME}/functest-healthcheck:aarch64-latest \
-          --target ${DOCKER_USERNAME}/functest-healthcheck:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64,linux/arm64 \
-          --template ${DOCKER_USERNAME}/functest-healthcheck:x86_64-latest \
-          --template ${DOCKER_USERNAME}/functest-healthcheck:aarch64-latest \
-          --target ${DOCKER_USERNAME}/functest-healthcheck:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64,linux/arm64 \
-          --template ${DOCKER_USERNAME}/functest-smoke:x86_64-latest \
-          --template ${DOCKER_USERNAME}/functest-smoke:aarch64-latest \
-          --target ${DOCKER_USERNAME}/functest-smoke:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64,linux/arm64 \
-          --template ${DOCKER_USERNAME}/functest-features:x86_64-latest \
-          --template ${DOCKER_USERNAME}/functest-features:aarch64-latest \
-          --target ${DOCKER_USERNAME}/functest-features:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64,linux/arm64 \
-          --template ${DOCKER_USERNAME}/functest-components:x86_64-latest \
-          --template ${DOCKER_USERNAME}/functest-components:aarch64-latest \
-          --target ${DOCKER_USERNAME}/functest-components:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64 \
-          --template ${DOCKER_USERNAME}/functest-vnf:x86_64-latest \
-          --target ${DOCKER_USERNAME}/functest-vnf:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64 \
-          --template ${DOCKER_USERNAME}/functest-restapi:x86_64-latest \
-          --target ${DOCKER_USERNAME}/functest-restapi:latest
-    - script: >
-        sudo manifest-tool push from-args \
-          --platforms linux/amd64 \
-          --template ${DOCKER_USERNAME}/functest-parser:x86_64-latest \
-          --target ${DOCKER_USERNAME}/functest-parser:latest
+          --platforms linux/amd64,linux/arm,linux/arm64 \
+          --template ${DOCKER_USERNAME}/xtesting:ARCH-hunter \
+          --target ${DOCKER_USERNAME}/xtesting:hunter