+ - arm_test-base
+
+# x86 image with ARM64 rootfs for baremetal testing.
+arm64_test:
+ extends:
+ - .use-arm_test-base
+ variables:
+ FDO_DISTRIBUTION_TAG: &arm64_test "2020-08-18"
+
+.use-arm64_test:
+ variables:
+ TAG: *arm64_test
+ image: "$CI_REGISTRY_IMAGE/debian/arm64_test:$TAG"
+ needs:
+ - arm64_test
+
+# Native Windows docker builds
+#
+# Unlike the above Linux-based builds - including MinGW/SCons builds which
+# cross-compile for Windows - which use the freedesktop ci-templates, we
+# cannot use the same scheme here. As Windows lacks support for
+# Docker-in-Docker, and Podman does not run natively on Windows, we have
+# to open-code much of the same ourselves.
+#
+# This is achieved by first running in a native Windows shell instance
+# (host PowerShell) in the container stage to build and push the image,
+# then in the build stage by executing inside Docker.
+
+.windows-docker-vs2019:
+ variables:
+ WINDOWS_TAG: "2020-05-05-llvm"
+ WINDOWS_IMAGE: "$CI_REGISTRY_IMAGE/windows/x64_build:$WINDOWS_TAG"
+ WINDOWS_UPSTREAM_IMAGE: "$CI_REGISTRY/$FDO_UPSTREAM_REPO/windows/x64_build:$WINDOWS_TAG"
+
+.windows_build_vs2019:
+ extends:
+ - .container
+ - .windows-docker-vs2019
+ stage: container+docs
+ variables:
+ GIT_STRATEGY: fetch # we do actually need the full repository though
+ timeout: 4h # LLVM takes ages
+ tags:
+ - windows
+ - shell
+ - "1809"
+ - mesa
+ script:
+ - .\.gitlab-ci\windows\mesa_container.ps1 $CI_REGISTRY $CI_REGISTRY_USER $CI_REGISTRY_PASSWORD $WINDOWS_IMAGE $WINDOWS_UPSTREAM_IMAGE
+
+.use-windows_build_vs2019:
+ extends: .windows-docker-vs2019
+ image: "$WINDOWS_IMAGE"
+ needs:
+ - windows_build_vs2019
+
+git_archive:
+ extends: .fdo.container-build@alpine
+ stage: container+docs
+ rules:
+ - if: '$CI_PIPELINE_SOURCE == "schedule"'
+ when: always
+ variables:
+ FDO_REPO_SUFFIX: &git-archive-suffix "alpine/git_archive"
+ FDO_DISTRIBUTION_EXEC: 'pip3 install git+http://gitlab.freedesktop.org/freedesktop/ci-templates@6f5af7e5574509726c79109e3c147cee95e81366'
+ # no need to pull the whole repo to build the container image
+ GIT_STRATEGY: none
+ FDO_DISTRIBUTION_TAG: &git-archive-tag "2020-07-07"
+ FDO_DISTRIBUTION_PACKAGES: git py3-pip
+
+
+# Git archive
+
+make git archive:
+ stage: git-archive
+ extends: .fdo.suffixed-image@alpine
+ rules:
+ - if: '$CI_PIPELINE_SOURCE == "schedule"'
+ when: on_success
+ # ensure we are running on packet
+ tags:
+ - packet.net
+ variables:
+ FDO_DISTRIBUTION_TAG: *git-archive-tag
+ FDO_REPO_SUFFIX: *git-archive-suffix
+ needs:
+ - git_archive
+
+ script:
+ # compress the current folder
+ - tar -cvzf ../$CI_PROJECT_NAME.tar.gz .
+
+ # login with the JWT token
+ - ci-fairy minio login $CI_JOB_JWT
+ - ci-fairy minio cp ../$CI_PROJECT_NAME.tar.gz minio://minio-packet.freedesktop.org/git-cache/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz