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