12 - sudo add-apt-repository -y ppa:deadsnakes/ppa
14 - sudo apt-get install python3.7 python3.7-dev
15 - sudo pip install tox
16 - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}"
17 - (cd .. && git clone https://github.com/estesp/manifest-tool)
18 - (cd ../manifest-tool && git checkout v0.9.0)
19 - (cd ../manifest-tool && sudo -E make && sudo -E make install)
23 - stage: run unit tests
24 script: tox -e pep8,pylint,yamllint,ansiblelint,bashate,py27,py37
25 - stage: build functest-kubernetes-core image
26 script: sudo -E bash build.sh
28 - REPO="${DOCKER_USERNAME}"
29 - amd64_dirs="docker/core"
31 - stage: publish functest-kubernetes-core manifests
33 sudo manifest-tool push from-args \
34 --platforms linux/amd64 \
35 --template ${DOCKER_USERNAME}/functest-kubernetes-core:ARCH-latest \
36 --target ${DOCKER_USERNAME}/functest-kubernetes-core:latest
37 - stage: build functest-kubernetes-[healthcheck,features] image
38 script: sudo -E bash build.sh
40 - REPO="${DOCKER_USERNAME}"
41 - amd64_dirs="docker/healthcheck"
43 - script: sudo -E bash build.sh
45 - REPO="${DOCKER_USERNAME}"
46 - amd64_dirs="docker/features"
48 - stage: publish functest-kubernetes-[healthcheck,features] manifests
50 sudo manifest-tool push from-args \
51 --platforms linux/amd64 \
53 ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:ARCH-latest \
54 --target ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:latest
56 sudo manifest-tool push from-args \
57 --platforms linux/amd64 \
59 ${DOCKER_USERNAME}/functest-kubernetes-features:ARCH-latest \
60 --target ${DOCKER_USERNAME}/functest-kubernetes-features:latest
61 - stage: build functest-kubernetes-smoke image
62 script: sudo -E bash build.sh
64 - REPO="${DOCKER_USERNAME}"
65 - amd64_dirs="docker/smoke"
67 - stage: publish functest-kubernetes-smoke manifests
69 sudo manifest-tool push from-args \
70 --platforms linux/amd64 \
71 --template ${DOCKER_USERNAME}/functest-kubernetes-smoke:ARCH-latest \
72 --target ${DOCKER_USERNAME}/functest-kubernetes-smoke:latest