xref: /openbmc/qemu/.gitlab-ci.d/containers.yml (revision 6f03770d)
1.container_job_template: &container_job_definition
2  image: docker:stable
3  stage: containers
4  services:
5    - docker:dind
6  before_script:
7    - export TAG="$CI_REGISTRY_IMAGE/qemu/$NAME:latest"
8    - export COMMON_TAG="$CI_REGISTRY/qemu-project/qemu/$NAME:latest"
9    - apk add python3
10    - docker info
11    - docker login $CI_REGISTRY -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD"
12  script:
13    - echo "TAG:$TAG"
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"
18          -r $CI_REGISTRY_IMAGE
19    - docker tag "qemu/$NAME" "$TAG"
20    - docker push "$TAG"
21  after_script:
22    - docker logout
23
24amd64-alpine-container:
25  <<: *container_job_definition
26  variables:
27    NAME: alpine
28
29amd64-centos7-container:
30  <<: *container_job_definition
31  variables:
32    NAME: centos7
33
34amd64-centos8-container:
35  <<: *container_job_definition
36  variables:
37    NAME: centos8
38
39amd64-debian10-container:
40  <<: *container_job_definition
41  variables:
42    NAME: debian10
43
44amd64-debian11-container:
45  <<: *container_job_definition
46  variables:
47    NAME: debian11
48
49alpha-debian-cross-container:
50  <<: *container_job_definition
51  stage: containers-layer2
52  needs: ['amd64-debian10-container']
53  variables:
54    NAME: debian-alpha-cross
55
56amd64-debian-cross-container:
57  <<: *container_job_definition
58  stage: containers-layer2
59  needs: ['amd64-debian10-container']
60  variables:
61    NAME: debian-amd64-cross
62
63amd64-debian-user-cross-container:
64  <<: *container_job_definition
65  stage: containers-layer2
66  needs: ['amd64-debian10-container']
67  variables:
68    NAME: debian-all-test-cross
69
70amd64-debian-container:
71  <<: *container_job_definition
72  stage: containers-layer2
73  needs: ['amd64-debian10-container']
74  variables:
75    NAME: debian-amd64
76
77arm64-debian-cross-container:
78  <<: *container_job_definition
79  stage: containers-layer2
80  needs: ['amd64-debian10-container']
81  variables:
82    NAME: debian-arm64-cross
83
84arm64-test-debian-cross-container:
85  <<: *container_job_definition
86  stage: containers-layer2
87  needs: ['amd64-debian11-container']
88  variables:
89    NAME: debian-arm64-test-cross
90
91armel-debian-cross-container:
92  <<: *container_job_definition
93  stage: containers-layer2
94  needs: ['amd64-debian10-container']
95  variables:
96    NAME: debian-armel-cross
97
98armhf-debian-cross-container:
99  <<: *container_job_definition
100  stage: containers-layer2
101  needs: ['amd64-debian10-container']
102  variables:
103    NAME: debian-armhf-cross
104
105hppa-debian-cross-container:
106  <<: *container_job_definition
107  stage: containers-layer2
108  needs: ['amd64-debian10-container']
109  variables:
110    NAME: debian-hppa-cross
111
112m68k-debian-cross-container:
113  <<: *container_job_definition
114  stage: containers-layer2
115  needs: ['amd64-debian10-container']
116  variables:
117    NAME: debian-m68k-cross
118
119mips64-debian-cross-container:
120  <<: *container_job_definition
121  stage: containers-layer2
122  needs: ['amd64-debian10-container']
123  variables:
124    NAME: debian-mips64-cross
125
126mips64el-debian-cross-container:
127  <<: *container_job_definition
128  stage: containers-layer2
129  needs: ['amd64-debian10-container']
130  variables:
131    NAME: debian-mips64el-cross
132
133mips-debian-cross-container:
134  <<: *container_job_definition
135  stage: containers-layer2
136  needs: ['amd64-debian10-container']
137  variables:
138    NAME: debian-mips-cross
139
140mipsel-debian-cross-container:
141  <<: *container_job_definition
142  stage: containers-layer2
143  needs: ['amd64-debian10-container']
144  variables:
145    NAME: debian-mipsel-cross
146
147powerpc-debian-cross-container:
148  <<: *container_job_definition
149  stage: containers-layer2
150  needs: ['amd64-debian10-container']
151  variables:
152    NAME: debian-powerpc-cross
153
154ppc64-debian-cross-container:
155  <<: *container_job_definition
156  stage: containers-layer2
157  needs: ['amd64-debian10-container']
158  variables:
159    NAME: debian-ppc64-cross
160
161ppc64el-debian-cross-container:
162  <<: *container_job_definition
163  stage: containers-layer2
164  needs: ['amd64-debian10-container']
165  variables:
166    NAME: debian-ppc64el-cross
167
168riscv64-debian-cross-container:
169  <<: *container_job_definition
170  stage: containers-layer2
171  needs: ['amd64-debian10-container']
172  variables:
173    NAME: debian-riscv64-cross
174
175s390x-debian-cross-container:
176  <<: *container_job_definition
177  stage: containers-layer2
178  needs: ['amd64-debian10-container']
179  variables:
180    NAME: debian-s390x-cross
181
182sh4-debian-cross-container:
183  <<: *container_job_definition
184  stage: containers-layer2
185  needs: ['amd64-debian10-container']
186  variables:
187    NAME: debian-sh4-cross
188
189sparc64-debian-cross-container:
190  <<: *container_job_definition
191  stage: containers-layer2
192  needs: ['amd64-debian10-container']
193  variables:
194    NAME: debian-sparc64-cross
195
196tricore-debian-cross-container:
197  <<: *container_job_definition
198  stage: containers-layer2
199  needs: ['amd64-debian10-container']
200  variables:
201    NAME: debian-tricore-cross
202
203xtensa-debian-cross-container:
204  <<: *container_job_definition
205  variables:
206    NAME: debian-xtensa-cross
207
208cris-fedora-cross-container:
209  <<: *container_job_definition
210  variables:
211    NAME: fedora-cris-cross
212
213amd64-fedora-container:
214  <<: *container_job_definition
215  variables:
216    NAME: fedora
217
218i386-fedora-cross-container:
219  <<: *container_job_definition
220  variables:
221    NAME: fedora-i386-cross
222
223win32-fedora-cross-container:
224  <<: *container_job_definition
225  variables:
226    NAME: fedora-win32-cross
227
228win64-fedora-cross-container:
229  <<: *container_job_definition
230  variables:
231    NAME: fedora-win64-cross
232
233amd64-ubuntu1804-container:
234  <<: *container_job_definition
235  variables:
236    NAME: ubuntu1804
237
238amd64-ubuntu2004-container:
239  <<: *container_job_definition
240  variables:
241    NAME: ubuntu2004
242
243amd64-ubuntu-container:
244  <<: *container_job_definition
245  variables:
246    NAME: ubuntu
247
248amd64-opensuse-leap-container:
249  <<: *container_job_definition
250  variables:
251    NAME: opensuse-leap
252