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 - aarch64_dirs="docker/core"
20 - script: sudo -E bash build.sh
22 - repo="${DOCKER_USERNAME}"
23 - x86_64_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:x86_64-latest \
30 --template ${DOCKER_USERNAME}/functest-core:aarch64-latest \
31 --target ${DOCKER_USERNAME}/functest-core:latest
32 - stage: build all functest images
33 script: sudo -E bash build.sh
35 - repo="${DOCKER_USERNAME}"
37 - aarch64_dirs="docker/healthcheck"
38 - script: sudo -E bash build.sh
40 - repo="${DOCKER_USERNAME}"
42 - aarch64_dirs="docker/smoke"
43 - script: sudo -E bash build.sh
45 - repo="${DOCKER_USERNAME}"
47 - aarch64_dirs="docker/features"
48 - script: sudo -E bash build.sh
50 - repo="${DOCKER_USERNAME}"
52 - aarch64_dirs="docker/components"
53 - script: sudo -E bash build.sh
55 - repo="${DOCKER_USERNAME}"
56 - x86_64_dirs="docker/healthcheck"
58 - script: sudo -E bash build.sh
60 - repo="${DOCKER_USERNAME}"
61 - x86_64_dirs="docker/smoke"
63 - script: sudo -E bash build.sh
65 - repo="${DOCKER_USERNAME}"
66 - x86_64_dirs="docker/features"
68 - script: sudo -E bash build.sh
70 - repo="${DOCKER_USERNAME}"
71 - x86_64_dirs="docker/components"
73 - script: sudo -E bash build.sh
75 - repo="${DOCKER_USERNAME}"
76 - x86_64_dirs="docker/vnf"
78 - script: sudo -E bash build.sh
80 - repo="${DOCKER_USERNAME}"
81 - x86_64_dirs="docker/restapi"
83 - script: sudo -E bash build.sh
85 - repo="${DOCKER_USERNAME}"
86 - x86_64_dirs="docker/parser"
88 - stage: publish all manifests
90 sudo manifest-tool push from-args \
91 --platforms linux/amd64,linux/arm64 \
92 --template ${DOCKER_USERNAME}/functest-healthcheck:x86_64-latest \
93 --template ${DOCKER_USERNAME}/functest-healthcheck:aarch64-latest \
94 --target ${DOCKER_USERNAME}/functest-healthcheck:latest
96 sudo manifest-tool push from-args \
97 --platforms linux/amd64,linux/arm64 \
98 --template ${DOCKER_USERNAME}/functest-healthcheck:x86_64-latest \
99 --template ${DOCKER_USERNAME}/functest-healthcheck:aarch64-latest \
100 --target ${DOCKER_USERNAME}/functest-healthcheck:latest
102 sudo manifest-tool push from-args \
103 --platforms linux/amd64,linux/arm64 \
104 --template ${DOCKER_USERNAME}/functest-smoke:x86_64-latest \
105 --template ${DOCKER_USERNAME}/functest-smoke:aarch64-latest \
106 --target ${DOCKER_USERNAME}/functest-smoke:latest
108 sudo manifest-tool push from-args \
109 --platforms linux/amd64,linux/arm64 \
110 --template ${DOCKER_USERNAME}/functest-features:x86_64-latest \
111 --template ${DOCKER_USERNAME}/functest-features:aarch64-latest \
112 --target ${DOCKER_USERNAME}/functest-features:latest
114 sudo manifest-tool push from-args \
115 --platforms linux/amd64,linux/arm64 \
116 --template ${DOCKER_USERNAME}/functest-components:x86_64-latest \
117 --template ${DOCKER_USERNAME}/functest-components:aarch64-latest \
118 --target ${DOCKER_USERNAME}/functest-components:latest
120 sudo manifest-tool push from-args \
121 --platforms linux/amd64 \
122 --template ${DOCKER_USERNAME}/functest-vnf:x86_64-latest \
123 --target ${DOCKER_USERNAME}/functest-vnf:latest
125 sudo manifest-tool push from-args \
126 --platforms linux/amd64 \
127 --template ${DOCKER_USERNAME}/functest-restapi:x86_64-latest \
128 --target ${DOCKER_USERNAME}/functest-restapi:latest
130 sudo manifest-tool push from-args \
131 --platforms linux/amd64 \
132 --template ${DOCKER_USERNAME}/functest-parser:x86_64-latest \
133 --target ${DOCKER_USERNAME}/functest-parser:latest