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)
14 - stage: build functest-core images
15 script: sudo -E bash build.sh
17 - repo="${DOCKER_USERNAME}"
19 - arm64_dirs="docker/core"
20 - script: sudo -E bash build.sh
22 - repo="${DOCKER_USERNAME}"
23 - amd64_dirs="docker/core"
25 - stage: publish functest-core manifests
27 sudo manifest-tool push from-args \
28 --platforms linux/amd64,linux/arm64 \
29 --template ${DOCKER_USERNAME}/functest-core:ARCH-latest \
30 --target ${DOCKER_USERNAME}/functest-core:latest
31 - stage: build all functest images
32 script: sudo -E bash build.sh
34 - repo="${DOCKER_USERNAME}"
36 - arm64_dirs="docker/healthcheck"
37 - script: sudo -E bash build.sh
39 - repo="${DOCKER_USERNAME}"
41 - arm64_dirs="docker/smoke"
42 - script: sudo -E bash build.sh
44 - repo="${DOCKER_USERNAME}"
46 - arm64_dirs="docker/features"
47 - script: sudo -E bash build.sh
49 - repo="${DOCKER_USERNAME}"
51 - arm64_dirs="docker/components"
52 - script: sudo -E bash build.sh
54 - repo="${DOCKER_USERNAME}"
55 - amd64_dirs="docker/healthcheck"
57 - script: sudo -E bash build.sh
59 - repo="${DOCKER_USERNAME}"
60 - amd64_dirs="docker/smoke"
62 - script: sudo -E bash build.sh
64 - repo="${DOCKER_USERNAME}"
65 - amd64_dirs="docker/features"
67 - script: sudo -E bash build.sh
69 - repo="${DOCKER_USERNAME}"
70 - amd64_dirs="docker/components"
72 - script: sudo -E bash build.sh
74 - repo="${DOCKER_USERNAME}"
75 - amd64_dirs="docker/vnf"
77 - script: sudo -E bash build.sh
79 - repo="${DOCKER_USERNAME}"
80 - amd64_dirs="docker/restapi"
82 - script: sudo -E bash build.sh
84 - repo="${DOCKER_USERNAME}"
85 - amd64_dirs="docker/parser"
87 - stage: publish all manifests
89 sudo manifest-tool push from-args \
90 --platforms linux/amd64,linux/arm64 \
91 --template ${DOCKER_USERNAME}/functest-healthcheck:ARCH-latest \
92 --target ${DOCKER_USERNAME}/functest-healthcheck:latest
94 sudo manifest-tool push from-args \
95 --platforms linux/amd64,linux/arm64 \
96 --template ${DOCKER_USERNAME}/functest-healthcheck:ARCH-latest \
97 --target ${DOCKER_USERNAME}/functest-healthcheck:latest
99 sudo manifest-tool push from-args \
100 --platforms linux/amd64,linux/arm64 \
101 --template ${DOCKER_USERNAME}/functest-smoke:ARCH-latest \
102 --target ${DOCKER_USERNAME}/functest-smoke:latest
104 sudo manifest-tool push from-args \
105 --platforms linux/amd64,linux/arm64 \
106 --template ${DOCKER_USERNAME}/functest-features:ARCH-latest \
107 --target ${DOCKER_USERNAME}/functest-features:latest
109 sudo manifest-tool push from-args \
110 --platforms linux/amd64,linux/arm64 \
111 --template ${DOCKER_USERNAME}/functest-components:ARCH-latest \
112 --target ${DOCKER_USERNAME}/functest-components:latest
114 sudo manifest-tool push from-args \
115 --platforms linux/amd64 \
116 --template ${DOCKER_USERNAME}/functest-vnf:ARCH-latest \
117 --target ${DOCKER_USERNAME}/functest-vnf:latest
119 sudo manifest-tool push from-args \
120 --platforms linux/amd64 \
121 --template ${DOCKER_USERNAME}/functest-restapi:ARCH-latest \
122 --target ${DOCKER_USERNAME}/functest-restapi:latest
124 sudo manifest-tool push from-args \
125 --platforms linux/amd64 \
126 --template ${DOCKER_USERNAME}/functest-parser:ARCH-latest \
127 --target ${DOCKER_USERNAME}/functest-parser:latest