Skip to content

Commit 1568a65

Browse files
authored
chore(test): updating podman and mapt image versions (#265)
* chore(test): updating podman and mapt image versions
1 parent 665afa4 commit 1568a65

1 file changed

Lines changed: 138 additions & 202 deletions

File tree

.github/workflows/rhel-e2e-nightly-windows.yaml

Lines changed: 138 additions & 202 deletions
Original file line numberDiff line numberDiff line change
@@ -19,27 +19,22 @@ name: Podman Desktop RHEL Extension E2E Nightly
1919

2020
on:
2121
schedule:
22-
- cron: '0 4 * * *'
22+
- cron: '0 4 * * *' # At 04:00 every day
2323
workflow_dispatch:
2424
inputs:
25-
fork:
26-
default: 'podman-desktop'
27-
description: 'Podman Desktop repo fork'
28-
type: string
29-
required: true
30-
branch:
31-
default: 'main'
32-
description: 'Podman Desktop repo branch'
25+
podman_desktop_repo_args:
26+
default: 'REPO=podman-desktop,FORK=podman-desktop,BRANCH=main'
27+
description: 'Podman Desktop repo fork and branch'
3328
type: string
3429
required: true
3530
ext_repo_options:
3631
default: 'REPO=podman-desktop-rhel-ext,FORK=redhat-developer,BRANCH=main'
3732
description: 'Podman Desktop Extension repo, fork and branch'
3833
type: string
3934
required: true
40-
ext_tests:
41-
default: '1'
42-
description: 'Run E2E tests from extension'
35+
ext_tests_options:
36+
default: 'EXT_RUN_TESTS_FROM_EXTENSION=1,EXT_RUN_TESTS_AS_ADMIN=1'
37+
description: 'E2E tests options in format VAR1=xxx,VAR2=true,VAR3=15 etc.'
4338
type: string
4439
required: true
4540
npm_target:
@@ -48,227 +43,168 @@ on:
4843
type: string
4944
required: true
5045
podman_remote_url:
51-
default: 'https://github.com/containers/podman/releases/download/v5.4.2/podman-5.4.2-setup.exe'
52-
description: 'podman setup exe'
46+
default: 'https://github.com/containers/podman/releases/download/v5.6.1/podman-5.6.1-setup.exe'
47+
description: 'podman remote setup exe'
5348
type: string
5449
required: true
5550
podman_options:
5651
default: 'INIT=1,START=1,ROOTFUL=1,NETWORKING=0'
5752
description: 'Podman machine configuration options, no spaces'
58-
type: 'string'
53+
type: string
5954
required: true
6055
env_vars:
61-
default: 'TEST_PODMAN_MACHINE=true'
62-
description: 'Env. Variables passed into target machine, ie: VAR1=xxx,VAR2=true,VAR3=15,VAR4="Pass me along"'
63-
type: 'string'
56+
default: 'TEST_PODMAN_MACHINE=true,ELECTRON_ENABLE_INSPECT=true'
57+
description: 'Env. Variables passed into target machine, ie: VAR1=xxx,VAR2=true...'
58+
type: string
59+
required: true
60+
pde2e_image_version:
61+
default: 'v0.0.3'
62+
description: 'PDE2E runner, builder, podman image versions'
63+
type: string
6464
required: true
6565
podman_provider:
6666
default: 'wsl'
6767
description: 'Podman virtualization provider'
6868
type: 'string'
6969
required: true
70-
images_version:
71-
default: 'BUILDER="v0.0.3",PODMAN="v0.0.3",RUNNER="v0.0.3"'
72-
description: 'Testing images versions, no spaces'
73-
type: 'string'
70+
mapt_params:
71+
default: 'IMAGE=quay.io/redhat-developer/mapt;VERSION_TAG=v0.9.7;CPUS=8;MEMORY=32;EXCLUDED_REGIONS="westindia,centralindia,southindia,australiacentral,australiacentral2,australiaeast,australiasoutheast,southafricanorth,southafricawest"'
72+
description: 'MAPT image, version tag, cpus and memory request, and excluded regions in format IMAGE=xxx;VERSION_TAG=xxx;CPUS=xxx;MEMORY=xxx;EXCLUDED_REGIONS=xxx'
7473
required: true
74+
type: string
7575

7676
jobs:
7777
windows:
78+
timeout-minutes: 120
7879
name: windows-${{ matrix.windows-version }}-${{ matrix.windows-featurepack }}
7980
runs-on: ubuntu-24.04
80-
env:
81-
MAPT_VERSION: v0.8.2
82-
MAPT_IMAGE: quay.io/redhat-developer/mapt
8381
strategy:
8482
fail-fast: false
8583
matrix:
86-
windows-version: ['10','11']
84+
windows-version: ['10', '11']
8785
windows-featurepack: ['22h2-ent', '23h2-ent']
8886
exclude:
89-
- windows-version: '10'
90-
windows-featurepack: '23h2-ent'
91-
- windows-version: '11'
92-
windows-featurepack: '22h2-ent'
93-
87+
- windows-version: '10'
88+
windows-featurepack: '23h2-ent'
89+
- windows-version: '11'
90+
windows-featurepack: '22h2-ent'
9491

9592
steps:
96-
- name: Get Podman version used by Desktop
97-
run: |
98-
version=$(curl https://raw.githubusercontent.com/containers/podman-desktop/main/extensions/podman/packages/extension/src/podman5.json | jq -r '.version')
99-
echo "Default Podman Version from Podman Desktop: ${version}"
100-
echo "PD_PODMAN_VERSION=${version}" >> $GITHUB_ENV
101-
- name: Set the default env. variables
102-
env:
103-
DEFAULT_FORK: 'podman-desktop'
104-
DEFAULT_BRANCH: 'main'
105-
DEFAULT_EXT_TESTS: '1'
106-
DEFAULT_NPM_TARGET: 'test:e2e'
107-
DEFAULT_ENV_VARS: 'TEST_PODMAN_MACHINE=true'
108-
DEFAULT_PODMAN_OPTIONS: 'INIT=1,START=1,ROOTFUL=1,NETWORKING=0'
109-
DEFAULT_PODMAN_PROVIDER: 'wsl'
110-
DEFAULT_EXT_REPO_OPTIONS: 'REPO=podman-desktop-rhel-ext,FORK=redhat-developer,BRANCH=main'
111-
DEFAULT_URL: "https://github.com/containers/podman/releases/download/v$DEFAULT_VERSION/podman-$DEFAULT_VERSION-setup.exe"
112-
DEFAULT_VERSION: "${{ env.PD_PODMAN_VERSION || '5.4.2' }}"
113-
DEFAULT_IMAGES_VERSIONS: 'BUILDER="v0.0.3",PODMAN="v0.0.3",RUNNER="v0.0.3"'
114-
run: |
115-
echo "FORK=${{ github.event.inputs.fork || env.DEFAULT_FORK }}" >> $GITHUB_ENV
116-
echo "BRANCH=${{ github.event.inputs.branch || env.DEFAULT_BRANCH }}" >> $GITHUB_ENV
117-
echo "NPM_TARGET=${{ github.event.inputs.npm_target || env.DEFAULT_NPM_TARGET }}" >> $GITHUB_ENV
118-
echo "ENV_VARS=${{ github.event.inputs.env_vars || env.DEFAULT_ENV_VARS }}" >> $GITHUB_ENV
119-
echo "PODMAN_PROVIDER=${{ github.event.inputs.podman_provider || env.DEFAULT_PODMAN_PROVIDER }}" >> $GITHUB_ENV
120-
echo "PODMAN_URL=${{ github.event.inputs.podman_remote_url || env.DEFAULT_URL }}" >> $GITHUB_ENV
121-
echo "EXT_TESTS=${{ github.event.inputs.ext_tests || env.DEFAULT_EXT_TESTS }}" >> $GITHUB_ENV
122-
echo "${{ github.event.inputs.podman_options || env.DEFAULT_PODMAN_OPTIONS }}" | awk -F ',' \
123-
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "PODMAN_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
124-
echo "${{ github.event.inputs.ext_repo_options || env.DEFAULT_EXT_REPO_OPTIONS }}" | awk -F ',' \
125-
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "EXT_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
126-
echo "${{ github.event.inputs.images_version || env.DEFAULT_IMAGES_VERSIONS }}" | awk -F ',' \
127-
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "PDE2E_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
93+
- name: Get Podman version used by Desktop
94+
run: |
95+
version=$(curl https://raw.githubusercontent.com/containers/podman-desktop/main/extensions/podman/packages/extension/src/podman5.json | jq -r '.version')
96+
echo "Default Podman Version from Podman Desktop: ${version}"
97+
echo "PD_PODMAN_VERSION=${version}" >> $GITHUB_ENV
98+
- name: Set the default env. variables
99+
env:
100+
DEFAULT_PODMAN_DESKTOP_REPO_ARGS: 'REPO=podman-desktop,FORK=podman-desktop,BRANCH=main'
101+
DEFAULT_NPM_TARGET: 'test:e2e'
102+
DEFAULT_PODMAN_PROVIDER: 'wsl'
103+
DEFAULT_ENV_VARS: 'TEST_PODMAN_MACHINE=true,ELECTRON_ENABLE_INSPECT=true'
104+
DEFAULT_PODMAN_OPTIONS: 'INIT=1,START=1,ROOTFUL=1,NETWORKING=0'
105+
DEFAULT_EXT_TESTS_OPTIONS: 'EXT_RUN_TESTS_FROM_EXTENSION=1,EXT_RUN_TESTS_AS_ADMIN=0'
106+
DEFAULT_EXT_REPO_OPTIONS: 'REPO=podman-desktop-rhel-ext,FORK=redhat-developer,BRANCH=main'
107+
DEFAULT_PODMAN_VERSION: "${{ env.PD_PODMAN_VERSION || '5.6.1' }}"
108+
DEFAULT_URL: 'https://github.com/containers/podman/releases/download/v$DEFAULT_PODMAN_VERSION/podman-$DEFAULT_PODMAN_VERSION-setup.exe'
109+
DEFAULT_PDE2E_IMAGE_VERSION: 'v0.0.3-windows'
110+
DEFAULT_MAPT_PARAMS: 'IMAGE=${{ vars.MAPT_IMAGE || ''quay.io/redhat-developer/mapt'' }};VERSION_TAG=${{ vars.MAPT_VERSION_TAG || ''v0.9.7'' }};CPUS=${{ vars.MAPT_CPUS || ''8 '' }};MEMORY=${{ vars.MAPT_MEMORY || ''32'' }};EXCLUDED_REGIONS="${{ vars.MAPT_EXCLUDED_REGIONS || ''westindia,centralindia,southindia,australiacentral,australiacentral2,australiaeast,australiasoutheast,southafricanorth,southafricawest'' }}"'
111+
run: |
112+
echo "NPM_TARGET=${{ github.event.inputs.npm_target || env.DEFAULT_NPM_TARGET }}" >> $GITHUB_ENV
113+
echo "ENV_VARS=${{ github.event.inputs.env_vars || env.DEFAULT_ENV_VARS }}" >> $GITHUB_ENV
114+
echo "PODMAN_PROVIDER=${{ github.event.inputs.podman_provider || env.DEFAULT_PODMAN_PROVIDER }}" >> $GITHUB_ENV
115+
echo "PODMAN_URL=${{ github.event.inputs.podman_remote_url || env.DEFAULT_URL }}" >> $GITHUB_ENV
116+
echo "PDE2E_IMAGE_VERSION=${{ github.event.inputs.pde2e_image_version || env.DEFAULT_PDE2E_IMAGE_VERSION }}" >> $GITHUB_ENV
117+
echo "${{ github.event.inputs.podman_desktop_repo_args || env.DEFAULT_PODMAN_DESKTOP_REPO_ARGS }}" | awk -F ',' \
118+
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "PD_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
119+
echo "${{ github.event.inputs.ext_tests_options || env.DEFAULT_EXT_TESTS_OPTIONS }}" | awk -F ',' \
120+
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print kv[1]"="kv[2]}}' >> $GITHUB_ENV
121+
echo "${{ github.event.inputs.podman_options || env.DEFAULT_PODMAN_OPTIONS }}" | awk -F ',' \
122+
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "PODMAN_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
123+
echo "${{ github.event.inputs.ext_repo_options || env.DEFAULT_EXT_REPO_OPTIONS }}" | awk -F ',' \
124+
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "EXT_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
125+
echo "${{ github.event.inputs.mapt_params || env.DEFAULT_MAPT_PARAMS }}" | awk -F ';' \
126+
'{for (i=1; i<=NF; i++) {split($i, kv, "="); print "MAPT_"kv[1]"="kv[2]}}' >> $GITHUB_ENV
127+
128+
- name: Create instance
129+
uses: podman-desktop/e2e/.github/actions/create-instance@36e440f2ac18193214f4ffa8f7f1c4c0cb8c9446
130+
with:
131+
mapt-image: ${{ env.MAPT_IMAGE || '' }}
132+
mapt-version: ${{ env.MAPT_VERSION_TAG || '' }}
133+
windows-version: ${{ matrix.windows-version }}
134+
windows-featurepack: ${{ matrix.windows-featurepack }}
135+
cpus: ${{ env.MAPT_CPUS || '' }}
136+
memory: ${{ env.MAPT_MEMORY || '' }}
137+
excluded-regions: ${{ env.MAPT_EXCLUDED_REGIONS || '' }}
138+
arm-tenant-id: ${{ secrets.ARM_TENANT_ID }}
139+
arm-subscription-id: ${{ secrets.ARM_SUBSCRIPTION_ID }}
140+
arm-client-id: ${{ secrets.ARM_CLIENT_ID }}
141+
arm-client-secret: ${{ secrets.ARM_CLIENT_SECRET }}
128142

129-
- name: Create instance
130-
run: |
131-
# Create instance
132-
podman run -d --name windows-create --rm \
133-
-v ${PWD}:/workspace:z \
134-
-e ARM_TENANT_ID=${{ secrets.ARM_TENANT_ID }} \
135-
-e ARM_SUBSCRIPTION_ID=${{ secrets.ARM_SUBSCRIPTION_ID }} \
136-
-e ARM_CLIENT_ID=${{ secrets.ARM_CLIENT_ID }} \
137-
-e ARM_CLIENT_SECRET='${{ secrets.ARM_CLIENT_SECRET }}' \
138-
${{ env.MAPT_IMAGE }}:${{ env.MAPT_VERSION }} azure \
139-
windows create \
140-
--project-name 'windows-desktop' \
141-
--backed-url 'file:///workspace' \
142-
--conn-details-output '/workspace' \
143-
--windows-version '${{ matrix.windows-version }}' \
144-
--windows-featurepack '${{ matrix.windows-featurepack }}' \
145-
--nested-virt \
146-
--cpus 8 \
147-
--memory 24 \
148-
--tags project=podman-desktop \
149-
--spot
150-
# Check logs
151-
podman logs -f windows-create
143+
- name: Check instance system info
144+
uses: podman-desktop/e2e/.github/actions/instance-system-info@3548105f45def129d5e3aaa5a3d922e09ac892d9
152145

153-
- name: Check instance system info
154-
run: |
155-
ssh -i id_rsa \
156-
-o StrictHostKeyChecking=no \
157-
-o UserKnownHostsFile=/dev/null \
158-
-o ServerAliveInterval=30 \
159-
-o ServerAliveCountMax=1200 \
160-
$(cat username)@$(cat host) "systeminfo"
146+
- name: Emulate X session
147+
uses: podman-desktop/e2e/.github/actions/emulate-x-session@3548105f45def129d5e3aaa5a3d922e09ac892d9
161148

162-
- name: Emulate X session
163-
run: |
164-
# use fake rdp to emulate an active x session
165-
podman run -d --name x-session \
166-
-e RDP_HOST=$(cat host) \
167-
-e RDP_USER=$(cat username) \
168-
-e RDP_PASSWORD=$(cat userpassword) \
169-
quay.io/rhqp/frdp:v0.0.1
170-
# Wait until the x session has been created
171-
podman wait --condition running x-session
172-
# Check logs for the x session
173-
podman logs x-session
149+
- name: Download Podman, do not initialize
150+
uses: podman-desktop/e2e/.github/actions/download-podman-nightly@952cafee20ca82b1ce48b29c848bac1c31062245
151+
with:
152+
podman-image-tag: ${{ env.PDE2E_IMAGE_VERSION }}
153+
podman-download-url: ${{ env.PODMAN_URL }}
174154

175-
- name: Download Podman, do not initialize
176-
run: |
177-
podman run --rm -d --name pde2e-podman-run \
178-
-e TARGET_HOST=$(cat host) \
179-
-e TARGET_HOST_USERNAME=$(cat username) \
180-
-e TARGET_HOST_KEY_PATH=/data/id_rsa \
181-
-e TARGET_FOLDER=pd-e2e \
182-
-e TARGET_CLEANUP=false \
183-
-e TARGET_RESULTS=results \
184-
-e OUTPUT_FOLDER=/data \
185-
-e DEBUG=true \
186-
-v $PWD:/data:z \
187-
quay.io/odockal/pde2e-podman:${{ env.PDE2E_PODMAN }}-windows \
188-
pd-e2e/podman.ps1 \
189-
-downloadUrl ${{ env.PODMAN_URL }} \
190-
-targetFolder pd-e2e \
191-
-resultsFolder results \
192-
-podmanProvider ${{ env.PODMAN_PROVIDER }} \
193-
-initialize 0 \
194-
-rootful 0 \
195-
-start 0 \
196-
-installWSL 0
197-
# check logs
198-
podman logs -f pde2e-podman-run
155+
- name: Build Podman Desktop Electron Inspect Enabled binary
156+
uses: podman-desktop/e2e/.github/actions/build-podman-desktop@0c1f0a035e0949941fd6abf959ab556ceec13f03
157+
with:
158+
fork: ${{ env.PD_FORK }}
159+
branch: ${{ env.PD_BRANCH }}
160+
env-vars: ${{ env.ENV_VARS }}
199161

200-
- name: Run Podman Desktop Playwright E2E tests
201-
env:
202-
DVLPR_USERNAME: ${{ secrets.DVLPR_USERNAME }}
203-
DVLPR_PASSWORD: ${{ secrets.DVLPR_PASSWORD }}
204-
run: |
205-
echo "DVLPR_USERNAME=${DVLPR_USERNAME}" >> secrets.txt
206-
echo "DVLPR_PASSWORD=${DVLPR_PASSWORD}" >> secrets.txt
207-
podman run -d --name pde2e-runner-run \
208-
-e TARGET_HOST=$(cat host) \
209-
-e TARGET_HOST_USERNAME=$(cat username) \
210-
-e TARGET_HOST_KEY_PATH=/data/id_rsa \
211-
-e TARGET_FOLDER=pd-e2e \
212-
-e TARGET_RESULTS=results \
213-
-e TARGET_CLEANUP=false \
214-
-e OUTPUT_FOLDER=/data \
215-
-e DEBUG=true \
216-
-v $PWD:/data:z \
217-
-v $PWD/secrets.txt:/opt/pde2e-runner/secrets.txt:z \
218-
quay.io/odockal/pde2e-runner:${{ env.PDE2E_RUNNER }}-windows \
219-
pd-e2e/runner.ps1 \
220-
-targetFolder pd-e2e \
221-
-resultsFolder results \
222-
-podmanPath $(cat results/podman-location.log) \
223-
-fork ${{ env.FORK }} \
224-
-branch ${{ env.BRANCH }} \
225-
-extRepo ${{ env.EXT_REPO }} \
226-
-extFork ${{ env.EXT_FORK }} \
227-
-extBranch ${{ env.EXT_BRANCH }} \
228-
-extTests ${{ env.EXT_TESTS }} \
229-
-npmTarget ${{ env.NPM_TARGET }} \
230-
-initialize ${{ env.PODMAN_INIT }} \
231-
-rootful ${{ env.PODMAN_ROOTFUL }} \
232-
-start ${{ env.PODMAN_START }} \
233-
-userNetworking ${{ env.PODMAN_NETWORKING }} \
234-
-podmanProvider ${{ env.PODMAN_PROVIDER }} \
235-
-secretFile secrets.txt \
236-
-envVars ${{ env.ENV_VARS }}
237-
# check logs
238-
podman logs -f pde2e-runner-run
162+
- name: Run Podman Desktop Playwright E2E tests
163+
uses: podman-desktop/e2e/.github/actions/run-playwright-test@15b800edab941d394b32aaaa3f7961bb7db7ec3a
164+
with:
165+
pde2e-runner-tag: ${{ env.PDE2E_IMAGE_VERSION }}
166+
podman-desktop-path: true
167+
fork-repo: ${{ env.PD_FORK }}
168+
branch-name: ${{ env.PD_BRANCH }}
169+
ext-repo: ${{ env.EXT_REPO }}
170+
ext-fork: ${{ env.EXT_FORK }}
171+
ext-branch: ${{ env.EXT_BRANCH }}
172+
ext-tests: ${{ env.EXT_RUN_TESTS_FROM_EXTENSION }}
173+
npm-target: ${{ env.NPM_TARGET }}
174+
podman-init: ${{ env.PODMAN_INIT }}
175+
podman-start: ${{ env.PODMAN_START }}
176+
rootful: ${{ env.PODMAN_ROOTFUL }}
177+
user-networking: ${{ env.PODMAN_NETWORKING }}
178+
podman-provider: ${{ env.PODMAN_PROVIDER }}
179+
env-vars: ${{ env.ENV_VARS }}
180+
ci-bot-token: ${{ secrets.PODMAN_DESKTOP_BOT_TOKEN }}
239181

240-
- name: Destroy instance
241-
if: always()
242-
run: |
243-
# Destroy instance
244-
podman run -d --name windows-destroy --rm \
245-
-v ${PWD}:/workspace:z \
246-
-e ARM_TENANT_ID=${{ secrets.ARM_TENANT_ID }} \
247-
-e ARM_SUBSCRIPTION_ID=${{ secrets.ARM_SUBSCRIPTION_ID }} \
248-
-e ARM_CLIENT_ID=${{ secrets.ARM_CLIENT_ID }} \
249-
-e ARM_CLIENT_SECRET='${{ secrets.ARM_CLIENT_SECRET }}' \
250-
${{ env.MAPT_IMAGE }}:${{ env.MAPT_VERSION }} azure \
251-
windows destroy \
252-
--project-name 'windows-desktop' \
253-
--backed-url 'file:///workspace'
254-
# Check logs
255-
podman logs -f windows-destroy
182+
- name: Destroy instance
183+
if: always()
184+
uses: podman-desktop/e2e/.github/actions/destroy-instance@36e440f2ac18193214f4ffa8f7f1c4c0cb8c9446
185+
with:
186+
mapt-image: ${{ env.MAPT_IMAGE }}
187+
mapt-version: ${{ env.MAPT_VERSION_TAG }}
188+
arm-tenant-id: ${{ secrets.ARM_TENANT_ID }}
189+
arm-subscription-id: ${{ secrets.ARM_SUBSCRIPTION_ID }}
190+
arm-client-id: ${{ secrets.ARM_CLIENT_ID }}
191+
arm-client-secret: ${{ secrets.ARM_CLIENT_SECRET }}
256192

257-
- name: Publish Test Report
258-
uses: mikepenz/action-junit-report@v5
259-
if: always() # always run even if the previous step fails
260-
with:
261-
annotate_only: true
262-
fail_on_failure: true
263-
include_passed: true
264-
detailed_summary: true
265-
require_tests: true
266-
report_paths: '**/*results.xml'
193+
- name: Publish Test Report
194+
uses: mikepenz/action-junit-report@v5
195+
if: always() # always run even if the previous step fails
196+
with:
197+
annotate_only: true
198+
fail_on_failure: true
199+
include_passed: true
200+
detailed_summary: true
201+
require_tests: true
202+
report_paths: '**/*results.xml'
267203

268-
- name: Upload test artifacts
269-
uses: actions/upload-artifact@v4
270-
if: always()
271-
with:
272-
name: results-e2e-${{ matrix.windows-version }}${{ matrix.windows-featurepack }}
273-
path: |
274-
results/*
204+
- name: Upload test artifacts
205+
uses: actions/upload-artifact@v4
206+
if: always()
207+
with:
208+
name: results-e2e-${{ matrix.windows-version }}${{ matrix.windows-featurepack }}
209+
path: |
210+
results/*

0 commit comments

Comments
 (0)