Update Xtesting to 0.98
[functest.git] / build.sh
1 #!/bin/sh
2
3 set -e
4
5 repo=${REPO:-opnfv}
6 amd64_dirs=${amd64_dirs-"\
7 docker/core \
8 docker/healthcheck \
9 docker/smoke \
10 docker/benchmarking \
11 docker/vnf \
12 docker/smoke-cntt \
13 docker/benchmarking-cntt"}
14 arm_dirs=${arm_dirs-${amd64_dirs}}
15 arm64_dirs=${arm64_dirs-${amd64_dirs}}
16 build_opts="--pull=true --no-cache --force-rm=true"
17
18 find . -name Dockerfile -exec sed -i \
19     -e "s|opnfv/functest-core|${repo}/functest-core:amd64-latest|g" {} +
20 find . -name Dockerfile -exec sed -i \
21     -e "s|opnfv/functest-smoke|${repo}/functest-smoke:amd64-latest|g" {} +
22 find . -name Dockerfile -exec sed -i \
23     -e "s|opnfv/functest-benchmarking|\
24 ${repo}/functest-benchmarking:amd64-latest|g" {} +
25 for dir in ${amd64_dirs}; do
26     (cd "${dir}" &&
27         docker build $build_opts \
28             -t "${repo}/functest-${dir##**/}:amd64-latest" .)
29         docker push "${repo}/functest-${dir##**/}:amd64-latest"
30     [ "${dir}" != "docker/core" ] &&
31         (docker rmi "${repo}/functest-${dir##**/}:amd64-latest" || true)
32 done
33 [ -n "${amd64_dirs}" ] &&
34     (docker rmi "${repo}/functest-core:amd64-latest" alpine:3.16 || true)
35 find . -name Dockerfile -exec git checkout {} +
36
37 find . -name Dockerfile -exec sed -i \
38     -e "s|alpine:3.16|arm64v8/alpine:3.16|g" {} +
39 find . -name Dockerfile -exec sed -i \
40     -e "s|opnfv/functest-core|${repo}/functest-core:arm64-latest|g" {} +
41 find . -name Dockerfile -exec sed -i \
42     -e "s|opnfv/functest-smoke|${repo}/functest-smoke:arm64-latest|g" {} +
43 find . -name Dockerfile -exec sed -i \
44     -e "s|opnfv/functest-benchmarking|\
45 ${repo}/functest-benchmarking:arm64-latest|g" {} +
46 for dir in ${arm64_dirs}; do
47     (cd "${dir}" && docker build $build_opts \
48         -t "${repo}/functest-${dir##**/}:arm64-latest" .)
49     docker push "${repo}/functest-${dir##**/}:arm64-latest"
50     [ "${dir}" != "docker/core" ] &&
51         (docker rmi "${repo}/functest-${dir##**/}:arm64-latest" || true)
52 done
53 [ -n "${arm64_dirs}" ] &&
54     (docker rmi "${repo}/functest-core:arm64-latest" \
55         arm64v8/alpine:3.16 || true)
56 find . -name Dockerfile -exec git checkout {} +
57
58 find . -name Dockerfile -exec sed -i \
59     -e "s|alpine:3.16|arm32v6/alpine:3.16|g" {} +
60 find . -name Dockerfile -exec sed -i \
61     -e "s|opnfv/functest-core|${repo}/functest-core:arm-latest|g" {} +
62 find . -name Dockerfile -exec sed -i \
63     -e "s|opnfv/functest-smoke|${repo}/functest-smoke:arm-latest|g" {} +
64 find . -name Dockerfile -exec sed -i \
65     -e "s|opnfv/functest-benchmarking|\
66 ${repo}/functest-benchmarking:arm-latest|g" {} +
67 for dir in ${arm_dirs}; do
68     (cd "${dir}" && docker build $build_opts \
69         -t "${repo}/functest-${dir##**/}:arm-latest" .)
70     docker push "${repo}/functest-${dir##**/}:arm-latest"
71     [ "${dir}" != "docker/core" ] &&
72         (docker rmi "${repo}/functest-${dir##**/}:arm-latest" || true)
73 done
74 [ -n "${arm_dirs}" ] &&
75     (docker rmi "${repo}/functest-core:arm-latest" \
76         arm32v6/alpine:3.16 || true)
77 find . -name Dockerfile -exec git checkout {} +
78
79 exit $?