Verify Ansible playbooks via ansible-lint
[functest-kubernetes.git] / .travis.yml
1 ---
2 sudo: required
3 language: generic
4 services: docker
5
6 before_script:
7   - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}"
8   - (cd .. && git clone https://github.com/estesp/manifest-tool)
9   - (cd ../manifest-tool && git checkout v0.9.0)
10   - (cd ../manifest-tool && sudo -E make && sudo -E make install)
11
12 jobs:
13   include:
14     - stage: build functest-kubernetes-core image
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-kubernetes-core manifests
21       script: >
22         sudo manifest-tool push from-args \
23           --platforms linux/amd64 \
24           --template ${DOCKER_USERNAME}/functest-kubernetes-core:ARCH-latest \
25           --target ${DOCKER_USERNAME}/functest-kubernetes-core:latest
26     - stage: build functest-kubernetes-[healthcheck,features] image
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/features"
36         - arm64_dirs=""
37     - stage: publish functest-kubernetes-[healthcheck,features] manifests
38       script: >
39         sudo manifest-tool push from-args \
40           --platforms linux/amd64 \
41           --template \
42           ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:ARCH-latest \
43           --target ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:latest
44     - script: >
45         sudo manifest-tool push from-args \
46           --platforms linux/amd64 \
47           --template \
48           ${DOCKER_USERNAME}/functest-kubernetes-features:ARCH-latest \
49           --target ${DOCKER_USERNAME}/functest-kubernetes-features:latest
50     - stage: build functest-kubernetes-smoke image
51       script: sudo -E bash build.sh
52       env:
53         - REPO="${DOCKER_USERNAME}"
54         - amd64_dirs="docker/smoke"
55         - arm64_dirs=""
56     - stage: publish functest-kubernetes-smoke manifests
57       script: >
58         sudo manifest-tool push from-args \
59           --platforms linux/amd64 \
60           --template ${DOCKER_USERNAME}/functest-kubernetes-smoke:ARCH-latest \
61           --target ${DOCKER_USERNAME}/functest-kubernetes-smoke:latest