|
57 | 57 | $SKIP_CUDA_BINDINGS_TEST = 0
|
58 | 58 | }
|
59 | 59 |
|
60 |
| - if ('${{ inputs.local-ctk }}' -eq '1') { |
61 |
| - if ($TEST_CUDA_MAJOR -eq '12') { |
62 |
| - $MINI_CTK_DEPS = '["nvcc", "nvrtc", "nvjitlink", "thrust"]' |
63 |
| - } else { |
64 |
| - $MINI_CTK_DEPS = '["nvcc", "nvrtc", "thrust"]' |
65 |
| - } |
66 |
| - } |
67 |
| -
|
68 | 60 | # Make outputs from the previous job as env vars
|
69 | 61 | $CUDA_CORE_ARTIFACT_BASENAME = "cuda-core-python${PYTHON_VERSION_FORMATTED}-${{ inputs.host-platform }}"
|
70 | 62 | "PYTHON_VERSION_FORMATTED=${PYTHON_VERSION_FORMATTED}" >> $env:GITHUB_ENV
|
|
76 | 68 | "CUDA_BINDINGS_ARTIFACT_NAME=${CUDA_BINDINGS_ARTIFACT_BASENAME}-${{ github.sha }}" >> $env:GITHUB_ENV
|
77 | 69 | "CUDA_BINDINGS_ARTIFACTS_DIR=$($ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath("$REPO_DIR\cuda_bindings\dist"))" >> $env:GITHUB_ENV
|
78 | 70 | "SKIP_CUDA_BINDINGS_TEST=${SKIP_CUDA_BINDINGS_TEST}" >> $env:GITHUB_ENV
|
79 |
| - "MINI_CTK_DEPS=${MINI_CTK_DEPS}" >> $env:GITHUB_ENV |
80 | 71 |
|
81 | 72 | - name: Download cuda-python build artifacts
|
82 | 73 | if: ${{ env.SKIP_CUDA_BINDINGS_TEST == '0'}}
|
@@ -107,6 +98,36 @@ jobs:
|
107 | 98 | }
|
108 | 99 | gh --version
|
109 | 100 |
|
| 101 | + - name: Install Git for Windows |
| 102 | + # the GPU runner image does not have Git Bash pre-installed... |
| 103 | + if: ${{ inputs.local-ctk == '1' }} |
| 104 | + env: |
| 105 | + # doesn't seem there's an easy way to avoid hard-coding it? |
| 106 | + GFW_EXE_URL: https://github.com/git-for-windows/git/releases/download/v2.49.0.windows.1/PortableGit-2.49.0-64-bit.7z.exe |
| 107 | + run: | |
| 108 | + Invoke-WebRequest -Uri "$env:GFW_EXE_URL" -OutFile "PortableGit.7z.exe" |
| 109 | + # Self-extracting, see https://gitforwindows.org/zip-archives-extracting-the-released-archives.html |
| 110 | + Start-Process .\PortableGit.7z.exe -Wait -Verbose -ArgumentList '-y -gm2' |
| 111 | + ls -l PortableGit |
| 112 | + echo "$((Get-Location).Path)\\PortableGit\\bin" >> $env:GITHUB_PATH |
| 113 | + $env:Path += ";$((Get-Location).Path)\\PortableGit\\bin" |
| 114 | + bash --version |
| 115 | +
|
| 116 | + - name: Install zstd |
| 117 | + # the GPU runner image does not have zstd pre-installed... and it's needed by actions/cache |
| 118 | + if: ${{ inputs.local-ctk == '1' }} |
| 119 | + env: |
| 120 | + # doesn't seem there's an easy way to avoid hard-coding it? |
| 121 | + ZSTD_URL: https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-v1.5.7-win64.zip |
| 122 | + ZSTD_DIR: zstd-v1.5.7-win64 |
| 123 | + run: | |
| 124 | + Invoke-WebRequest -Uri "$env:ZSTD_URL" -OutFile "zstd-win64.zip" |
| 125 | + Expand-Archive -Path "zstd-win64.zip" -DestinationPath . |
| 126 | + ls -l $env:ZSTD_DIR |
| 127 | + echo "$((Get-Location).Path)\\$env:ZSTD_DIR" >> $env:GITHUB_PATH |
| 128 | + $env:Path += ";$((Get-Location).Path)\\$env:ZSTD_DIR" |
| 129 | + zstd --version |
| 130 | +
|
110 | 131 | - name: Download cuda-python & cuda.bindings build artifacts from the prior branch
|
111 | 132 | if: ${{ env.SKIP_CUDA_BINDINGS_TEST == '1'}}
|
112 | 133 | env:
|
@@ -160,20 +181,11 @@ jobs:
|
160 | 181 |
|
161 | 182 | - name: Set up mini CTK
|
162 | 183 | if: ${{ inputs.local-ctk == '1' }}
|
163 |
| - # Note: The GH-hosted Windows GPU runner does not have Git for Windows pre-installed, |
164 |
| - # so we cannot use our own fetch_ctk action unfortunately... |
165 |
| - uses: Jimver/cuda-toolkit@v0.2.21 |
| 184 | + uses: ./.github/actions/fetch_ctk |
| 185 | + continue-on-error: false |
166 | 186 | with:
|
167 |
| - cuda: ${{ inputs.cuda-version }} |
168 |
| - method: 'network' |
169 |
| - sub-packages: ${{ env.MINI_CTK_DEPS }} |
170 |
| - |
171 |
| - - name: Update PATH |
172 |
| - if: ${{ inputs.local-ctk == '1' }} |
173 |
| - run: | |
174 |
| - # mimics actual CTK installation |
175 |
| - echo $PATH |
176 |
| - echo "$env:CUDA_PATH\nvvm\bin" >> $env:GITHUB_PATH |
| 187 | + host-platform: ${{ inputs.host-platform }} |
| 188 | + cuda-version: ${{ inputs.cuda-version }} |
177 | 189 |
|
178 | 190 | - name: Run cuda.bindings tests
|
179 | 191 | if: ${{ env.SKIP_CUDA_BINDINGS_TEST == '0' }}
|
|
0 commit comments