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