@@ -68,43 +68,64 @@ join() {
68
68
}
69
69
70
70
for version in " ${versions[@]} " ; do
71
- commit=" $( dirCommit " $version " ) "
72
-
73
- fullVersion=" $( git show " $commit " :" $version /Dockerfile" | awk ' $1 == "ENV" && $2 == "REDMINE_VERSION" { print $3; exit }' ) "
74
-
75
- versionAliases=(
76
- $fullVersion
77
- $version
78
- ${aliases[$version]:- }
79
- )
80
-
81
- parent=" $( awk ' toupper($1) == "FROM" { print $2 }' " $version /Dockerfile" ) "
82
- arches=" ${parentRepoToArches[$parent]} "
83
-
84
- # the "gosu" Debian package isn't available on mips64le
85
- arches=" $( sed <<< " $arches " -e ' s/ mips64le / /g' ) "
86
-
87
- echo
88
- cat << -EOE
89
- Tags: $( join ' , ' " ${versionAliases[@]} " )
90
- Architectures: $( join ' , ' $arches )
91
- GitCommit: $commit
92
- Directory: $version
93
- EOE
94
-
95
- for variant in passenger alpine; do
96
- [ -f " $version /$variant /Dockerfile" ] || continue
97
-
98
- commit=" $( dirCommit " $version /$variant " ) "
99
-
100
- variantAliases=( " ${versionAliases[@]/%/ -$variant } " )
101
- variantAliases=( " ${variantAliases[@]// latest-/ } " )
71
+ for variant in ' ' passenger alpine; do
72
+ dir=" $version ${variant: +/ $variant } "
73
+ [ -f " $dir /Dockerfile" ] || continue
74
+
75
+ commit=" $( dirCommit " $dir " ) "
76
+
77
+ fullVersion=" $( git show " $commit " :" $dir /Dockerfile" | awk ' $1 == "ENV" && $2 == "REDMINE_VERSION" { print $3; exit }' ) "
78
+
79
+ versionAliases=(
80
+ $fullVersion
81
+ $version
82
+ ${aliases[$version]:- }
83
+ )
84
+
85
+ if [ -n " $variant " ]; then
86
+ variantAliases=( " ${versionAliases[@]/%/ -$variant } " )
87
+ variantAliases=( " ${variantAliases[@]// latest-/ } " )
88
+ else
89
+ variantAliases=( " ${versionAliases[@]} " )
90
+ fi
91
+
92
+ variantParent=" $( awk ' toupper($1) == "FROM" { print $2 }' " $dir /Dockerfile" ) "
93
+
94
+ suite=" ${variantParent#*: } " # "ruby:2.7-slim-bullseye", "2.7-alpine3.15"
95
+ suite=" ${suite##* -} " # "bullseye", "alpine3.15"
96
+ suite=" ${suite# alpine} " # "bullseye", "3.15"
97
+
98
+ case " $variant " in
99
+ alpine)
100
+ suite=" alpine$suite " # "alpine3.8"
101
+ suiteAliases=( " ${versionAliases[@]/%/ -$suite } " )
102
+ ;;
103
+ passenger)
104
+ suiteAliases=( " ${variantAliases[@]} " )
105
+ ;;
106
+ * )
107
+ suiteAliases=( " ${variantAliases[@]/%/ -$suite } " )
108
+ ;;
109
+ esac
110
+ suiteAliases=( " ${suiteAliases[@]// latest-/ } " )
111
+ variantAliases+=( " ${suiteAliases[@]} " )
112
+
113
+ case " $variant " in
114
+ passenger) variantArches=' amd64' ;; # https://github.com/docker-library/redmine/pull/87#issuecomment-323877678
115
+ * ) variantArches=" ${parentRepoToArches[$variantParent]} " ;;
116
+ esac
117
+
118
+ if [ " $variant " != ' alpine' ]; then
119
+ # the "gosu" Debian package isn't available on mips64le
120
+ variantArches=" $( sed <<< " $variantArches " -e ' s/ mips64le / /g' ) "
121
+ fi
102
122
103
123
echo
104
124
cat << -EOE
105
125
Tags: $( join ' , ' " ${variantAliases[@]} " )
126
+ Architectures: $( join ' , ' $variantArches )
106
127
GitCommit: $commit
107
- Directory: $version / $variant
128
+ Directory: $dir
108
129
EOE
109
130
done
110
131
done
0 commit comments