+ ci/make-test-artifacts.sh artifacts
+ "@
+ if (!$?) { exit(1) }
+ displayName: Build
+ env:
+ HOME: $(Build.SourcesDirectory)
+ MSYSTEM: MINGW64
+ DEVELOPER: 1
+ NO_PERL: 1
+ - task: PublishPipelineArtifact@0
+ displayName: 'Publish Pipeline Artifact: test artifacts'
+ inputs:
+ artifactName: 'windows-artifacts'
+ targetPath: '$(Build.SourcesDirectory)\artifacts'
+ - task: PublishPipelineArtifact@0
+ displayName: 'Publish Pipeline Artifact: git-sdk-64-minimal'
+ inputs:
+ artifactName: 'git-sdk-64-minimal'
+ targetPath: '$(Build.SourcesDirectory)\git-sdk-64-minimal'
+ - powershell: |
+ if ("$GITFILESHAREPWD" -ne "" -and "$GITFILESHAREPWD" -ne "`$`(gitfileshare.pwd)") {
+ cmd /c rmdir "$(Build.SourcesDirectory)\test-cache"
+ }
+ displayName: 'Unmount test-cache'
+ condition: true
+ env:
+ GITFILESHAREPWD: $(gitfileshare.pwd)
+
+- job: windows_test
+ displayName: Windows Test
+ dependsOn: windows_build
+ condition: succeeded()
+ pool: Hosted
+ timeoutInMinutes: 240
+ strategy:
+ parallel: 10
+ steps:
+ - powershell: |
+ if ("$GITFILESHAREPWD" -ne "" -and "$GITFILESHAREPWD" -ne "`$`(gitfileshare.pwd)") {
+ net use s: \\gitfileshare.file.core.windows.net\test-cache "$GITFILESHAREPWD" /user:AZURE\gitfileshare /persistent:no
+ cmd /c mklink /d "$(Build.SourcesDirectory)\test-cache" S:\
+ }
+ displayName: 'Mount test-cache'
+ env:
+ GITFILESHAREPWD: $(gitfileshare.pwd)
+ - task: DownloadPipelineArtifact@0
+ displayName: 'Download Pipeline Artifact: test artifacts'
+ inputs:
+ artifactName: 'windows-artifacts'
+ targetPath: '$(Build.SourcesDirectory)'
+ - task: DownloadPipelineArtifact@0
+ displayName: 'Download Pipeline Artifact: git-sdk-64-minimal'
+ inputs:
+ artifactName: 'git-sdk-64-minimal'
+ targetPath: '$(Build.SourcesDirectory)\git-sdk-64-minimal'
+ - powershell: |
+ & git-sdk-64-minimal\usr\bin\bash.exe -lc @"
+ test -f artifacts.tar.gz || {
+ echo No test artifacts found\; skipping >&2
+ exit 0
+ }
+ tar xf artifacts.tar.gz || exit 1
+
+ # Let Git ignore the SDK and the test-cache
+ printf '%s\n' /git-sdk-64-minimal/ /test-cache/ >>.git/info/exclude