Add functest-tempest container
[functest.git] / .travis.yml
1 ---
2 sudo: required
3 services: docker
4 language: generic
5
6 before_script:
7   - sudo apt-get -y install qemu-user-static
8   - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}"
9   - (cd .. && git clone https://github.com/estesp/manifest-tool)
10   - (cd ../manifest-tool && sudo -E make && sudo -E make install)
11
12 jobs:
13   include:
14     - stage: build functest-core images
15       script: sudo -E bash build.sh
16       env:
17         - REPO="${DOCKER_USERNAME}"
18         - amd64_dirs="docker/core"
19         - arm64_dirs=""
20     - stage: publish functest-core manifests
21       script: >
22         sudo manifest-tool push from-args \
23           --platforms linux/amd64 \
24           --template ${DOCKER_USERNAME}/functest-core:ARCH-latest \
25           --target ${DOCKER_USERNAME}/functest-core:latest
26     - stage: build functest-tempest images
27       script: sudo -E bash build.sh
28       env:
29         - REPO="${DOCKER_USERNAME}"
30         - amd64_dirs="docker/tempest"
31         - arm64_dirs=""
32     - stage: publish functest-tempest manifests
33       script: >
34         sudo manifest-tool push from-args \
35           --platforms linux/amd64 \
36           --template ${DOCKER_USERNAME}/functest-tempest:ARCH-latest \
37           --target ${DOCKER_USERNAME}/functest-tempest:latest
38     - stage: build all functest images
39       script: sudo -E bash build.sh
40       env:
41         - REPO="${DOCKER_USERNAME}"
42         - amd64_dirs="docker/healthcheck"
43         - arm64_dirs=""
44     - script: sudo -E bash build.sh
45       env:
46         - REPO="${DOCKER_USERNAME}"
47         - amd64_dirs="docker/smoke"
48         - arm64_dirs=""
49     - script: sudo -E bash build.sh
50       env:
51         - REPO="${DOCKER_USERNAME}"
52         - amd64_dirs="docker/features"
53         - arm64_dirs=""
54     - script: sudo -E bash build.sh
55       env:
56         - REPO="${DOCKER_USERNAME}"
57         - amd64_dirs="docker/components"
58         - arm64_dirs=""
59     - script: sudo -E bash build.sh
60       env:
61         - REPO="${DOCKER_USERNAME}"
62         - amd64_dirs="docker/vnf"
63         - arm64_dirs=""
64     - stage: publish all manifests
65       script: >
66         sudo manifest-tool push from-args \
67           --platforms linux/amd64 \
68           --template ${DOCKER_USERNAME}/functest-healthcheck:ARCH-latest \
69           --target ${DOCKER_USERNAME}/functest-healthcheck:latest
70     - script: >
71         sudo manifest-tool push from-args \
72           --platforms linux/amd64 \
73           --template ${DOCKER_USERNAME}/functest-smoke:ARCH-latest \
74           --target ${DOCKER_USERNAME}/functest-smoke:latest
75     - script: >
76         sudo manifest-tool push from-args \
77           --platforms linux/amd64 \
78           --template ${DOCKER_USERNAME}/functest-features:ARCH-latest \
79           --target ${DOCKER_USERNAME}/functest-features:latest
80     - script: >
81         sudo manifest-tool push from-args \
82           --platforms linux/amd64 \
83           --template ${DOCKER_USERNAME}/functest-components:ARCH-latest \
84           --target ${DOCKER_USERNAME}/functest-components:latest
85     - script: >
86         sudo manifest-tool push from-args \
87           --platforms linux/amd64 \
88           --template ${DOCKER_USERNAME}/functest-vnf:ARCH-latest \
89           --target ${DOCKER_USERNAME}/functest-vnf:latest