1 .container_job_template: &container_job_definition
7 - export TAG="$CI_REGISTRY_IMAGE/qemu/$NAME:latest"
8 - export COMMON_TAG="$CI_REGISTRY/qemu-project/qemu/$NAME:latest"
11 - docker login $CI_REGISTRY -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD"
14 - echo "COMMON_TAG:$COMMON_TAG"
15 - docker pull "$TAG" || docker pull "$COMMON_TAG" || true
16 - ./tests/docker/docker.py --engine docker build
17 -t "qemu/$NAME" -f "tests/docker/dockerfiles/$NAME.docker"
19 - docker tag "qemu/$NAME" "$TAG"
25 - .gitlab-ci.d/containers.yml
27 - tests/docker/dockerfiles/*
28 - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
29 - if: '$CI_COMMIT_REF_NAME == "testing/next"'
31 amd64-alpine-container:
32 <<: *container_job_definition
36 amd64-centos7-container:
37 <<: *container_job_definition
41 amd64-centos8-container:
42 <<: *container_job_definition
46 amd64-debian10-container:
47 <<: *container_job_definition
51 amd64-debian11-container:
52 <<: *container_job_definition
56 alpha-debian-cross-container:
57 <<: *container_job_definition
58 stage: containers-layer2
59 needs: ['amd64-debian10-container']
61 NAME: debian-alpha-cross
63 amd64-debian-cross-container:
64 <<: *container_job_definition
65 stage: containers-layer2
66 needs: ['amd64-debian10-container']
68 NAME: debian-amd64-cross
70 amd64-debian-user-cross-container:
71 <<: *container_job_definition
72 stage: containers-layer2
73 needs: ['amd64-debian10-container']
75 NAME: debian-all-test-cross
77 amd64-debian-container:
78 <<: *container_job_definition
79 stage: containers-layer2
80 needs: ['amd64-debian10-container']
84 arm64-debian-cross-container:
85 <<: *container_job_definition
86 stage: containers-layer2
87 needs: ['amd64-debian10-container']
89 NAME: debian-arm64-cross
91 arm64-test-debian-cross-container:
92 <<: *container_job_definition
93 stage: containers-layer2
94 needs: ['amd64-debian11-container']
96 NAME: debian-arm64-test-cross
98 armel-debian-cross-container:
99 <<: *container_job_definition
100 stage: containers-layer2
101 needs: ['amd64-debian10-container']
103 NAME: debian-armel-cross
105 armhf-debian-cross-container:
106 <<: *container_job_definition
107 stage: containers-layer2
108 needs: ['amd64-debian10-container']
110 NAME: debian-armhf-cross
112 hppa-debian-cross-container:
113 <<: *container_job_definition
114 stage: containers-layer2
115 needs: ['amd64-debian10-container']
117 NAME: debian-hppa-cross
119 m68k-debian-cross-container:
120 <<: *container_job_definition
121 stage: containers-layer2
122 needs: ['amd64-debian10-container']
124 NAME: debian-m68k-cross
126 mips64-debian-cross-container:
127 <<: *container_job_definition
128 stage: containers-layer2
129 needs: ['amd64-debian10-container']
131 NAME: debian-mips64-cross
133 mips64el-debian-cross-container:
134 <<: *container_job_definition
135 stage: containers-layer2
136 needs: ['amd64-debian10-container']
138 NAME: debian-mips64el-cross
140 mips-debian-cross-container:
141 <<: *container_job_definition
142 stage: containers-layer2
143 needs: ['amd64-debian10-container']
145 NAME: debian-mips-cross
147 mipsel-debian-cross-container:
148 <<: *container_job_definition
149 stage: containers-layer2
150 needs: ['amd64-debian10-container']
152 NAME: debian-mipsel-cross
154 powerpc-debian-cross-container:
155 <<: *container_job_definition
156 stage: containers-layer2
157 needs: ['amd64-debian10-container']
159 NAME: debian-powerpc-cross
161 ppc64-debian-cross-container:
162 <<: *container_job_definition
163 stage: containers-layer2
164 needs: ['amd64-debian10-container']
166 NAME: debian-ppc64-cross
168 ppc64el-debian-cross-container:
169 <<: *container_job_definition
170 stage: containers-layer2
171 needs: ['amd64-debian10-container']
173 NAME: debian-ppc64el-cross
175 riscv64-debian-cross-container:
176 <<: *container_job_definition
177 stage: containers-layer2
178 needs: ['amd64-debian10-container']
180 NAME: debian-riscv64-cross
182 s390x-debian-cross-container:
183 <<: *container_job_definition
184 stage: containers-layer2
185 needs: ['amd64-debian10-container']
187 NAME: debian-s390x-cross
189 sh4-debian-cross-container:
190 <<: *container_job_definition
191 stage: containers-layer2
192 needs: ['amd64-debian10-container']
194 NAME: debian-sh4-cross
196 sparc64-debian-cross-container:
197 <<: *container_job_definition
198 stage: containers-layer2
199 needs: ['amd64-debian10-container']
201 NAME: debian-sparc64-cross
203 tricore-debian-cross-container:
204 <<: *container_job_definition
205 stage: containers-layer2
206 needs: ['amd64-debian10-container']
208 NAME: debian-tricore-cross
210 xtensa-debian-cross-container:
211 <<: *container_job_definition
213 NAME: debian-xtensa-cross
215 cris-fedora-cross-container:
216 <<: *container_job_definition
218 NAME: fedora-cris-cross
220 amd64-fedora-container:
221 <<: *container_job_definition
225 i386-fedora-cross-container:
226 <<: *container_job_definition
228 NAME: fedora-i386-cross
230 win32-fedora-cross-container:
231 <<: *container_job_definition
233 NAME: fedora-win32-cross
235 win64-fedora-cross-container:
236 <<: *container_job_definition
238 NAME: fedora-win64-cross
240 amd64-ubuntu1804-container:
241 <<: *container_job_definition
245 amd64-ubuntu2004-container:
246 <<: *container_job_definition
250 amd64-ubuntu-container:
251 <<: *container_job_definition
255 amd64-opensuse-leap-container:
256 <<: *container_job_definition