{Containerapp} Refresh validated test recordings - #10260
Conversation
|
Hi Shichao Qiu (@ShichaoQiu), |
There was a problem hiding this comment.
Copilot wasn't able to review any files in this pull request.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Thank you for your contribution Shichao Qiu (@ShichaoQiu)! We will review the pull request and get back to you soon. |
|
Containerapp |
618b107 to
48829f3
Compare
48829f3 to
52f6ab0
Compare
Greedygre (Greedygre)
left a comment
There was a problem hiding this comment.
you might need to check if the recording files include log shared key or not, it might be flagged after PR merge
|
Thanks Greedygre (@Greedygre), I checked this specifically. I structurally scanned all 47 changed recording files. Log Analytics shared-key fields occur only in I additionally ran |
🤖 PR Validation — ️✔️ All clear
🤖 PR Validation — ✔️ All clear
Summary
Refresh all 47 targeted Container Apps test recordings against the current service behavior.
This PR contains only test assets:
Python test changes
test_containerapp_commands.pytrafficentry to the Labels-mode YAML update.test_containerapp_mount_secret_volume.pyNoneto[].secretslist. The meaning is unchanged; only the response shape changed.test_containerappjob_with_identity.py--assignee-object-idand--assignee-principal-type ServicePrincipal.test_containerappjob_with_yaml.pyWhy the region fallbacks changed
TEST_LOCATIONfalls back tonorthcentralusstagewhenCLITestLocationis not set, but managed identity is unavailable in that stage region. These tests therefore already had a public-region fallback.East US could not be used for this recording refresh because managed-environment creation returned
ManagedEnvironmentCapacityHeavyUsageError/AKSCapacityHeavyUsage. The same cases completed in Brazil South.The selected location is observable during playback:
prepare_containerapp_env_for_app_e2e_testsembeds it in resource group and environment names such asclient.env_rg_brazilsouth/env-brazilsouth, and VCR matches those request paths.containerapp upalso validates the supplied environment location. Therefore, the nine affected tests must use the same Brazil South fallback as their recordings. A replay experiment changing all ten candidate fallbacks back to East US produced nine failures; the one replay-safe case,test_containerapp_identity_registry, remains on East US.Why Labels traffic is explicit
The YAML test updates an existing app in
activeRevisionsMode: labelswithtargetLabel: label1. The current service requires the ingress traffic weights to total 100. The test now explicitly sends 100% of traffic to the latest revision withlabel1, instead of depending on an implicit service default:Why role assignment uses object IDs
role assignment create --assigneemay query Microsoft Graph to resolve the assignee. Immediately after a managed identity is created, that lookup can fail until the identity has replicated. The tests already receive each identity'sprincipalId, so passing it through--assignee-object-idwith--assignee-principal-type ServicePrincipalavoids the lookup and makes both live execution and recording deterministic.Recording sanitization
/meand all 35directoryObjects/getByIdsresponses to the synthetic fields required by the tests.Content-Lengthheader against the UTF-8 byte length.azdev scanfound no secrets in the final 51 files.Validation
azdev test --live --series.test_containerapp_create_with_yamlafter the final multiline YAML cleanup: passed.azdev style containerapp, editor diagnostics, andgit diff --checkpass.52f6ab05d.343233is running; credential scan, policy, init-file, external-URL, GitHub style, and GitHub linter checks have passed.