Skip to content

Commit b9fc67d

Browse files
committed
Revert "Enabled Linux UVM tests to run on 1ES github runner pool"
This reverts commit e5c83a1. The OIDC authentication is failing for PRs from external contributors because the id-token write permission is not granted to forked repos. Disabling the Linux UVM tests for now until it is fixed. Signed-off-by: Jie Chen <[email protected]>
1 parent e5c83a1 commit b9fc67d

File tree

2 files changed

+5
-136
lines changed

2 files changed

+5
-136
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,6 @@ env:
1212
GOTESTSUM_CMD: "gotestsum --format standard-verbose --debug --"
1313
GOTESTSUM_CMD_RAW: "gotestsum --format standard-verbose --debug --raw-command -- go tool test2json -t"
1414

15-
LCOW_ARTIFACT_PROJECT: "ContainerPlatform"
16-
LCOW_ARTIFACT_FEED: "ContainerPlat-Dev"
17-
LCOW_ARTIFACT_NAME: "azurelinux-uvm"
18-
LCOW_ARTIFACT_VERSION: "*.*.*"
19-
LINUX_BOOT_FILES_PATH: ${{ github.workspace }}/LinuxBootFiles
20-
2115
jobs:
2216
lint:
2317
runs-on: "windows-2022"
@@ -238,100 +232,6 @@ jobs:
238232
exit $LASTEXITCODE
239233
}
240234
241-
# This job downloads the Linux boot files from the Azure Artifact feed and
242-
# create the rootfs containing the local Linux-GCS. It needs to be run on
243-
# the 1ES github runner pool in order to access the Azure Artifact feed.
244-
create-linux-boot-files:
245-
runs-on:
246-
- self-hosted
247-
- 1ES.Pool=containerplat-github-runner-pool-east-us-2
248-
- 1ES.ImageOverride=github-mms-ubuntu-22
249-
permissions:
250-
id-token: write # This is required for OIDC login (azure/login) to succeed
251-
contents: read # This is required for actions/checkout to succeed
252-
steps:
253-
- name: Checkout hcsshim
254-
uses: actions/checkout@v4
255-
with:
256-
show-progress: false
257-
258-
- name: Azure OIDC Login
259-
uses: azure/login@v2
260-
with:
261-
client-id: "930a0428-2b45-4cf9-9afe-b81bde516504"
262-
tenant-id: "72f988bf-86f1-41af-91ab-2d7cd011db47"
263-
allow-no-subscriptions: true
264-
265-
- name: Download artifact from feed
266-
uses: azure/cli@v2
267-
with:
268-
azcliversion: latest
269-
inlineScript: |
270-
az extension add --name azure-devops
271-
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
272-
273-
az artifacts universal download \
274-
--organization "https://msazure.visualstudio.com/" \
275-
--project ${{ env.LCOW_ARTIFACT_PROJECT }} \
276-
--scope project \
277-
--feed ${{ env.LCOW_ARTIFACT_FEED }} \
278-
--name ${{ env.LCOW_ARTIFACT_NAME }} \
279-
--version ${{ env.LCOW_ARTIFACT_VERSION }} \
280-
--path ./downloaded_artifacts
281-
282-
- name: Show downloaded lcow artifacts
283-
run: find ./downloaded_artifacts -maxdepth 3 -ls
284-
285-
- name: Create directory for storing linux boot files
286-
run: |
287-
mkdir -p ${{ env.LINUX_BOOT_FILES_PATH }}/
288-
mkdir -p ./temp_rootfs/
289-
290-
- name: Copy Linux kernel and rootfs tar files
291-
run: |
292-
mv ./downloaded_artifacts/LinuxBootFiles/kernel ${{ env.LINUX_BOOT_FILES_PATH }}/
293-
mv ./downloaded_artifacts/LinuxBootFiles/vmlinux ${{ env.LINUX_BOOT_FILES_PATH }}/
294-
mv ./downloaded_artifacts/rootfs-*.tar.gz ./temp_rootfs/
295-
296-
- name: Install dependencies
297-
run: |
298-
sudo apt-get update
299-
sudo apt-get install -y make gcc binutils linux-headers-generic \
300-
libarchive-tools btrfs-progs libseccomp-dev pkg-config cpio libkmod-dev
301-
302-
- name: Create rootfs containing the local Linux-GCS
303-
run: |
304-
chmod a+x ${{ github.workspace }}/hack/catcpio.sh
305-
306-
# Find the full file name for rootfs tar
307-
ROOTFS_TAR=$(ls temp_rootfs/rootfs-*.tar.gz | head -n 1)
308-
echo "The full file name is $ROOTFS_TAR"
309-
310-
make clean
311-
sudo make KMOD=1 BASE=${{ github.workspace }}/$ROOTFS_TAR rootfs
312-
313-
- name: Move newly created rootfs.vhd and initrd.img
314-
run: |
315-
mv out/rootfs.vhd ${{ env.LINUX_BOOT_FILES_PATH }}/
316-
mv out/initrd.img ${{ env.LINUX_BOOT_FILES_PATH }}/
317-
318-
# This is a workaround to overcome the limitation of actions/upload-artifact@v4 used in later jobs.
319-
# See https://github.com/actions/upload-artifact/tree/v4/?tab=readme-ov-file#permission-loss.
320-
- name: Tar the files to preserve file permissions prior to upload
321-
run: |
322-
cd ${{ env.LINUX_BOOT_FILES_PATH }}
323-
tar -cvf ../linux_boot_files.tar .
324-
325-
# Upload the Linux boot files so that they can be used in later jobs.
326-
- name: Upload Linux boot files to artifact
327-
uses: actions/upload-artifact@v4
328-
with:
329-
name: linux_artifact
330-
path: linux_boot_files.tar
331-
if-no-files-found: error
332-
overwrite: true
333-
retention-days: 1
334-
335235
test-linux:
336236
needs: [lint, protos, verify-vendor, go-gen]
337237
runs-on: ubuntu-latest
@@ -367,7 +267,7 @@ jobs:
367267

