Remove ansiblelint as tox entry
[functest-xtesting.git] / .travis.yml
1 ---
2 sudo: required
3 services: docker
4 language: generic
5 dist: focal
6
7 before_script:
8   - sudo docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
9   - sudo pip install tox tox-pip-version
10   - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}"
11   - (cd .. && git clone https://github.com/estesp/manifest-tool)
12   - (cd ../manifest-tool && git checkout v0.9.0)
13   - (cd ../manifest-tool && sudo -E make && sudo -E make install)
14
15 jobs:
16   include:
17     - stage: run unit tests
18       script: >
19         tox -e docs,pep8,pylint,yamllint,bashate,py39,cover
20     - stage: build xtesting images
21       script: sudo -E bash build.sh
22       env:
23         - REPO="${DOCKER_USERNAME}"
24         - arch="amd64"
25         - amd64_dirs="docker/core"
26         - arm64_dirs=""
27         - arm_dirs=""
28     - script: sudo -E bash build.sh
29       env:
30         - REPO="${DOCKER_USERNAME}"
31         - arch="arm64"
32         - amd64_dirs=""
33         - arm64_dirs="docker/core"
34         - arm_dirs=""
35     - script: sudo -E bash build.sh
36       env:
37         - REPO="${DOCKER_USERNAME}"
38         - arch="arm"
39         - amd64_dirs=""
40         - arm64_dirs=""
41         - arm_dirs="docker/core"
42     - stage: publish xtesting manifests
43       script: >
44         sudo manifest-tool push from-args \
45           --platforms linux/amd64,linux/arm,linux/arm64 \
46           --template ${DOCKER_USERNAME}/xtesting:ARCH-latest \
47           --target ${DOCKER_USERNAME}/xtesting:latest
48     - stage: build xtesting-mts images
49       script: sudo -E bash build.sh
50       env:
51         - REPO="${DOCKER_USERNAME}"
52         - arch="amd64"
53         - amd64_dirs="docker/mts"
54         - arm64_dirs=""
55         - arm_dirs=""
56     - script: sudo -E bash build.sh
57       env:
58         - REPO="${DOCKER_USERNAME}"
59         - arch="arm64"
60         - amd64_dirs=""
61         - arm64_dirs="docker/mts"
62         - arm_dirs=""
63     - script: sudo -E bash build.sh
64       env:
65         - REPO="${DOCKER_USERNAME}"
66         - arch="arm"
67         - amd64_dirs=""
68         - arm64_dirs=""
69         - arm_dirs="docker/mts"
70     - stage: publish xtesting-mts manifests
71       script: >
72         sudo manifest-tool push from-args \
73           --platforms linux/amd64,linux/arm,linux/arm64 \
74           --template ${DOCKER_USERNAME}/xtesting-mts:ARCH-latest \
75           --target ${DOCKER_USERNAME}/xtesting-mts:latest