summaryrefslogblamecommitdiffstats
path: root/.gitlab-ci.d/containers.yml
blob: ea350eacff70f3098ac7655b36f04c5db8029898 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13












                                                                                                   


                                                                                                        


                        





                                                   














































                                     






                                     




















































































































































































                                        
.container_job_template: &container_job_definition
  image: docker:stable
  stage: containers
  services:
    - docker:dind
  before_script:
    - export TAG="$CI_REGISTRY_IMAGE/qemu/$NAME:latest"
    - export COMMON_TAG="$CI_REGISTRY/qemu-project/qemu/$NAME:latest"
    - docker info
    - docker login registry.gitlab.com -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD"
  script:
    - docker pull "$TAG" || docker pull "$COMMON_TAG" || true
    - sed -i -e "s,FROM qemu/,FROM $CI_REGISTRY_IMAGE/qemu/," tests/docker/dockerfiles/$NAME.docker
    - DOCKER_BUILDKIT=1 docker build --cache-from "$TAG" --cache-from "$COMMON_TAG" --tag "$TAG"
                                     --build-arg BUILDKIT_INLINE_CACHE=1
                                     -f "tests/docker/dockerfiles/$NAME.docker" tests/docker/dockerfiles
    - docker push "$TAG"
  after_script:
    - docker logout
  rules:
    - changes:
      - .gitlab-ci.d/containers.yml
      - tests/docker/*
    - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
    - if: '$CI_COMMIT_REF_NAME == "testing/next"'

amd64-centos7-container:
  <<: *container_job_definition
  variables:
    NAME: centos7

amd64-centos8-container:
  <<: *container_job_definition
  variables:
    NAME: centos8

amd64-debian10-container:
  <<: *container_job_definition
  variables:
    NAME: debian10

amd64-debian11-container:
  <<: *container_job_definition
  variables:
    NAME: debian11

amd64-debian9-container:
  <<: *container_job_definition
  variables:
    NAME: debian9

amd64-debian9-mxe-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian9-container']
  variables:
    NAME: debian9-mxe

alpha-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-alpha-cross

amd64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-amd64-cross

amd64-debian-user-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-all-test-cross

amd64-debian-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-amd64

arm64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-arm64-cross

arm64-test-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian11-container']
  variables:
    NAME: debian-arm64-test-cross

armel-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-armel-cross

armhf-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-armhf-cross

hppa-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-hppa-cross

m68k-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-m68k-cross

mips64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-mips64-cross

mips64el-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-mips64el-cross

mips-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-mips-cross

mipsel-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-mipsel-cross

powerpc-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-powerpc-cross

ppc64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-ppc64-cross

ppc64el-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-ppc64el-cross

riscv64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-riscv64-cross

s390x-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-s390x-cross

sh4-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-sh4-cross

sparc64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian10-container']
  variables:
    NAME: debian-sparc64-cross

tricore-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer2
  needs: ['amd64-debian9-container']
  variables:
    NAME: debian-tricore-cross

win32-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer3
  needs: ['amd64-debian9-mxe-container']
  variables:
    NAME: debian-win32-cross

win64-debian-cross-container:
  <<: *container_job_definition
  stage: containers-layer3
  needs: ['amd64-debian9-mxe-container']
  variables:
    NAME: debian-win64-cross

xtensa-debian-cross-container:
  <<: *container_job_definition
  variables:
    NAME: debian-xtensa-cross

cris-fedora-cross-container:
  <<: *container_job_definition
  variables:
    NAME: fedora-cris-cross

amd64-fedora-container:
  <<: *container_job_definition
  variables:
    NAME: fedora

i386-fedora-cross-container:
  <<: *container_job_definition
  variables:
    NAME: fedora-i386-cross

amd64-ubuntu1804-container:
  <<: *container_job_definition
  variables:
    NAME: ubuntu1804

amd64-ubuntu2004-container:
  <<: *container_job_definition
  variables:
    NAME: ubuntu2004

amd64-ubuntu-container:
  <<: *container_job_definition
  variables:
    NAME: ubuntu