368268
test-windows:
369269
name: test-windows (${{ matrix.name }})
370-
needs: [lint, protos, verify-vendor, go-gen, create-linux-boot-files]
270+
needs: [lint, protos, verify-vendor, go-gen]
371271
runs-on: ${{ matrix.runner }}
372272
strategy:
373273
fail-fast: false
@@ -376,15 +276,9 @@ jobs:
376276
[windows-2022, windows-2019]
377277
include:
378278
- name: "windows-2019"
379-
runner:
380-
- self-hosted
381-
- 1ES.Pool=containerplat-github-runner-pool-east-us-2
382-
- 1ES.ImageOverride=github-mms-ws2019-containers-enabled
279+
runner: [self-hosted, 1ES.Pool=containerplat-github-runner-pool-east-us-2, 1ES.ImageOverride=github-mms-ws2019-containers-enabled]
383280
- name: "windows-2022"
384-
runner:
385-
- self-hosted
386-
- 1ES.Pool=containerplat-github-runner-pool-east-us-2
387-
- 1ES.ImageOverride=github-mms-ws2022-containers-enabled
281+
runner: [self-hosted, 1ES.Pool=containerplat-github-runner-pool-east-us-2, 1ES.ImageOverride=github-mms-ws2022-containers-enabled]
388282
steps:
389283
- name: Checkout
390284
uses: actions/checkout@v4
@@ -450,26 +344,6 @@ jobs:
450344
${{ env.GOTESTSUM_CMD_RAW }} ./containerd-shim-runhcs-v1.test.exe '-test.v'
451345
working-directory: test
452346

453-
- name: Create directory for Linux boot files
454-
shell: pwsh
455-
run: mkdir -p ${{ env.LINUX_BOOT_FILES_PATH }}/
456-
457-
# Download Linux kernel files and newly created rootfs containing the Linux-GCS under testing.
458-
- name: Download Linux boot files from artifact
459-
uses: actions/download-artifact@v4
460-
with:
461-
name: linux_artifact
462-
463-
- name: Extract Linux boot files
464-
shell: pwsh
465-
run: |
466-
tar -xvf linux_boot_files.tar -C ${{ env.LINUX_BOOT_FILES_PATH }}/
467-
468-
- name: Display downloaded Linux boot files
469-
shell: pwsh
470-
run: |
471-
Get-ChildItem -Recurse -Force -Path ${{ env.LINUX_BOOT_FILES_PATH }}/
472-
473347
- name: Build and run functional testing binary
474348
run: |
475349
${{ env.GO_BUILD_TEST_CMD }} ./functional
@@ -486,12 +360,8 @@ jobs:
486360
exit $LASTEXITCODE
487361
}
488362
489-
# Don't run LCOW integrity tests.
490-
# Windows/Linux uVM tests will be run on 1ES Github Runner Pool.
491-
$cmd = '${{ env.GOTESTSUM_CMD_RAW }} ./functional.test.exe ' +
492-
'-exclude=LCOWIntegrity ' +
493-
'-linux-bootfiles=${{ env.LINUX_BOOT_FILES_PATH }} ' +
494-
'-test.timeout=1h -test.v -log-level=info'
363+
# Don't run Linux uVM (ie, nested virt) or LCOW integrity tests. Windows uVM tests will be run on 1ES runner pool.
364+
$cmd = '${{ env.GOTESTSUM_CMD_RAW }} ./functional.test.exe -exclude=LCOW,LCOWIntegrity -test.timeout=1h -test.v -log-level=info'
495365
$cmd = $cmd -replace 'gotestsum', $gotestsum
496366
Write-Host "gotestsum command: $cmd"
497367

test/functional/uvm_plannine_test.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ func TestPlan9(t *testing.T) {
5252
}
5353

5454
func TestPlan9_Writable(t *testing.T) {
55-
t.Skip("not yet working on the azurelinux rootfs")
5655
require.Build(t, osversion.RS5)
5756
requireFeatures(t, featureLCOW, featureUVM, featurePlan9)
5857
ctx := util.Context(context.Background(), t)

0 commit comments

Comments
 (0)