Skip to content

Commit 056719d

Browse files
[CI] Remove matrix usage in windows tasks (#10918)
We only have single configuration on Windows and Linux has switched not to use matrix generator earlier. Remove last usage and the matrix generator infrastructure with it. This PR also inlines `devops/actions/e2e-tests-win/action.yml` directly into `.github/workflows/sycl_windows_build_and_test.yml`. I decided not to outline windows end-to-end task into `.github/workflow/sycl_windows_run_tests.yml` (unlike Linux) because we don't use docker images for Windows and can't have one with pre-installed nightly build. This can be re-visited later.
1 parent 7b81485 commit 056719d

File tree

8 files changed

+37
-441
lines changed

8 files changed

+37
-441
lines changed

.github/workflows/sycl_gen_test_matrix.yml

Lines changed: 0 additions & 79 deletions
This file was deleted.

.github/workflows/sycl_nightly.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -73,23 +73,12 @@ jobs:
7373
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
7474
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}
7575

76-
77-
test_matrix:
78-
if: github.repository == 'intel/llvm'
79-
name: Generate Test Matrix
80-
uses: ./.github/workflows/sycl_gen_test_matrix.yml
81-
with:
82-
lts_config: "win_l0_gen12"
83-
8476
windows_default:
8577
name: Windows
8678
if: github.repository == 'intel/llvm'
8779
uses: ./.github/workflows/sycl_windows_build_and_test.yml
88-
needs: test_matrix
8980
with:
9081
retention-days: 90
91-
lts_matrix: ${{ needs.test_matrix.outputs.lts_wn_matrix }}
92-
9382
# We upload both Linux/Windows build via Github's "Releases"
9483
# functionality, make sure Linux/Windows names follow the same pattern.
9584
artifact_archive_name: sycl_windows.tar.gz

.github/workflows/sycl_post_commit.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -50,21 +50,10 @@ jobs:
5050
sycl_toolchain_archive: ${{ needs.build.outputs.artifact_archive_name }}
5151
sycl_toolchain_decompress_command: ${{ needs.build.outputs.artifact_decompress_command }}
5252

53-
# This job generates matrix of tests for SYCL End-to-End tests on Windows
54-
test_matrix:
55-
name: Generate Test Matrix
56-
if: github.repository == 'intel/llvm'
57-
uses: ./.github/workflows/sycl_gen_test_matrix.yml
58-
with:
59-
lts_config: "win_l0_gen12"
60-
6153
windows_default:
6254
name: Windows
63-
needs: test_matrix
6455
if: github.repository == 'intel/llvm'
6556
uses: ./.github/workflows/sycl_windows_build_and_test.yml
66-
with:
67-
lts_matrix: ${{ needs.test_matrix.outputs.lts_wn_matrix }}
6857

6958
macos_default:
7059
name: macOS

.github/workflows/sycl_precommit_windows.yml

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -57,23 +57,14 @@ jobs:
5757
with:
5858
path: src
5959

60-
# This job generates matrix of tests for SYCL End-to-End tests
61-
test_matrix:
62-
name: Generate Test Matrix
63-
uses: ./.github/workflows/sycl_gen_test_matrix.yml
64-
with:
65-
ref: ${{ github.event.pull_request.head.sha }}
66-
lts_config: "win_l0_gen12"
67-
6860
windows_default:
6961
name: Windows
70-
needs: [lint, test_matrix, detect_changes]
62+
needs: [lint, detect_changes]
7163
if: |
7264
always()
7365
&& (success() || contains(github.event.pull_request.labels.*.name, 'ignore-lint'))
7466
&& github.repository == 'intel/llvm'
7567
uses: ./.github/workflows/sycl_windows_build_and_test.yml
7668
with:
77-
lts_matrix: ${{ needs.test_matrix.outputs.lts_wn_matrix }}
7869
build_ref: ${{ github.sha }}
7970
changes: ${{ needs.detect_changes.outputs.filters }}

.github/workflows/sycl_windows_build_and_test.yml

Lines changed: 36 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,6 @@ on:
1010
build_ref:
1111
type: string
1212
required: false
13-
lts_matrix:
14-
type: string
15-
required: false
16-
default: "[]"
1713
changes:
1814
type: string
1915
description: 'Filter matches for the changed files in the PR'
@@ -127,14 +123,9 @@ jobs:
127123
e2e-tests:
128124
needs: build
129125
# Continue if build was successful.
130-
if: ${{ always() && needs.build.outputs.build_conclusion == 'success' && inputs.lts_matrix != '[]' }}
131-
strategy:
132-
fail-fast: false
133-
matrix:
134-
include: ${{ fromJSON(inputs.lts_matrix) }}
135-
name: ${{ matrix.name }}
136-
runs-on: ${{ matrix.runs-on }}
137-
env: ${{ matrix.env }}
126+
if: ${{ always() && needs.build.outputs.build_conclusion == 'success' }}
127+
name: SYCL E2E on Windows
128+
runs-on: [Windows, gen12]
138129
steps:
139130
- uses: ilammy/msvc-dev-cmd@7315a94840631165970262a99c72cfb48a65d25d
140131
with:
@@ -152,10 +143,37 @@ jobs:
152143
path: llvm
153144
- name: Register cleanup after job is finished
154145
uses: ./llvm/devops/actions/cleanup
155-
- uses: ./llvm/devops/actions/e2e-tests-win
156-
name: Run SYCL End-to-End tests
146+
- name: Download compiler toolchain
147+
uses: actions/download-artifact@v3
157148
with:
158-
sycl_artifact: sycl_windows_default
159-
sycl_archive: ${{ inputs.artifact_archive_name }}
160-
targets: ${{ matrix.targets }}
161-
cmake_args: '${{ matrix.cmake_args }}'
149+
name: sycl_windows_default
150+
- name: Extract SYCL toolchain
151+
shell: bash
152+
run: |
153+
mkdir install
154+
tar -xf ${{ inputs.artifact_archive_name }} -C install
155+
rm ${{ inputs.artifact_archive_name }}
156+
- name: Setup SYCL toolchain
157+
run: |
158+
echo "PATH=$env:GITHUB_WORKSPACE\\install\\bin;$env:PATH" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
159+
- run: |
160+
sycl-ls
161+
- run: |
162+
sycl-ls --verbose
163+
- name: Configure E2E with Level Zero target
164+
shell: cmd
165+
run: |
166+
mkdir build-e2e
167+
cmake -GNinja -B build-e2e -S.\llvm\sycl\test-e2e -DSYCL_TEST_E2E_TARGETS="ext_oneapi_level_zero:gpu" -DCMAKE_CXX_COMPILER="clang++" -DLEVEL_ZERO_LIBS_DIR="D:\github\level-zero_win-sdk\lib" -DLLVM_LIT="..\llvm\llvm\utils\lit\lit.py"
168+
- name: Run End-to-End tests
169+
shell: bash
170+
run: |
171+
# Run E2E tests.
172+
export LIT_OPTS="-v --no-progress-bar --show-unsupported --max-time 3600 --time-tests"
173+
cmake --build build-e2e --target check-sycl-e2e
174+
- name: Cleanup
175+
shell: cmd
176+
if: always()
177+
run: |
178+
rmdir /q /s install
179+
rmdir /q /s build-e2e

devops/actions/e2e-tests-win/action.yml

Lines changed: 0 additions & 52 deletions
This file was deleted.

0 commit comments

Comments
 (0)