Update travis-ci config
[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 all functest images
27       script: sudo -E bash build.sh
28       env:
29         - REPO="${DOCKER_USERNAME}"
30         - amd64_dirs="docker/healthcheck"
31         - arm64_dirs=""
32     - script: sudo -E bash build.sh
33       env:
34         - REPO="${DOCKER_USERNAME}"
35         - amd64_dirs="docker/smoke"
36         - arm64_dirs=""
37     - script: sudo -E bash build.sh
38       env:
39         - REPO="${DOCKER_USERNAME}"
40         - amd64_dirs="docker/features"
41         - arm64_dirs=""
42     - script: sudo -E bash build.sh
43       env:
44         - REPO="${DOCKER_USERNAME}"
45         - amd64_dirs="docker/components"
46         - arm64_dirs=""
47     - script: sudo -E bash build.sh
48       env:
49         - REPO="${DOCKER_USERNAME}"
50         - amd64_dirs="docker/vnf"
51         - arm64_dirs=""
52     - stage: publish all manifests
53       script: >
54         sudo manifest-tool push from-args \
55           --platforms linux/amd64 \
56           --template ${DOCKER_USERNAME}/functest-healthcheck:ARCH-latest \
57           --target ${DOCKER_USERNAME}/functest-healthcheck:latest
58     - script: >
59         sudo manifest-tool push from-args \
60           --platforms linux/amd64 \
61           --template ${DOCKER_USERNAME}/functest-smoke:ARCH-latest \
62           --target ${DOCKER_USERNAME}/functest-smoke:latest
63     - script: >
64         sudo manifest-tool push from-args \
65           --platforms linux/amd64 \
66           --template ${DOCKER_USERNAME}/functest-features:ARCH-latest \
67           --target ${DOCKER_USERNAME}/functest-features:latest
68     - script: >
69         sudo manifest-tool push from-args \
70           --platforms linux/amd64 \
71           --template ${DOCKER_USERNAME}/functest-components:ARCH-latest \
72           --target ${DOCKER_USERNAME}/functest-components:latest
73     - script: >
74         sudo manifest-tool push from-args \
75           --platforms linux/amd64 \
76           --template ${DOCKER_USERNAME}/functest-vnf:ARCH-latest \
77           --target ${DOCKER_USERNAME}/functest-vnf:latest