test: fix time dependency and add artifact streaming e2e for azure linux v3#8204
Merged
ganeshkumarashok merged 5 commits intomainfrom Apr 6, 2026
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds missing E2E coverage for artifact streaming (acr-mirror) on Azure Linux V3, validating both the CSE bootstrap path and the aks-node-controller (“scriptless”) path.
Changes:
- Add
Test_AzureLinuxV3_ArtifactStreamingscenario enablingEnableArtifactStreamingvia the NBC (CSE) path. - Add
Test_AzureLinuxV3_ArtifactStreaming_Scriptlessscenario enablingEnableArtifactStreamingvia the AKS node config (scriptless) path. - Validate
/etc/overlaybdis non-empty and required systemd units are running (overlaybd-snapshotter, overlaybd-tcmu, acr-mirror, containerd).
…inux compatibility timeout wraps retrycmd_if_failure and can only exec external commands. Ubuntu has /usr/bin/time (GNU time) but Azure Linux does not ship it, causing "timeout: failed to run command 'time': No such file or directory". AB#37335260
tallaxes
approved these changes
Mar 30, 2026
djsly
reviewed
Mar 31, 2026
djsly
approved these changes
Mar 31, 2026
…shkumar/azurelinuxv3-artifact-streaming-e2e
…-e2e Resolve conflict in e2e/scenario_test.go by keeping both AzureLinuxV3 artifact streaming tests and new Ubuntu 2204 ARM64 Scriptless test.
Remove the time wrapper from the acr-config invocation to match the systemctl line above, which already had time removed.
mxj220
approved these changes
Apr 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
Adds E2E test coverage for artifact streaming (acr-mirror) on Azure Linux V3, and fixes a bug that would cause artifact streaming enablement to fail on Azure Linux.
Changes:
E2E tests (
e2e/scenario_test.go): AddsTest_AzureLinuxV3_ArtifactStreaming(CSE path) andTest_AzureLinuxV3_ArtifactStreaming_Scriptless(aks-node-controller path). Artifact streaming has been supported on Azure Linux 3.0 since September 2025 (PR Artifact streaming: download mirror-proxy in VHD for Ubuntu 24.04 and Azure Linux 3.0 #6993) but had no E2E tests — only Ubuntu 2204 was covered.Fix
timeinretrycmd_if_failure(parts/linux/cloud-init/artifacts/cse_config.sh): Removestimeprefix from thesystemctlcall insideretrycmd_if_failure. Theretrycmd_if_failurefunction wraps commands intimeout, which can only exec external binaries. Ubuntu has/usr/bin/time(GNU time package), but Azure Linux does not ship it — causingtimeout: failed to run command 'time': No such file or directory. Thetimeon line 426 (time /opt/acr/bin/acr-config) is unaffected since it runs as a bash builtin directly (not insidetimeout).Which issue(s) this PR fixes:
AB#37335260