Skip to content
This repository was archived by the owner on Apr 22, 2020. It is now read-only.

Commit 4790922

Browse files
committed
New: Refactor build-all action using build tools file list
1 parent 4aaf82b commit 4790922

2 files changed

Lines changed: 83 additions & 85 deletions

File tree

build-tools.list

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
29.0.2
2+
29.0.0
3+
28.0.3
4+
28.0.2
5+
27.0.3
6+
27.0.2
7+
27.0.1
8+
26.0.2
9+
26.0.1
10+
26.0.0
11+
25.0.3
12+
25.0.2
13+
25.0.1
14+
25.0.0
15+
24.0.3
16+
23.0.3
17+
23.0.2
18+
23.0.1
19+
23.0.0
20+
22.0.1
21+
22.0.0
22+
21.1.2
23+
21.1.1
24+
21.1
25+
21.0.2
26+
21.0.1
27+
21.0.0
28+
20.0.0
29+
19.1.0
30+
19.0.3
31+
19.0.2
32+
19.0.1
33+
19
34+
18.1.1
35+
18.1.0
36+
18.0.1
37+
17

devcontrol/actions/build-all.sh

Lines changed: 46 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,30 @@
11
#!/bin/bash
22

3+
# @description Build single docker flutter builde image
4+
#
5+
# @example
6+
# buildDockerImage 29.0.2
7+
#
8+
# @arg $1 Build tools and final image tag, i.e. "29.0.2"
9+
#
10+
# @exitcode The exit code of the build
11+
#
12+
# @stdout The error message of the build
13+
#
14+
function buildDockerImage() {
15+
# Init
16+
local imageTag
17+
local buildTools
18+
local platformTools
19+
platformTools=$(echo "android-$1"|cut -f 1 -d ".")
20+
buildTools=$1
21+
imageTag=$buildTools
22+
23+
echo "# Building 'pedroamador/docker-flutter-builder:${imageTag}' docker image with '${platformTools}' platform tools and '${buildTools}' build tools"
24+
echo
25+
docker build --build-arg PLATFORM_TOOLS="${platformTools}" --build-arg BUILD_TOOLS="${buildTools}" -t pedroamador/docker-flutter-builder:"${imageTag}" .
26+
}
27+
328
# @description Build all docker images
429
#
530
# @example
@@ -11,108 +36,44 @@
1136
#
1237
# @stdout "Not implemented" message if the requested task is not implemented
1338
#
14-
function hello-world() {
39+
function build-all() {
1540

1641
# Init
17-
local briefMessage="Build all docker images"
18-
local helpMessage="""Build all docker images of the Docker Flutter Builder.
42+
local briefMessage
43+
local helpMessage
44+
briefMessage="Build all docker images"
45+
helpMessage=$(cat <<EOF
46+
Build all docker images of the Docker Flutter Builder.
1947
2048
The build include the following tags of the <teecke/docker-flutter-builder> docker image based on the specified platform tools / build tools:
2149
22-
Docker Image Tag Platform Tools Build Tools
23-
================ ============== ==========
24-
29.0.2 android-29 29.0.2
25-
29.0.0 android-29 29.0.0
26-
28.0.3 android-28 28.0.3
27-
28.0.2 android-28 28.0.2
28-
27.0.3 android-27 27.0.3
29-
27.0.2 android-27 27.0.2
30-
27.0.1 android-27 27.0.1
31-
26.0.2 android-26 26.0.2
32-
26.0.1 android-26 26.0.1
33-
26.0.0 android-26 26.0.0
34-
25.0.3 android-25 25.0.3
35-
25.0.2 android-25 25.0.2
36-
25.0.1 android-25 25.0.1
37-
25.0.0 android-25 25.0.0
38-
24.0.3 android-24 24.0.3
39-
23.0.3 android-23 23.0.3
40-
23.0.2 android-23 23.0.2
41-
23.0.1 android-23 23.0.1
42-
23.0.0 android-23 23.0.0
43-
22.0.1 android-22 22.0.1
44-
22.0.0 android-22 22.0.0
45-
21.1.2 android-21 21.1.2
46-
21.1.1 android-21 21.1.1
47-
21.1 android-21 21.1
48-
21.0.2 android-21 21.0.2
49-
21.0.1 android-21 21.0.1
50-
21.0.0 android-21 21.0.0
51-
20.0.0 android-20 20.0.0
52-
19.1.0 android-19 19.1.0
53-
19.0.3 android-19 19.0.3
54-
19.0.2 android-19 19.0.2
55-
19.0.1 android-19 19.0.1
56-
19 android-19 19
57-
18.1.1 android-18 18.1.1
58-
18.1.0 android-18 18.1.0
59-
18.0.1 android-18 18.0.1
60-
17 android-17 17
61-
62-
"""
50+
Build Tools
51+
==========
52+
"${buildToolsList}"
53+
EOF
54+
)
6355

6456
# Task choosing
6557
case $1 in
6658
brief)
67-
showBriefMessage ${FUNCNAME[0]} "$briefMessage"
59+
showBriefMessage "${FUNCNAME[0]}" "$briefMessage"
6860
;;
6961
help)
70-
showHelpMessage ${FUNCNAME[0]} "$helpMessage"
62+
showHelpMessage "${FUNCNAME[0]}" "$helpMessage"
7163
;;
7264
exec)
73-
docker build --build-arg PLATFORM_TOOLS=android-29 --build-arg BUILD_TOOLS=29.0.2 -t pedroamador/docker-flutter-builder:29.0.2 .
74-
docker build --build-arg PLATFORM_TOOLS=android-29 --build-arg BUILD_TOOLS=29.0.0 -t pedroamador/docker-flutter-builder:29.0.0 .
75-
docker build --build-arg PLATFORM_TOOLS=android-28 --build-arg BUILD_TOOLS=28.0.3 -t pedroamador/docker-flutter-builder:28.0.3 .
76-
docker build --build-arg PLATFORM_TOOLS=android-28 --build-arg BUILD_TOOLS=28.0.2 -t pedroamador/docker-flutter-builder:28.0.2 .
77-
docker build --build-arg PLATFORM_TOOLS=android-27 --build-arg BUILD_TOOLS=27.0.3 -t pedroamador/docker-flutter-builder:27.0.3 .
78-
docker build --build-arg PLATFORM_TOOLS=android-27 --build-arg BUILD_TOOLS=27.0.2 -t pedroamador/docker-flutter-builder:27.0.2 .
79-
docker build --build-arg PLATFORM_TOOLS=android-27 --build-arg BUILD_TOOLS=27.0.1 -t pedroamador/docker-flutter-builder:27.0.1 .
80-
docker build --build-arg PLATFORM_TOOLS=android-26 --build-arg BUILD_TOOLS=26.0.2 -t pedroamador/docker-flutter-builder:26.0.2 .
81-
docker build --build-arg PLATFORM_TOOLS=android-26 --build-arg BUILD_TOOLS=26.0.1 -t pedroamador/docker-flutter-builder:26.0.1 .
82-
docker build --build-arg PLATFORM_TOOLS=android-26 --build-arg BUILD_TOOLS=26.0.0 -t pedroamador/docker-flutter-builder:26.0.0 .
83-
docker build --build-arg PLATFORM_TOOLS=android-25 --build-arg BUILD_TOOLS=25.0.3 -t pedroamador/docker-flutter-builder:25.0.3 .
84-
docker build --build-arg PLATFORM_TOOLS=android-25 --build-arg BUILD_TOOLS=25.0.2 -t pedroamador/docker-flutter-builder:25.0.2 .
85-
docker build --build-arg PLATFORM_TOOLS=android-25 --build-arg BUILD_TOOLS=25.0.1 -t pedroamador/docker-flutter-builder:25.0.1 .
86-
docker build --build-arg PLATFORM_TOOLS=android-25 --build-arg BUILD_TOOLS=25.0.0 -t pedroamador/docker-flutter-builder:25.0.0 .
87-
docker build --build-arg PLATFORM_TOOLS=android-24 --build-arg BUILD_TOOLS=24.0.3 -t pedroamador/docker-flutter-builder:24.0.3 .
88-
docker build --build-arg PLATFORM_TOOLS=android-23 --build-arg BUILD_TOOLS=23.0.3 -t pedroamador/docker-flutter-builder:23.0.3 .
89-
docker build --build-arg PLATFORM_TOOLS=android-23 --build-arg BUILD_TOOLS=23.0.2 -t pedroamador/docker-flutter-builder:23.0.2 .
90-
docker build --build-arg PLATFORM_TOOLS=android-23 --build-arg BUILD_TOOLS=23.0.1 -t pedroamador/docker-flutter-builder:23.0.1 .
91-
docker build --build-arg PLATFORM_TOOLS=android-23 --build-arg BUILD_TOOLS=23.0.0 -t pedroamador/docker-flutter-builder:23.0.0 .
92-
docker build --build-arg PLATFORM_TOOLS=android-22 --build-arg BUILD_TOOLS=22.0.1 -t pedroamador/docker-flutter-builder:22.0.1 .
93-
docker build --build-arg PLATFORM_TOOLS=android-22 --build-arg BUILD_TOOLS=22.0.0 -t pedroamador/docker-flutter-builder:22.0.0 .
94-
docker build --build-arg PLATFORM_TOOLS=android-21 --build-arg BUILD_TOOLS=21.1.2 -t pedroamador/docker-flutter-builder:21.1.2 .
95-
docker build --build-arg PLATFORM_TOOLS=android-21 --build-arg BUILD_TOOLS=21.1.1 -t pedroamador/docker-flutter-builder:21.1.1 .
96-
docker build --build-arg PLATFORM_TOOLS=android-21 --build-arg BUILD_TOOLS=21.1 -t pedroamador/docker-flutter-builder:21.1 .
97-
docker build --build-arg PLATFORM_TOOLS=android-21 --build-arg BUILD_TOOLS=21.0.2 -t pedroamador/docker-flutter-builder:21.0.2 .
98-
docker build --build-arg PLATFORM_TOOLS=android-21 --build-arg BUILD_TOOLS=21.0.1 -t pedroamador/docker-flutter-builder:21.0.1 .
99-
docker build --build-arg PLATFORM_TOOLS=android-21 --build-arg BUILD_TOOLS=21.0.0 -t pedroamador/docker-flutter-builder:21.0.0 .
100-
docker build --build-arg PLATFORM_TOOLS=android-20 --build-arg BUILD_TOOLS=20.0.0 -t pedroamador/docker-flutter-builder:20.0.0 .
101-
docker build --build-arg PLATFORM_TOOLS=android-19 --build-arg BUILD_TOOLS=19.1.0 -t pedroamador/docker-flutter-builder:19.1.0 .
102-
docker build --build-arg PLATFORM_TOOLS=android-19 --build-arg BUILD_TOOLS=19.0.3 -t pedroamador/docker-flutter-builder:19.0.3 .
103-
docker build --build-arg PLATFORM_TOOLS=android-19 --build-arg BUILD_TOOLS=19.0.2 -t pedroamador/docker-flutter-builder:19.0.2 .
104-
docker build --build-arg PLATFORM_TOOLS=android-19 --build-arg BUILD_TOOLS=19.0.1 -t pedroamador/docker-flutter-builder:19.0.1 .
105-
docker build --build-arg PLATFORM_TOOLS=android-19 --build-arg BUILD_TOOLS=19 -t pedroamador/docker-flutter-builder:19 .
106-
docker build --build-arg PLATFORM_TOOLS=android-18 --build-arg BUILD_TOOLS=18.1.1 -t pedroamador/docker-flutter-builder:18.1.1 .
107-
docker build --build-arg PLATFORM_TOOLS=android-18 --build-arg BUILD_TOOLS=18.1.0 -t pedroamador/docker-flutter-builder:18.1.0 .
108-
docker build --build-arg PLATFORM_TOOLS=android-18 --build-arg BUILD_TOOLS=18.0.1 -t pedroamador/docker-flutter-builder:18.0.1 .
109-
docker build --build-arg PLATFORM_TOOLS=android-17 --build-arg BUILD_TOOLS=17 -t pedroamador/docker-flutter-builder:17 .
65+
66+
for buildToolsVersion in $(echo "${buildToolsList}"|tr ' ' '\n'); do
67+
buildDockerImage "${buildToolsVersion}"
68+
done
11069
;;
11170
*)
112-
showNotImplemtedMessage $1 ${FUNCNAME[0]}
71+
showNotImplemtedMessage "$1" "${FUNCNAME[0]}"
11372
return 1
11473
esac
11574
}
11675

11776
# Main
118-
hello-world "$@"
77+
cd "$(dirname "$0")/../.." || exit
78+
buildToolsList=$(cat build-tools.list)
79+
build-all "$@"

0 commit comments

Comments
 (0)