|
32 | 32 | fail-fast: false |
33 | 33 | matrix: |
34 | 34 | os: |
35 | | - - windows-2019 |
36 | | - - windows-2022 |
| 35 | +# - windows-2019 |
| 36 | +# - windows-2022 |
| 37 | + - self-hosted |
37 | 38 | env: |
38 | 39 | GOPATH: ${{ github.workspace }}\go |
39 | 40 | GOBIN: ${{ github.workspace }}\go\bin |
|
61 | 62 | } ElseIf ("${{ matrix.os }}" -eq "windows-2022") { |
62 | 63 | echo "WINDOWS_BASE_IMAGE_TAG=${{ env.WINDOWS_BASE_TAG_2022 }}" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
63 | 64 | } |
| 65 | + echo "WINDOWS_BASE_IMAGE_TAG=${{ env.WINDOWS_BASE_TAG_2022 }}" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
64 | 66 | - |
65 | 67 | name: Cache |
66 | 68 | uses: actions/cache@v3 |
@@ -108,120 +110,6 @@ jobs: |
108 | 110 | if-no-files-found: error |
109 | 111 | retention-days: 2 |
110 | 112 |
|
111 | | - unit-test: |
112 | | - runs-on: ${{ matrix.os }} |
113 | | - strategy: |
114 | | - fail-fast: false |
115 | | - matrix: |
116 | | - os: |
117 | | - - windows-2019 |
118 | | - - windows-2022 |
119 | | - env: |
120 | | - GOPATH: ${{ github.workspace }}\go |
121 | | - GOBIN: ${{ github.workspace }}\go\bin |
122 | | - defaults: |
123 | | - run: |
124 | | - working-directory: ${{ env.GOPATH }}/src/github.com/docker/docker |
125 | | - steps: |
126 | | - - |
127 | | - name: Checkout |
128 | | - uses: actions/checkout@v3 |
129 | | - with: |
130 | | - path: ${{ env.GOPATH }}/src/github.com/docker/docker |
131 | | - - |
132 | | - name: Env |
133 | | - run: | |
134 | | - Get-ChildItem Env: | Out-String |
135 | | - - |
136 | | - name: Init |
137 | | - run: | |
138 | | - New-Item -ItemType "directory" -Path "${{ github.workspace }}\go-build" |
139 | | - New-Item -ItemType "directory" -Path "${{ github.workspace }}\go\pkg\mod" |
140 | | - New-Item -ItemType "directory" -Path "bundles" |
141 | | - If ("${{ matrix.os }}" -eq "windows-2019") { |
142 | | - echo "WINDOWS_BASE_IMAGE_TAG=${{ env.WINDOWS_BASE_TAG_2019 }}" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
143 | | - } ElseIf ("${{ matrix.os }}" -eq "windows-2022") { |
144 | | - echo "WINDOWS_BASE_IMAGE_TAG=${{ env.WINDOWS_BASE_TAG_2022 }}" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
145 | | - } |
146 | | - - |
147 | | - name: Cache |
148 | | - uses: actions/cache@v3 |
149 | | - with: |
150 | | - path: | |
151 | | - ~\AppData\Local\go-build |
152 | | - ~\go\pkg\mod |
153 | | - ${{ github.workspace }}\go-build |
154 | | - ${{ env.GOPATH }}\pkg\mod |
155 | | - key: ${{ matrix.os }}-${{ github.job }}-${{ hashFiles('**/vendor.sum') }} |
156 | | - restore-keys: | |
157 | | - ${{ matrix.os }}-${{ github.job }}- |
158 | | - - |
159 | | - name: Docker info |
160 | | - run: | |
161 | | - docker info |
162 | | - - |
163 | | - name: Build base image |
164 | | - run: | |
165 | | - docker pull ${{ env.WINDOWS_BASE_IMAGE }}:${{ env.WINDOWS_BASE_IMAGE_TAG }} |
166 | | - docker tag ${{ env.WINDOWS_BASE_IMAGE }}:${{ env.WINDOWS_BASE_IMAGE_TAG }} microsoft/windowsservercore |
167 | | - docker build --build-arg GO_VERSION -t ${{ env.TEST_IMAGE_NAME }} -f Dockerfile.windows . |
168 | | - - |
169 | | - name: Test |
170 | | - run: | |
171 | | - & docker run --name ${{ env.TEST_CTN_NAME }} -e "DOCKER_GITCOMMIT=${{ github.sha }}" ` |
172 | | - -v "${{ github.workspace }}\go-build:C:\Users\ContainerAdministrator\AppData\Local\go-build" ` |
173 | | - -v "${{ github.workspace }}\go\pkg\mod:C:\gopath\pkg\mod" ` |
174 | | - -v "${{ env.GOPATH }}\src\github.com\docker\docker\bundles:C:\gopath\src\github.com\docker\docker\bundles" ` |
175 | | - ${{ env.TEST_IMAGE_NAME }} hack\make.ps1 -TestUnit |
176 | | - - |
177 | | - name: Send to Codecov |
178 | | - if: matrix.os == 'windows-2022' |
179 | | - uses: codecov/codecov-action@v3 |
180 | | - with: |
181 | | - working-directory: ${{ env.GOPATH }}\src\github.com\docker\docker |
182 | | - directory: bundles |
183 | | - env_vars: RUNNER_OS |
184 | | - flags: unit |
185 | | - - |
186 | | - name: Upload reports |
187 | | - if: always() |
188 | | - uses: actions/upload-artifact@v3 |
189 | | - with: |
190 | | - name: ${{ matrix.os }}-unit-reports |
191 | | - path: ${{ env.GOPATH }}\src\github.com\docker\docker\bundles\* |
192 | | - |
193 | | - unit-test-report: |
194 | | - runs-on: ubuntu-latest |
195 | | - if: always() |
196 | | - needs: |
197 | | - - unit-test |
198 | | - strategy: |
199 | | - fail-fast: false |
200 | | - matrix: |
201 | | - os: |
202 | | - - windows-2019 |
203 | | - - windows-2022 |
204 | | - steps: |
205 | | - - |
206 | | - name: Set up Go |
207 | | - uses: actions/setup-go@v3 |
208 | | - with: |
209 | | - go-version: ${{ env.GO_VERSION }} |
210 | | - - |
211 | | - name: Download artifacts |
212 | | - uses: actions/download-artifact@v3 |
213 | | - with: |
214 | | - name: ${{ matrix.os }}-unit-reports |
215 | | - path: /tmp/artifacts |
216 | | - - |
217 | | - name: Install teststat |
218 | | - run: | |
219 | | - go install github.com/vearutop/teststat@${{ env.TESTSTAT_VERSION }} |
220 | | - - |
221 | | - name: Create summary |
222 | | - run: | |
223 | | - teststat -markdown $(find /tmp/artifacts -type f -name '*.json' -print0 | xargs -0) >> $GITHUB_STEP_SUMMARY |
224 | | -
|
225 | 113 | integration-test-prepare: |
226 | 114 | runs-on: ubuntu-latest |
227 | 115 | outputs: |
@@ -263,11 +151,15 @@ jobs: |
263 | 151 | fail-fast: false |
264 | 152 | matrix: |
265 | 153 | os: |
266 | | - - windows-2019 |
267 | | - - windows-2022 |
| 154 | +# - windows-2019 |
| 155 | +# - windows-2022 |
| 156 | + - self-hosted |
268 | 157 | runtime: |
269 | 158 | - builtin |
270 | | - - containerd |
| 159 | +# - containerd |
| 160 | + isolation: |
| 161 | + # - process |
| 162 | + - hyperv |
271 | 163 | test: ${{ fromJson(needs.integration-test-prepare.outputs.matrix) }} |
272 | 164 | env: |
273 | 165 | GOPATH: ${{ github.workspace }}\go |
@@ -301,6 +193,7 @@ jobs: |
301 | 193 | } ElseIf ("${{ matrix.os }}" -eq "windows-2022") { |
302 | 194 | echo "WINDOWS_BASE_IMAGE_TAG=${{ env.WINDOWS_BASE_TAG_2022 }}" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
303 | 195 | } |
| 196 | + echo "WINDOWS_BASE_IMAGE_TAG=${{ env.WINDOWS_BASE_TAG_2022 }}" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
304 | 197 | Write-Output "${{ env.BIN_OUT }}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append |
305 | 198 | - |
306 | 199 | # removes docker service that is currently installed on the runner. we |
@@ -350,6 +243,9 @@ jobs: |
350 | 243 | $runtimeArg="--containerd=\\.\pipe\containerd-containerd" |
351 | 244 | echo "DOCKER_WINDOWS_CONTAINERD_RUNTIME=1" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf-8 -Append |
352 | 245 | } |
| 246 | + If ("${{ matrix.isolation }}" -eq "hyperv") { |
| 247 | + $runtimeArg="--exec-opt isolation=hyperv" |
| 248 | + } |
353 | 249 | New-Item -ItemType Directory "$env:TEMP\moby-root" -ErrorAction SilentlyContinue | Out-Null |
354 | 250 | New-Item -ItemType Directory "$env:TEMP\moby-exec" -ErrorAction SilentlyContinue | Out-Null |
355 | 251 | Start-Process -Wait -NoNewWindow "${{ env.BIN_OUT }}\dockerd" ` |
@@ -492,11 +388,15 @@ jobs: |
492 | 388 | fail-fast: false |
493 | 389 | matrix: |
494 | 390 | os: |
495 | | - - windows-2019 |
496 | | - - windows-2022 |
| 391 | +# - windows-2019 |
| 392 | +# - windows-2022 |
| 393 | + - self-hosted |
497 | 394 | runtime: |
498 | 395 | - builtin |
499 | | - - containerd |
| 396 | +# - containerd |
| 397 | + isolation: |
| 398 | + # - process |
| 399 | + - hyperv |
500 | 400 | steps: |
501 | 401 | - |
502 | 402 | name: Set up Go |
|
0 commit comments